2013-09-04 2 views
0

Я создаю приложение магазина Windows в javascript.Google Maps v3 Матрица расстояний для поиска ближайшего местоположения

У меня есть список местоположений в массиве объектов JSON (адресатов) и еще один массив объектов JSON (происхождение).

Я хотел бы нажать маркер начала и использовать матрицу расстояний, чтобы найти ближайший пункт назначения или список отсортированных пунктов назначения.

Я не хочу использовать PHP или что-то в этом роде.

Пожалуйста, помогите!

Спасибо

ответ

0

documentation очень аккуратным;

var origin1 = new google.maps.LatLng(55.930385, -3.118425); 
var origin2 = "Greenwich, England"; 
var destinationA = "Stockholm, Sweden"; 
var destinationB = new google.maps.LatLng(50.087692, 14.421150); 

var service = new google.maps.DistanceMatrixService(); 
service.getDistanceMatrix(
    { 
    origins: [origin1, origin2], 
    destinations: [destinationA, destinationB], 
    travelMode: google.maps.TravelMode.DRIVING, 
    unitSystem: UnitSystem, 
    durationInTraffic: Boolean, 
    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 = element.distance.text; 
     var duration = element.duration.text; 
     var from = origins[i]; 
     var to = destinations[j]; 
     } 
    } 
    } 
} 
+0

Это имеет смысл - и я использовал это, но как я могу упорядочить результаты в соответствии с наименьшим расстоянием. – user2746104

Смежные вопросы