首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有地图api允许你检索一个确切的区域?

有没有地图api允许你检索一个确切的区域?
EN

Stack Overflow用户
提问于 2009-06-29 23:23:16
回答 4查看 1.2K关注 0票数 1

我想要一种方法来获得一个静态地图(一个图像文件),基于两个坐标表示所需的矩形或区域。

有什么建议吗?

EN

回答 4

Stack Overflow用户

发布于 2009-06-29 23:53:35

是啊。Google有一个静态地图API,它就是这样做的。它基本上只是一个URL,带有作为参数传递的纬度、经度和缩放级别(以及许多其他变量)。您可以在Google Maps API documentation中阅读有关它的内容。

以下是您可以执行的操作的示例:

从URL:

代码语言:javascript
运行
复制
http://maps.google.com/staticmap?center=40,26&zoom=1&size=150x112&maptype=satellite&key=ABQIAAAAgb5KEVTm54vkPcAkU9xOvBR30EG5jFWfUzfYJTWEkWk2p04CHxTGDNV791-cU95kOnweeZ0SsURYSA&format=jpg

编辑:根据您的评论。我能得到的最接近正方形的形状是30,40纬度,60,70LNG是中心35,65,zoomlevel 6,我有created an example 400x400 image。只需更改以下URL中的键即可获得您的静态地图图像:

代码语言:javascript
运行
复制
http://maps.google.com/staticmap?center=35,65&zoom=6&size=400x400&key=<your key here>&format=jpg

感谢ChrisB指出span参数(我以前没有见过)。我用example的span版本更新了我的URL:

代码语言:javascript
运行
复制
http://maps.google.com/staticmap?center=35,65&span=5,5&size=400x400&key=<your key here>&sensor=false

正如您从示例中看到的,这将生成与原始URL相同的缩放级别,但提供了一种更简单的方法(而不是手动调整缩放和检查边缘)。

正如Chris指出的,缩放级别的粒度只能近似于地图的边缘。如果您需要更近的近似,我只能建议调整静态图像地图的大小,以尝试更接近您的边界纬度/经度。

票数 2
EN

Stack Overflow用户

发布于 2009-06-30 15:30:02

如果你需要地图精确地适应一个特定的区域,你不太可能做到这一点,因为大多数地图API都有预先指定的缩放级别,可能不会有一个缩放级别可以让你完美地适应你的区域。

但是,如果您只需要接近,Google Static Maps API提供了一种指定viewport的方法,从而消除了自己设置缩放级别的需要。你所需要的就是中心点和跨度。如果您想要从SW(30,70)到NE(40,60)的区域,中心将是(35,65),跨度将是(5,5)。

代码语言:javascript
运行
复制
http://maps.google.com/staticmap?center=35,65&span=5,5&size=400x400&key=MAPS_API_KEY&sensor=false

请注意,根据请求的图像大小,您将获得不同的结果。

票数 2
EN

Stack Overflow用户

发布于 2009-07-21 15:23:15

http://wiki.openstreetmap.org/wiki/MapOf

然而,这是关于OpenStreetMap的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1061057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档