gpt4 book ai didi

javascript - 谷歌地图 API v3 : find multiple paths using DistanceMatrixService

转载 作者:行者123 更新时间:2023-11-27 23:53:32 26 4
gpt4 key购买 nike

我正在使用 Google map api 在 DistanceMatrixService() 的帮助下查找两点之间的距离。在 getDistanceMatrix() 的成功回调中,我可以获得两点之间的距离。两点之间可能有多条路径,但我总是得到最短路径的长度。我怎样才能获得所有路径距离?请引用以下代码:

var service = new google.maps.DistanceMatrixService();
service.getDistanceMatrix({
origins: [--some origins--],
destinations: [--some destinations--],
travelMode: google.maps.TravelMode.DRIVING,
unitSystem: google.maps.UnitSystem.METRIC,
avoidHighways: false,
avoidTolls: false,
}, function (response, status) {
for (var i = 0, length = response.rows[0].elements.length; i < length; i++) {
if (response.rows[0].elements[i].status == 'NOT_FOUND') {
alert('Source or destination address could not be found.');
return;
}

var distance = response.rows[0].elements[i].distance.text;
var duration = response.rows[0].elements[i].duration.text;
}
});

在上面的代码中,数组 response.rows[0].elements 的长度始终为 1。如果源和目标之间存在多条路径,则它应该有多个对象。如何实现这一目标?提前致谢。

最佳答案

DistanceMatrix不允许有多条路线,它总是计算最短/最佳距离。

如果您需要备用路线并且只有一个出发地和目的地,请使用 DirectionsService ,将 provideRouteAlternatives 设置为 true

来自the documentation :

provideRouteAlternatives (optional) when set to true specifies that the Directions service may provide more than one route alternative in the response. Note that providing route alternatives may increase the response time from the server.

关于javascript - 谷歌地图 API v3 : find multiple paths using DistanceMatrixService,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32479670/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com