如果指定了邮政地址,如何为 Google Maps JavaScript API 版本 3 设置正确的标题?
Posted
技术标签:
【中文标题】如果指定了邮政地址,如何为 Google Maps JavaScript API 版本 3 设置正确的标题?【英文标题】:How to set correct heading for Google Maps JavaScript API Version 3 in case of postal address is specified? 【发布时间】:2012-03-31 01:53:47 【问题描述】:我正在努力解决以下问题,在 Goolge Maps API 文档或网络中找不到任何解决方案,因此我将尝试在此处发布我的问题:
我使用的是 Google 的静态街景图像 API,您可以在其中将 long/lat 或带有邮政地址的字符串作为位置传递。在我的情况下,我总是使用字符串方法,在大多数情况下包含带有门牌号的地址。我对返回的图像的结果感到惊讶,在大多数情况下,它完全指向搜索地址的方向。
现在我想尝试一下街景的 javascript API。通过长/纬度值指定地址,它与位置的唯一可用接口完美配合。通过可选的 pov 参数也可以指定标题。但是,如果您想使用带有门牌号的邮政地址来初始化 StreetView,那么您会迷失在该 API 中。唯一的方法是通过地理编码 API 将邮政地址地理编码为 long/lat 值,但会丢失标题信息。作为最终结果,在这种情况下,初始街景图像的方向完全不同。
我再次检查了静态街景图像 API,发现标题成员有以下评论:
heading (optional): ... 如果没有指定方向,将计算一个值,将相机从最近的照片拍摄点指向指定位置。
有什么我可以在这里做的吗?如何在制作照片的位置和我正在寻找的位置之间找到完美的标题?似乎只有 Google 可以通过静态街景图像 API 的一些内部魔法来做到这一点。
【问题讨论】:
【参考方案1】:1) 确实将邮政地址地理编码为长/纬度值,这样您就可以知道房子的“确切”位置。
2) 使用 streetViewService.getPanoramaByLocation 查看街景是否可用,响应将包括拍摄街景图像的确切位置。
现在您可以计算两点之间的航向(1 是“房子”,2 是“相机”)。您可以为此使用 google.maps.geometry.spherical.computeHeading 函数 - 请参阅 https://developers.google.com/maps/documentation/javascript/geometry#Navigation
【讨论】:
以上是关于如果指定了邮政地址,如何为 Google Maps JavaScript API 版本 3 设置正确的标题?的主要内容,如果未能解决你的问题,请参考以下文章
如何为 google_maps_flutter 设置缩放级别
Google Map API 通过邮政编码获取地址信息,但它通过街道号响应结果