我正在使用OpenLayers地图,我想在其中使用不同的地图服务器,它使用不同的坐标系。 OpenLayers能否将其集成到同一张地图中并自动转换坐标系?如何在OpenLayers中混合具有不同坐标系的图层?
3
A
回答
3
根据图层的不同,您将始终拥有某种您无法真正转换的底层(地图)。如果您想要在该地图上添加数据(标记,geo json东西等),则必须将其转换为基础层使用的投影。
// defining our coordinate systems
var google = new OpenLayers.Projection("EPSG:900913"),
latlon = new OpenLayers.Projection("EPSG:4326");
// transforming the location to the right coordinate system
var location = new OpenLayers.LonLat(10, 10).transform(latlon, google);
// assuming you made an icon and marker layer
var marker = new OpenLayers.Marker(location, icon);
markerLayer.addMarker(marker);
检查出的OpenLayers文档有关在系统之间转换位置到另一个位置:
对于这种标记可以通过easyly来完成。
2
如果地图服务器提供了不同的栅格,那么你可能会倒霉。然而,如果他们正在提供向量(例如KML文件)或JavaScript写入的地图对象(例如Dre的答案),那么您可以在不同的投影之间进行变换,以便所有数据都出现在相同的投影和坐标系统上作为底图。 OpenLayers有这个钩子(请参阅Dre的答案),但您可能需要包含提供该功能的Proj4JS库。
或者您可以自己使用Proj4JS在绘图之前转换坐标。
2
这是一个古老的问题,但我从搜索中发现了这种情况,并认为如果这对他人有帮助,我可能会发出警告。
这可能与所提问题面临的情况有所不同,但最近我遇到了类似的情况。就我而言,我需要在一张地图上显示来自两个不同WMS提供者的输出。一个在EPSG:900913提供服务,另一个在EPSG:3857提供服务。知道这些,我想我是否可以用服务工作的方式请求他们,以便地图能够处理输出。我的地图位于900913(因此其他服务默认使用此投影请求)。
我如何能够获得被请求正确是其他服务如下(填写您的信息):
var myLayer = new OpenLayers.Layer.WMS(
"Name",
"URL", {
"layer": "layer"
});
myLayer.projection = "EPSG:3857";
通常附加?request=getCapabilities
到服务网址将允许你看看有什么预测是可用来自所需层的CRS标签中的服务。
相关问题
- 1. EPSG画圆:4326坐标中心在图像层OpenLayers 2
- 2. OpenGL坐标系统混淆
- 3. OpenLayers和GeoJSON,在相同坐标上不乘法标记
- 4. 如何刷新OpenLayers中的TMS图层?
- 5. 如何在OpenLayers中添加不同尺寸的第二层?
- 6. 混合放大OpenLayers?
- 7. 如何在WPF中使用不同的坐标系? (仅缩放)
- 8. 如何在openlayers中添加地图图层叠加层?
- 9. openlayers - 如何使用WebGl在openlayers中呈现矢量图层
- 10. 从openlayers中获取坐标
- 11. 在OpenLayers中查找点的坐标
- 12. 如何获得没有混合图层的渐变图像?
- 13. 如何为平面1:1像素坐标系配置Openlayers?
- 14. OpenLayers如何计算边界框坐标?
- 15. 如何使用JSON坐标将标记添加到OPENLAYERS地图?
- 16. 如何在Swift中绘制具有不同混合模式的UILabel(__rect:CGRect)
- 17. 如何使用JMapProjLib,Proj4j或Proj4js在不同坐标系之间转换坐标?
- 18. [Javascript]从openlayers地图获取坐标
- 19. 如何在openlayers中设置多边形的坐标?
- 20. 在OpenLayers中显示Google地图图层合法吗?
- 21. 如何将矢量图层坐标转换为Openlayers中的地图经度和纬度
- 22. 圆圈图层不显示在OpenLayers 3
- 23. 处理不同的坐标系
- 24. 如何在地图上显示两个具有相同坐标的注释?
- 25. three.js和openlayers坐标不排队
- 26. 在具有不同图层的ScatterView中捕捉SurfaceDragDropEventArgs(zIndex)
- 27. openlayers:云层有比bing或osm略有不同的投影
- 28. OpenLayers,如何限制WMS图层范围
- 29. 如何在NSOpenGLView中反转坐标系
- 30. 坐标混乱