Google maps Google Maps API能否计算多个地点的路线或行程?

Google maps Google Maps API能否计算多个地点的路线或行程?,google-maps,google-maps-api-3,Google Maps,Google Maps Api 3,我正在使用GoogleMapsAPI网络服务或查找地点之间的旅行距离和时间 API似乎只支持计算一个起点和一个终点之间的路由。(在距离矩阵API的情况下,直接计算起点和终点之间的多个组合。) 我的情况是,我想知道沿着一系列位置(如有序阵列)的多段旅程的路线(实际上,只是旅行时间和距离) 因此,考虑到四个位置,A,B,C,D,我知道如何计算任意对之间的路由,A-B,A-C,A-D,B-C,等等。我想计算A-B-C-D或A-C-D-B或A-D-B-C等的路径。我提供路线和腿的顺序,所以我不是要求解决

我正在使用GoogleMapsAPI网络服务或查找地点之间的旅行距离和时间

API似乎只支持计算一个起点和一个终点之间的路由。(在距离矩阵API的情况下,直接计算起点和终点之间的多个组合。)

我的情况是,我想知道沿着一系列位置(如有序阵列)的多段旅程的路线(实际上,只是旅行时间和距离)

因此,考虑到四个位置,
A
B
C
D
,我知道如何计算任意对之间的路由,
A-B
A-C
A-D
B-C
,等等。我想计算
A-B-C-D
A-C-D-B
A-D-B-C
等的路径。我提供路线和腿的顺序,所以我不是要求解决旅行推销员的问题

谷歌地图方向API或距离矩阵API是否可以实现这一点

显然,我可以自己链接位置,因此在单独的调用中请求各个分支的路由,然后按所需顺序将它们添加到一起:
A-C
+
C-D
+
D-B
变成
A-C-D-B
。我希望打一个电话就可以了


(我寻找过类似的问题,但没有找到确切的问题。)

多亏了@geocodezip,答案是在起点和终点之间添加“航路点”,如中所述

例如,请求
https://maps.googleapis.com/maps/api/directions/json?origin=Boston,MA&destination=Concord,MA&waypoints=Charlestown,MA | Lexington,MA
计算波士顿与Concord之间经由Charlestown和Lexington的路线

据报道,旅行推销员的问题也部分得到了解决

默认情况下,方向服务按给定顺序计算通过所提供航路点的路线。或者,您可以将
optimize:true
作为waypoints参数中的第一个参数,以允许方向服务通过以更有效的顺序重新排列航路点来优化所提供的路线


对于对这个问题投反对票的人,请解释一下你为什么投反对票。问错了吗?复制(如果是,与哪一个无关?)?只是向下投票是没有帮助的。你需要在Directions API中添加中间点(不能使用DistanceMatrix API)@geocodezip,如果你把它写下来作为答案,我很乐意接受。这确实是一个解决方案。如果你事先不知道B和C怎么办?也就是说,你想要A和D之间的旅行距离和时间,但你不在乎是坐两列火车和一辆公共汽车,还是坐公共汽车步行?谷歌在线地图可以做到这一点——人们可以通过方向或距离API来实现吗?(我认为不是)@yotiao,检查谷歌地图方向API上的可选参数。您可以请求
备选方案
和多个
运输模式
s。