0

Google Maps Distance Matrixを使用していますが、必要なのは2つの異なる距離です。

現時点で私は次のものを持っています:-

var start = arrObjLatLngs[0];
var end = arrObjLatLngs[arrObjLatLngs.length - 1];    
var base = new google.maps.LatLng(52.781048888889, -1.2110222222222546);

var service = new google.maps.DistanceMatrixService();

service.getDistanceMatrix(
  {
    origins: [base],
    destinations: [start, end],
    travelMode: google.maps.TravelMode.DRIVING,
    unitSystem: google.maps.DirectionsUnitSystem.METRIC,
    avoidHighways: false,
    avoidTolls: false
  }, callback);


function callback(response, status) {

  if (status == google.maps.DistanceMatrixStatus.OK) {

    var origins = response.originAddresses;
    var destinations = response.destinationAddresses;

    for (var i = 0; i < origins.length; i++) {

      var results = response.rows[i].elements;

      for (var j = 0; j < results.length; j++) {

        var element = results[j];
        var distance = Math.round(parseFloat(element.distance.text));
          alert(distance);
        var duration = element.duration.text;
        var from = origins[i];
        var to = destinations[j];
      }
    }
  }
}

alert($distance);私が2つの応答を受け取ったとき、例えば1510

必要なのは、2つの別々の値です。つまり、alert($runinPickup);取得15した場合、アラートalert($runinDestination);を送信した場合、10を取得します。

それらが配列にあると思ったので試しalert(distance[0])ましたが、これは未定義として戻ってきます。

2つの別々のgetDistanceMatrixリクエストを実行する必要がありますか、それとも2つの値を分離する方法がありますか?

4

0 に答える 0