OpenLayers-墨卡托投影,带十进制lat/lon单位

OpenLayers-墨卡托投影,带十进制lat/lon单位,openlayers,Openlayers,我使用OpenLayers来显示与Google地图、Bing等相同投影的地图(即方形墨卡托地图)。据我所知,要启用此投影,我需要使用SphereCalmercator标志。然而,这似乎也改变了LonLat方法等使用的单位,因此我必须将十进制度数转换为米 有没有一种方法可以使用墨卡托投影,但仍然使用十进制度数来指定地图上的位置 谢谢。这取决于“在地图上指定位置”的含义:如果你想添加标记、矢量特征等,你必须重新投影它们的坐标,但你可以这样做 如果您只想以“只读方式”指定位置(例如,在特定坐标系中使用

我使用OpenLayers来显示与Google地图、Bing等相同投影的地图(即方形墨卡托地图)。据我所知,要启用此投影,我需要使用SphereCalmercator标志。然而,这似乎也改变了LonLat方法等使用的单位,因此我必须将十进制度数转换为米

有没有一种方法可以使用墨卡托投影,但仍然使用十进制度数来指定地图上的位置

谢谢。

这取决于“在地图上指定位置”的含义:如果你想添加标记、矢量特征等,你必须重新投影它们的坐标,但你可以这样做


如果您只想以“只读方式”指定位置(例如,在特定坐标系中使用MousePosition控件显示当前鼠标位置),只需指定添加标记和特征时的

即可。所以没有办法让OpenLayers知道我指定的是度数而不是米,然后自己执行投影?我已经编写了一些实用函数来简化这一过程(基于OpenLayer投影变换),但为了清晰起见,我不想这样做。我担心这是不可能的,因为这不仅仅是米或度:有数百个公制坐标系,所以OpenLayers不能仅仅依靠坐标单位进行精确的投影。乍一看,这似乎是不必要的工作,但这是在地图上以不同坐标系精确投影GIS数据的唯一方法。