如何获得静态谷歌地图的边界?

Posted

技术标签:

【中文标题】如何获得静态谷歌地图的边界?【英文标题】:how do I get the bounds of a static google map? 【发布时间】:2011-01-19 01:28:25 【问题描述】:

我正在尝试在通过 Google 静态地图 API 检索的图像上绘制地理坐标(纬度/经度)。我想通过 Ruby 直接在图像上离线执行此操作,因为我想绘制大约 20,000 个坐标。

但是,对于这个任务,我需要指定角(左上角和右下角)坐标。 这是我的地图的链接: http://maps.google.com/staticmap?center=51.0,10.0&zoom=6&size=640x640&format=png&sensor=false

如何获取地图左上角和右下角的坐标?

提前致谢:)

PS:我的 Lat/Lon -> X/Y 代码现在是这样的:

def get_img_coords(lat, lon, w, h, lat_ul, lon_ul, lat_lr, lon_lr)
   :x => (lon + lon_ul) * (w / (lon_lr-lon_ul)),
    :y => (lat + lat_ul) * (h / (lat_lr-lat_ul)) 
end

...当然假设是墨卡托投影。

【问题讨论】:

地图链接问题:“此网站需要不同的 Google Maps API 密钥。” 一直在看这个,用公共代码尝试了一些不起作用的东西。我认为秘密在于taking the tile resolution at a given zoom level,从已知中心移动一个已知像素距离到边缘,然后计算反向 EPSG:4326 投影以找到角坐标。 【参考方案1】:

我之前遇到过这个问题。上次我检查时(那是一年多以前),Maps API 通过 Geohashing 对其大部分信息进行了编码。我建议您先查看the Wikipedia page for it,然后查看this other *** question,它似乎有您想要的Java 实现。

【讨论】:

【参考方案2】:

answer to another *** question 中描述的方法对我来说非常有效。此外,Marcelo 提供的代码很容易从 javascript 翻译成另一种语言,例如蟒蛇。

【讨论】:

以上是关于如何获得静态谷歌地图的边界?的主要内容,如果未能解决你的问题,请参考以下文章

谷歌是如何得到地图上邮政编码的大纲的?

如何在 Flutter 中限制谷歌地图的边界?

谷歌地图:如何防止 InfoWindow 移动地图

在边界框中查询 lon/lat 的数据库/文件?谷歌地图

如何在 Global Mapper中打开谷歌卫星地图

如何使用PhoneGap缓存谷歌地图返回的静态地图?