Матриця відстаней /distancematrix
Розрахунок дистанцій для матриці вихідних і кінцевих точок.
Схема запиту
https://api.visicom.ua/data-api/5.0/core/distancematrix.json?[origins][&destinations][&locks][&mode][&key][&callback]
Параметри запиту
Параметр | Опис |
---|---|
origins|o | Масив координат вихідних точок. Точка описується ідентифікатором об'єкта, або широтою і довготою у вигляді lng,lat або в форматі WKT з кількістю точок не більше 25. Символ | — роздільник точок в списку. |
destinations|d | Масив координат кінцевих точок. Точка описується ідентифікатором об'єкта, або широтою і довготою у вигляді lng,lat або в форматі WKT з з кількістю точок не більше 25. Символ | — роздільник точок в списку. |
locks|l | Масив координат блокувань проїздів. Блокування описується широтою і довготою у вигляді lng,lat . Для автомобільних проїздів забороняє прокладку маршруту в місці блокування. Має сенс тільки для режиму розрахунку driving і driving-shortest . Символ | — роздільник точок в списку. |
mode|m | Режим розрахунку маршруту. Може приймати значення driving (оптимальний маршрут по автомобільним дорогам), driving-shortest (найкоротший маршрут по автомобільним дорогам), direct (відстань по прямій). За замовчуванням розрахунок відбувається в режимі driving . |
key | Ключ авторизації. |
callback | Ім'я функції для JSONP запиту до сервера. |
Приклади запиту
https://api.visicom.ua/data-api/5.0/core/distancematrix.json?origins=30.36277,50.51605|30.49667,50.49508|30.59761,50.45226|30.51383,50.44789&destinations=30.36277,50.51605|30.49667,50.49508|30.59761,50.45226|30.51383,50.44789&mode=driving-shortest&key=YOUR_API_KEY
Відповідь на запит
Відповідь повертається у вигляді масиву рядків. Кожен рядок містить дистанції маршрутів з поточної вихідної точки (origins
) в усі кінцеві (destinations
).
{"rows": [
[
{"distance": 0, "status": "OK"},
{"distance": 12110,"status": "OK"},
{"distance": 22616,"status": "OK"},
{"distance": 14885,"status": "OK"}
],
[
{"distance": 12442,"status": "OK"},
{"distance": 0,"status": "OK"},
{"distance": 13060,"status": "OK"},
{"distance": 9323,"status": "OK"}
],
[
{"distance": 22793,"status": "OK"},
{"distance": 14416,"status": "OK"},
{"distance": 0,"status": "OK"},
{"distance": 10177,"status": "OK"}
],
[
{"distance": 16747,"status": "OK"},
{"distance": 10541,"status": "OK"},
{"distance": 8706,"status": "OK"},
{"distance": 0,"status": "OK"}
]
]}