1
A
回答
4
我设法显示路线:
KML:将KML坐标为字符串 6.646280,49.753730,0.000000 6.646020,49.753230,0.000000 6.645650,49.752700,0.000000 ...
在这种情况下。
Vector routeLayer = new Vector("route");
List<Point> pointList = new ArrayList<Point>();
Projection defaultProj = new Projection(DEFAULT_PROJECTION);
// DEFAULT_PROJECTION = "EPSG:4326"
Projection mapProj = new Projection(mapWidget.getMap().getProjection());
for (String coord : KML.split(" "))
{
String[] xyz = coord.split(",");
if (xyz.length == 3)
{
Point point = new Point(Double.parseDouble(xyz[0]), Double.parseDouble(xyz[1]));
// lon,lat
point.transform(defaultProj, mapProj);
pointList.add(point);
}
}
LineString geometry = new LineString(pointList.toArray(new Point[pointList.size()]));
Style style = new Style();
style.setStrokeColor("#0033ff");
style.setStrokeWidth(5);
routeLayer.addFeature(new VectorFeature(geometry, style));
mapWidget.getMap().addLayer(routeLayer);
2
取决于您的路径格式,但如果您有KML,请使用GML层。
相关问题
- 1. Rails“显示”路线
- 2. 谷歌街景显示路线路线
- 3. Google Maps IOS显示路线
- 4. 在android中显示路线
- 5. iPhone MapKit显示路线
- 6. 显示路线的距离
- 7. Cartodb显示点击路线
- 8. Mapbox(android)不显示路线
- 9. POST路由不工作,尽管路线显示在“耙路线”
- 10. Rails - 使用显示路线而不是我定义的路线
- 11. 路线计算不显示从当前位置的路线
- 12. Rake路线未显示路线,但在硬编码时存在
- 13. 如何使用Google路线服务显示两条路线?
- 14. 当前路线显示null Laravel
- 15. 使用Google API显示替代路线
- 16. 显示Laravel的注册路线
- 17. 角度匹配路线不显示
- 18. 在平面图上显示路线
- 19. 显示路线中的多个点
- 20. 儿童路线不能显示在角
- 21. 路线我地图不显示在iPhone
- 22. 如何在地图上显示路线
- 23. 谷歌地图不显示路线
- 24. AngularJS路线与jQuery显示/隐藏
- 25. 同时显示多个AngularJS路线
- 26. 如何让Valgrind显示线路错误?
- 27. 没有显示的反应路线
- 28. 聚合物:路线部分不显示
- 29. 在Rails中共享显示路线
- 30. 覆盖资源的“显示”路线
谢谢,您可能有更多的信息给我吗?将maps.addLayer(新的GML(“路线”,网址)工作,当url返回kml?我使用osm与投影EPSG:900913。我的网址在投影EPSG:4326中返回kml并且它不起作用。改变kml或者你知道一个kml提供者返回投影EPSG:900913 – ZehnVon12 2012-03-08 14:54:36
GWT包装还没有覆盖所有的开放层,所以最好的方法是首先找出如何在开放层JavaSCript中创建一个图层。例如,如果你还不知道如何去做:http://openlayers.org/dev/examples/接下来使用GWT构建它,并注意到,openlayer属性和参数在它们自己的类中的GWT包装中,比如类GMLProperties。如果没有特定属性的命名方法,你可以使用属性名称作为第一个参数的通用方法'setProperty'。 – 2012-03-08 15:08:43
有人可以发布一个小例子,一些代码行吗? – ZehnVon12 2012-03-08 16:41:48