使用 Google Maps API 查找两个位置之间的路线和距离并将其呈现在表格中

Posted

技术标签:

【中文标题】使用 Google Maps API 查找两个位置之间的路线和距离并将其呈现在表格中【英文标题】:Using Google Maps API to find routes & distance between two locations and present it in a table 【发布时间】:2011-12-19 08:02:42 【问题描述】:

我想使用谷歌地图找出两个城市之间的可用路线。有关这些路线的一些信息,例如距离和旅行时间等。

希望这些数据显示在地图中。我需要将其以文本格式呈现给最终用户。

用户会给我两个城市,我会在表格中向他展示各种路线和信息。

这可以使用 phpmysql 和 Google Maps 完成吗?任何指针都会非常有帮助。

【问题讨论】:

您应该阅读服务条款,因为如果您使用路线 API,那么结果必须与地图一起显示 【参考方案1】:

如果您想要两点之间的多条路线,请使用路线服务 (http://code.google.com/apis/maps/documentation/directions) 并在请求中指定 alternatives=true。这将返回备用路线(如果可用)。然后,解析响应以获取所需信息:

每条路线都会有一个legs 数组 在legs 数组中,有一个distance 和一个duration 字段,每个字段都包含一个原始值和一个文本值。

如果您不需要多个路线选择,Google 地图距离矩阵服务 (http://code.google.com/apis/maps/documentation/distancematrix/) 会提供多个起点和目的地,没有所有的路线信息。

示例表在博文中:http://googlegeodevelopers.blogspot.com/2011/05/what-is-distance-matrix.html

【讨论】:

【参考方案2】:

Google Maps Direction Service 可以为您提供文字信息。请参阅此处的文档:http://code.google.com/apis/maps/documentation/javascript/services.html#Directions 特别是开始 "A DirectionsRenderer 不仅可以处理折线和任何相关标记的显示,还可以将方向的文本显示处理为一系列步骤。为此,只需在 DirectionsRenderer 上调用 setPanel(),传递它以在其中显示此信息。”

【讨论】:

我不是在单独谈论文字说明。我只需要文本格式的地图信息,而不是图形地图。 也许您应该使用 Directions API 而不是 Google 地图:code.google.com/apis/maps/documentation/directions

以上是关于使用 Google Maps API 查找两个位置之间的路线和距离并将其呈现在表格中的主要内容,如果未能解决你的问题,请参考以下文章

Google Maps Api v3 - 查找最近的标记

使用 JSON 在 Google Maps API 中设置位置并保存最后一个已知位置

如何在 iOS 版 Google Places API 中查找当前用户位置

使用pincode计算距离(Google map Distance Matrix API)

Google Maps Api 仅查找省份

markdown 使用Google Maps API按地址查找经度和纬度