google-maps - 使用 Google Maps API 查找最近点

标签 google-maps google-maps-api-3 routing maps google-maps-markers

我在 map 上有许多目标点和一个源位置。我需要找到最接近源位置的目标点。这里的诀窍是“最近”意味着最短路线。我不能使用简单的乌鸦飞行距离。

这本质上是一个一对多的路由问题。我可以通过为每对点运行路由 API 调用来获得答案,但这会太慢并且会破坏 API 的使用。

  1. 有没有一种方法可以使用 Google Maps API 通过单个请求来完成(如有必要,我可以付费)?
  2. 如果是,那么点数、请求频率等有什么限制?
  3. 如果没有,是否有其他服务可以做到这一点?
  4. 假设我有很多积分(数千)。有没有办法以某种方式上传它们并仅在我的请求中使用源位置?

最佳答案

你应该看看Distance Matrix Service

您可以指定起点和终点(甚至是中间航路点),然后按路线获取以公里/英里为单位的距离。


回答您的问题:

有没有一种方法可以使用 Google Maps API 通过单个请求完成此操作(如有必要,我可以付费)
是的,您可以,只需使用下面提供的服务

如果是,那么点数、请求频率等有什么限制?
引用使用限制和要求:

The following usage limits are in place for the Distance Matrix service:

  • Maximum of 25 origins or 25 destinations per request; and
  • At most 100 elements (origins times destinations) per request.
Requests are also rate limited. If too many elements are requested within a certain time period, an OVER_QUERY_LIMIT response code will be returned.


假设我有很多积分(数千)。有没有办法以某种方式上传它们并仅在我的请求中使用源位置?
我不确定你真正想要什么,但你可以将一个点定义为“源位置”,然后加载它(从 SQL、KML 等...),然后加载目标并调用服务来查找哪个是最近。

关于google-maps - 使用 Google Maps API 查找最近点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23644522/

相关文章:

javascript - 悬停标记图标在谷歌地图上发生变化

ajax - 谷歌地图api 3 ajax调用

ruby - 如何在不使用 Google Maps API 的情况下计算两个 GPS 坐标之间的距离?

performance - Google Maps API v3,大量标记、聚类和性能

javascript - 带有 OMS 的 Google map - 响应点击事件的标记属性

routing - 如何重定向到位于 HAProxy 后面的多个服务器,这些服务器具有不同的路径开头

java - 如何在 Android Studio 中请求位置权限?

javascript - 谷歌地图 API v3 : infowindow position

ruby-on-rails - 如何创建自定义路由助手以供在 routes.rb 中使用

如果用户已登录,则 Angular 2 重定向