【发布时间】:2012-08-06 20:41:08
【问题描述】:
Google Maps API 有什么方法可以获取某个位置的街道坐标吗?
很简单:我只想获取最近的街道坐标。例如,为了得到这个,我需要构成街道的所有坐标。
有这样的吗?
【问题讨论】:
-
你有什么关于这个位置的信息?纬度和经度?
-
使用谷歌地图 api 查看geocoding
标签: google-maps google-maps-api-3
Google Maps API 有什么方法可以获取某个位置的街道坐标吗?
很简单:我只想获取最近的街道坐标。例如,为了得到这个,我需要构成街道的所有坐标。
有这样的吗?
【问题讨论】:
标签: google-maps google-maps-api-3
您可以使用directionService。
将给定地址(或位置)作为起点和目的地传递给directionsService.route(),并使用 travelMode DRIVING。响应应包含最近的街道。
【讨论】:
我发现了这个(ReverseGeocoding in v3):https://developers.google.com/maps/documentation/javascript/geocoding#ReverseGeocoding
由于这个帖子很旧,我想这可能很有用。
【讨论】:
这些答案都是旧的,自这些答案以来,Google 已经对地图 API 进行了重大重新排列。 在 2018 年,将位置(经纬度)转变为“道路上的点”的最佳方式是使用 snap-to-road 或最近道路服务: https://developers.google.com/maps/documentation/roads/snap
请注意,此 API 对每个 API 调用收取一分钱,并且每次调用最多可占用 100 个不同的点。如果延迟和复杂性不是问题,如果您需要在客户端上回答这个问题,您可以构建一个服务器来收集来自不同客户端的多达 100 个请求,向 Google 发出一个请求,然后将请求数据返回给合适的客户。 (对于这种用途,请确保使用最近的道路,而不是快速到道路。)
此外,目前,Google 地图提供每月 200 美元的对帐单信用额度,这可能会使该 API 的少量使用实际上最终不会花费太多(或任何东西)。
【讨论】: