Используя матрицу расстояний Google, как я могу найти расстояние между пунктом отправления и пунктом назначения в определенных точках - PullRequest
0 голосов
/ 31 марта 2019

Я хочу знать, используя Google Matrix API для расстояния, как я могу вычислить расстояние между пунктом отправления и пунктом назначения через определенные точки в JavaScript.

Итак, позвольте мне объяснить здесь, давайте предположим, что начальная точка - это Origin_1, а конечная точка - destination_1, а между ними есть несколько точек (для простоты, давайте предположим, что между ними есть только 3 точки, которые являются point_1, point_2 и point_3).

Итак, я хочу найти расстояние следующим образом:

distance_1 = Origin_1 to point_1
distance_2 = point_1 to point_2
distance_3 = point_2 to point_3
distance_4 = point_3 to destination_1

Total distance = distance_1 + distance_2 + distance_3 + distance_4

Ссылка API проверенной матрицы расстояний Ссылка , но ничего не удалось найти. Итак, какие изменения я должен сделать в следующем коде. Так что это будет работать согласно приведенному выше объяснению.

var service = new google.maps.DistanceMatrixService();
           service.getDistanceMatrix(
              {
                origins: [origin_1, point_1, point_2, point_3],
                destinations: [point_1, point_2, point_3, destination_1],
                travelMode: "DRIVING",
                unitSystem: google.maps.UnitSystem.METRIC,
                avoidHighways: false,
                avoidTolls: false
              }




    for (var i = 0; i < originList.length; i++) {
                    var results = response.rows[i].elements;
                    geocoder.geocode(
                      { address: originList[i] },
                      showGeocodedAddressOnMap(false)
                    );
                    for (var j = 0; j < results.length; j++) {
                      geocoder.geocode(
                        { address: destinationList[j] },
                        showGeocodedAddressOnMap(true)
                      );
                      outputDiv.innerHTML +=
                        originList[i] +
                        " to " +
                        destinationList[j] +
                        ": " +
                        results[j].distance.text +
                        " in " +
                        results[j].duration.text +
                        "<br>";
                    }
                  }
...