Содержание

Маршрутизация через промежуточные точки

Чтобы получить маршрут с промежуточными точками, нужно использовать запрос gis_get_route_via_waypoints:

POST https://routing-maps.wialon.com/hst-api.wialon.com/gis_get_route_via_waypoints
 
//Параметры (должны быть закодированы с помощью application/x-www-form-urlencoded, двоеточия-разделители предусмотрены для удобства чтения):
 
  data = {
    "params": {},
    "origin": {
      "lat": <double>,
      "lon": <double>
    },
    "destination": {
      "lat": <double>,
      "lon": <double>
    },
    "waypoints": [
      {
        "lat": <double>,
        "lon": <double>
      }
    ],
    "flags": <int>,
    "optimizeParams": {
      "enable": <boolean>,
      "fixOrigin": <boolean>,
      "fixDestination": <boolean>
    }
  }
  search_provider = <text>
  gis_sid = <text>
  uid = <long>
  sid = <text>

Параметры

Название Описание
data Основные параметры маршрутизации.
origin Координаты начальной точки маршрута.
lat Широта начальной точки маршрута.
lon Долгота начальной точки маршрута.
destination Координаты конечной точки маршрута.
lat Широта конечной точки маршрута.
lon Долгота конечной точки маршрута.
waypoints Массив с координатами промежуточных точек.
lat Широта промежуточной точки.
lon Долгота промежуточной точки.
flags Флаги для управления параметрами маршрута (например, 2).
optimizeParams Настройка оптимизации маршрута.
enable Включить оптимизацию (true/false).
fixOrigin Зафиксировать начальную точку (true/false).
fixDestination Зафиксировать конечную точку (true/false).
search_provider Поставщик поиска (например, «webgis»).
gis_sid Идентификатор сессии GIS.
uid ID пользователя.
sid Идентификатор сессии пользователя.

Возвращаемый результат

{
  "routes": [
    {
      "start_location": {
        "lat": <double>,
        "lon": <double>
      },
      "end_location": {
        "lat": <double>,
        "lon": <double>
      },
      "points": <text>,
      "distance": {
        "text": <text>,
        "value": <double>
      },
      "duration": {
        "text": <text>,
        "value": <int>
      }
    }
  ],
  "status": <text>
}