在地图上,我必须标记数组。一个是静态的,让我们调用station
。其他的也是静态的,但它们是暂时的,我们称它们为fire
。当fire
被点击时,最短路径必须被构造到其中之一stations
。我使用 TravelMode.DRIVING。我知道我可以计算路线距离,但为了计算我必须先构建路线。是否有任何图书馆可以找到一个固定标记和许多其他标记之一之间的最佳路线?或者你能帮我讲逻辑吗?我可以自己写代码。
这是我实现了到两个标记之一的最佳路线,并且可以使用循环计算许多标记。但是有没有其他方法可以做到这一点?
directionsService1.route(request1, function (response1, status1) {
if (status1 == google.maps.DirectionsStatus.OK) {
var myRoute1 = response1.routes[0].legs[0];
distance1 = myRoute1.distance.value;
directionsService2.route(request2, function (response2, status2) {
if (status2 == google.maps.DirectionsStatus.OK) {
var myRoute2 = response2.routes[0].legs[0];
distance2 = myRoute2.distance.value;
if (distance1 > distance2) {
directionsDisplay2.setMap(map);
directionsDisplay2.setDirections(response2);
directionsDisplay1.setMap(null);
} else {
directionsDisplay1.setMap(map);
directionsDisplay1.setDirections(response1);
directionsDisplay2.setMap(null);
}
}
});
}
});