在谷歌地图中获取地图分辨率

时间:2011-04-19 01:06:17

标签: google-maps map google-maps-api-3 openlayers

如何使用与

类似的谷歌地图api获取地图分辨率

从openLayers map.GetResolution

获得的值

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

如果我理解正确的开放层分辨率,我认为它应该像这样简单:

156543.0339 * Math.cos(1.57078734) / Math.pow(2, map.getZoom());

希望这有帮助

答案 1 :(得分:0)

Baz1nga的答案很接近,但有误。您要计算的值是在赤道处的每像素米。所以答案应该是

156543.0339 * Math.cos(0) / Math.pow(2, map.getZoom());

它的cos(0),因为赤道的纬度为0。 cos(1.57078734)始终为0。使用相同的逻辑,如果将cos()中的值替换为以弧度为单位的纬度,则将获得该纬度下每像素值的米。 请注意,他的假设是地球半径为6378137。

px