我在地圖上有一個起點座標。我有多個(100)端點來計算從起點到終點的總距離。 起點是我的辦公室,終點是我客戶的位置。我想計算總距離。谷歌地圖從一個起點到多個終點的方向
我用循環於JavaScript
for (var i = 0; i < destinations.length; i++) {
var request = {
origin: "60.758447, 69.385923",
destination: destinations[i],
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function (response, status) {
if (status == google.maps.DirectionsStatus.OK) {
var directionsDisplay = new google.maps.DirectionsRenderer();
directionsDisplay.setMap(map);
directionsDisplay.setDirections(response);
totalKM = totalKM + (response.routes[0].legs[0].distance.value/1000);
distanceInput.value = totalKM;
console.log(totalKM)
}
});
};
但這個循環只適用10個目的地。我可以在控制檯日誌中看到這一點。谷歌是否限制查詢限制?
你是對的,Google確實限制了您可以快速連續進行的'directionService'調用的數量。 [請點擊此處](https://developers.google.com/maps/documentation/javascript/directions#usageLimits)瞭解您可以執行多少操作。如果你在if(status == google.maps.DirectionsStatus.OK)之外檢查,我確定這個狀態是'OVER_QUERY_LIMIT'或類似的東西。 – George
如果您只需要駕駛距離,請嘗試距離矩陣。 – geocodezip
是的,我只需要距離總和。 – barteloma