Udostępnij przez


Route - Post Route Matrix

Interfejs Route Matrix API to żądanie HTTP POST , które umożliwia obliczenie macierzy podsumowań tras dla zestawu tras zdefiniowanych przez lokalizacje początkowe i docelowe przy użyciu żądania synchronizacji. Dla każdego danego źródła usługa oblicza koszt routingu z tego źródła do każdego miejsca docelowego. Zestaw źródeł i zestaw miejsc docelowych można traktować jako nagłówki kolumn i wierszy tabeli, a każda komórka w tabeli zawiera koszty routingu z punktu początkowego do miejsca docelowego dla tej komórki. Macierze tras można obliczać dla tras samochodowych, pieszych i ciężarówek. Na przykład firma dostarczająca jedzenie ma 20 kierowców i musi znaleźć najbliższego kierowcę, aby odebrać dostawę z restauracji. Aby rozwiązać ten problem użycia, mogą wywołać interfejs API Route Matrix i użyć kosztu podróży do posortowania kierowców według ich rzeczywistej odległości lub czasu podróży z restauracji.

Macierze tras są używane w kilku różnych typach aplikacji, najczęściej do rozwiązywania problemów komiwojażera (TSP) i problemów z wyznaczaniem tras pojazdów (VRP). Dla każdej pary punkt początkowy-docelowy w macierzy zwracany jest czas podróży i odległość. Za pomocą obliczonych kosztów można określić, które szczegółowe trasy mają być obliczane przy użyciu interfejsu API Route Directions.

Maksymalny rozmiar macierzy dla żądania synchronizacji to 2500 (liczba źródeł pomnożona przez liczbę miejsc docelowych).

Przesyłanie synchronicznego żądania macierzy tras

Jeśli scenariusz wymaga żądań synchronicznych, a maksymalny rozmiar macierzy jest mniejszy lub równy 2500, możesz chcieć utworzyć żądanie synchroniczne. Maksymalny rozmiar macierzy dla tego interfejsu API wynosi 2500 (liczba źródeł pomnożona przez liczbę miejsc docelowych). Mając na uwadze to ograniczenie, przykładowe możliwe wymiary matrycy to: 50x50, 60x40, 90x20 (nie musi być kwadratowa).

Ograniczenia interfejsu API

Synchroniczne przetwarzanie macierzy najlepiej nadaje się do szybkich, małych macierzy obliczania tras. Aby obliczyć większe macierze i obliczenia ciężkiej trasy, należy użyć asynchronicznego punktu końcowego. Następujące ograniczenie ma zastosowanie do żądań synchronicznych. Jeśli żaden z wierszy w poniższej tabeli nie jest zgodny z parametrami żądania, oznacza to, że żądanie nie spełnia wymagań i nie zostanie przetworzone.

Maksymalny rozmiar matrycy Maksymalna liczba punktów początkowych Maksymalna liczba miejsc docelowych Dodatkowe limity
100 100 100 N/A
200 200 200 Wszystkie źródła i miejsca docelowe powinny znajdować się w polu ograniczenia osi 400 km x 400 km. W przeciwnym razie niektóre komórki macierzy zostaną rozwiązane jako OUT_OF_REGION.
2500 1000 1000 - departAt lub arriveAt musi być dowolna.
- traffic musi być historyczny.
- travelMode musi być albo samochodem ciężarowym, albo
- Żadne inne parametry nie mogą być używane jawnie

Przykłady:

  • Żądanie macierzy 10x20 z traffic=live: To żądanie zostanie przetworzone z limitem pola ograniczenia, ponieważ pasuje do limitu do 200, który obejmuje ograniczenia pola ograniczenia.

  • Żądanie macierzy 10x20 z parametrami domyślnymi (traffic=historical): To żądanie zostanie przetworzone bez limitu pola ograniczenia, ponieważ pasuje do limitu do 2500, który nie nakłada ograniczeń pola ograniczenia.

POST https://atlas.microsoft.com/route/matrix?api-version=2025-01-01

Parametry identyfikatora URI

Nazwa W Wymagane Typ Opis
api-version
query True

string

Numer wersji interfejsu API usługi Azure Maps.

Nagłówek żądania

Media Types: "application/geo+json"

Nazwa Wymagane Typ Opis
x-ms-client-id

string

Wskazuje konto przeznaczone do użycia z modelem zabezpieczeń Microsoft Entra ID. Ten unikatowy identyfikator konta Azure Maps można uzyskać z interfejsu API konta płaszczyzny zarządzania Azure Maps. Aby uzyskać więcej informacji na temat korzystania z zabezpieczeń Microsoft Entra ID w Azure Maps, zobacz Zarządzanie uwierzytelnianiem w Azure Maps.

Treść żądania

Media Types: "application/geo+json"

Nazwa Wymagane Typ Opis
features True

InputRouteMatrixFeaturesItem[]

Zestaw punktów początkowych i docelowych przekazywanych jako funkcje wielopunktowe GeoJSON dla macierzy wejściowej. Zapoznaj się z dokumentem RFC 7946 , aby uzyskać szczegółowe informacje na temat formatu GeoJSON.

type True

FeatureTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest FeatureCollection. Aby uzyskać więcej informacji, zobacz RFC 7946.

arriveAt

string (date-time)

Data i godzina przybycia do punktu docelowego sformatowana jako dateTime wartość zdefiniowana w RFC 3339, sekcja 5.6. Jeśli przesunięcie strefy czasowej nie zostanie określone, zostanie przyjęty czas UTC.

Nie można użyć parametru arriveAt w połączeniu z departAt.

Obsługuje arriveAtany również wartość, która jest dostosowana do przypadku użycia, w którym kontekst czasowy jest nieistotny. Wartość traffic=live parametru nie może być używana razem z any.

Wartość domyślna: any jeśli arriveAt nie zostanie określona.

Przykład: "arriveAt": "2024-12-01T09:30:00.000-07:00"

avoid

RouteMatrixAvoidEnum[]

Określa ograniczenia, które powinny być uwzględniane przy obliczaniu trasy podczas wyznaczania trasy. Opcja Avoid obsługuje wiele wartości w żądaniu i jest obsługiwana tylko w przypadku trybu jazdy i jazdy ciężarówki.

departAt

string (date-time)

Data i godzina wyjazdu z punktu początkowego sformatowana jako dateTime wartość zdefiniowana w dokumencie RFC 3339, sekcja 5.6. Jeśli przesunięcie strefy czasowej nie zostanie określone, zostanie przyjęty czas UTC.

Nie można użyć parametru departAt w połączeniu z arriveAt.

Obsługuje departAt również:

any wartość dopasowana do przypadku użycia, w którym kontekst czasowy nie ma znaczenia. Wartość traffic=live parametru nie może być używana razem z any.

now , aby ustawić czas odjazdu na czas przetwarzania każdej pojedynczej komórki. Czas przetwarzania może wynosić dowolny czas pomiędzy zgłoszeniem a jego zakończeniem. Ten tryb najlepiej używać razem z traffic=live.

Wartość domyślna: any jeśli departAt nie zostanie określona.

Przykład:

"departAt": "2024-12-01T09:30:00.000-07:00"

optimizeRoute

RouteMatrixOptimizeRouteEnum

Określa parametr, który ma być używany do optymalizacji trasy. Jeśli nie zostanie zdefiniowana, wartość domyślna to "najszybsza", która zwraca trasę w celu zminimalizowania czasu podróży.

Przykład: "optimizeRoute":"najszybszy"

traffic

RouteMatrixTrafficEnum

Określa, w jaki sposób ruch jest uwzględniany przy obliczaniu tras.

Wartość domyślna: historical

travelMode

RouteMatrixTravelModeEnum

Określa profil przesuwu, który ma być brany pod uwagę przy obliczaniu macierzy. Jeśli nie zostanie określona, wartość domyślna to "jazda".

Przykład: "travelMode":"jazda"

vehicleSpec

RouteMatrixVehicleSpec

Określa atrybuty pojazdu, takie jak wysokość pojazdu, masa, prędkość maksymalna, rodzaj ładunku itp., które należy wziąć pod uwagę przy obliczaniu macierzy trasy. Pomaga to uniknąć niskich prześwitów mostów, ograniczeń drogowych, trudnych skrętów w prawo, aby zapewnić zoptymalizowaną trasę w oparciu o specyfikacje pojazdu. Atrybuty pojazdu są określone we właściwości vehicleSpec.

Odpowiedzi

Nazwa Typ Opis
200 OK

RouteMatrixResponse

OK

Media Types: "application/geo+json"

Other Status Codes

MapsErrorResponse

Wystąpił nieoczekiwany błąd.

Media Types: "application/geo+json"

Nagłówki

x-ms-error-code: string

Zabezpieczenia

AADToken

Są to przepływy Microsoft Entra OAuth 2.0. Po połączeniu z dostępem opartym na rolach platformy Azure kontroli może służyć do kontrolowania dostępu do interfejsów API REST usługi Azure Maps. Mechanizmy kontroli dostępu opartej na rolach platformy Azure służą do wyznaczania dostępu do co najmniej jednego konta zasobu usługi Azure Maps lub zasobów podrzędnych. Każdy użytkownik, grupa lub jednostka usługi mogą mieć dostęp za pośrednictwem wbudowanej roli lub roli niestandardowej składającej się z co najmniej jednego uprawnienia do interfejsów API REST usługi Azure Maps.

Aby zaimplementować scenariusze, zalecamy wyświetlenie koncepcji uwierzytelniania . Podsumowując, ta definicja zabezpieczeń zawiera rozwiązanie do modelowania aplikacji za pośrednictwem obiektów, które mogą kontrolować dostęp do określonych interfejsów API i zakresów.

Uwaga / Notatka

  • Ta definicja zabezpieczeń wymaga użycia nagłówka x-ms-client-id w celu wskazania, do którego zasobu usługi Azure Maps aplikacja żąda dostępu. Można to uzyskać za pomocą interfejsu API zarządzania usługami Maps.
  • Authorization URL jest specyficzna dla wystąpienia chmury publicznej platformy Azure. Suwerenne chmury mają unikatowe adresy URL autoryzacji i konfiguracje identyfikatorów Entra firmy Microsoft.
  • Kontrola dostępu oparta na rolach platformy Azure jest konfigurowana na podstawie płaszczyzny zarządzania platformy Azure za pośrednictwem witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia, zestawów AZURE SDK lub interfejsów API REST.
  • Użycie zestawu Web SDK usługi Azure Maps umożliwia skonfigurowanie aplikacji na podstawie konfiguracji dla wielu przypadków użycia.
  • Aby uzyskać więcej informacji na temat platformy tożsamości firmy Microsoft, zobacz Microsoft identity platform overview.

Typ: oauth2
Flow: implicit
Adres URL autoryzacji: https://login.microsoftonline.com/common/oauth2/authorize

Zakresy

Nazwa Opis
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Jest to klucz wspólny aprowizowany podczas tworzenia zasobów usługi Azure Maps za pośrednictwem płaszczyzny zarządzania platformy Azure za pośrednictwem witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia, zestawów SDK platformy Azure lub interfejsów API REST.

Za pomocą tego klucza każda aplikacja jest autoryzowana do uzyskiwania dostępu do wszystkich interfejsów API REST. Innymi słowy, mogą one być obecnie traktowane jako klucze główne do konta, dla którego są wystawiane.

W przypadku publicznie uwidocznionych aplikacji naszym zaleceniem jest użycie dostępu serwer-serwer interfejsów API REST usługi Azure Maps, w których ten klucz może być bezpiecznie przechowywany.

Typ: apiKey
W: header

SAS Token

Jest to token sygnatury dostępu współdzielonego tworzony na podstawie operacji List SAS na zasobie usługi Azure Maps za pośrednictwem płaszczyzny zarządzania platformy Azure za pośrednictwem witryny Azure Portal, programu PowerShell, interfejsu wiersza polecenia, zestawów AZURE SDK lub interfejsów API REST.

Dzięki temu tokenowi każda aplikacja jest autoryzowana do uzyskiwania dostępu za pomocą kontroli dostępu opartej na rolach platformy Azure i szczegółowej kontroli wygaśnięcia, szybkości i regionów użycia dla określonego tokenu. Innymi słowy, token SAS może służyć do umożliwienia aplikacjom kontrolowania dostępu w sposób bardziej zabezpieczony niż klucz wspólny.

W przypadku publicznie uwidocznionych aplikacji zalecamy skonfigurowanie określonej listy dozwolonych źródeł w zasobie Mapowanie konta w celu ograniczenia nadużyć renderowania i regularnego odnawiania tokenu SAS.

Typ: apiKey
W: header

Przykłady

Successfully retrieve a route matrix with additional parameters in the body

Przykładowe żądanie

POST https://atlas.microsoft.com/route/matrix?api-version=2025-01-01

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "MultiPoint",
        "coordinates": [
          [
            9.15049,
            45.458545
          ],
          [
            11.050541,
            45.403337
          ]
        ]
      },
      "properties": {
        "pointType": "origins"
      }
    },
    {
      "type": "Feature",
      "geometry": {
        "type": "MultiPoint",
        "coordinates": [
          [
            11.499931,
            48.149853
          ],
          [
            14.538226,
            50.033688
          ]
        ]
      },
      "properties": {
        "pointType": "destinations"
      }
    }
  ],
  "departAt": "2022-12-19T16:39:57+01:00",
  "optimizeRoute": "fastest",
  "traffic": "historical",
  "travelMode": "truck",
  "avoid": [
    "unpavedRoads"
  ]
}

Przykładowa odpowiedź

{
  "type": "Feature",
  "geometry": null,
  "properties": {
    "summary": {
      "totalCount": 4,
      "successfulCount": 4
    },
    "matrix": [
      {
        "statusCode": 200,
        "originIndex": 0,
        "destinationIndex": 0,
        "durationTrafficInSeconds": 21007,
        "durationInSeconds": 21007,
        "distanceInMeters": 492466,
        "departureAt": "2022-12-19T16:39:57+01:00",
        "arrivalAt": "2022-12-19T22:30:03+01:00"
      },
      {
        "statusCode": 200,
        "originIndex": 0,
        "destinationIndex": 1,
        "durationTrafficInSeconds": 33623,
        "durationInSeconds": 33623,
        "distanceInMeters": 877028,
        "departureAt": "2022-12-19T16:39:57+01:00",
        "arrivalAt": "2022-12-20T02:00:19+01:00"
      },
      {
        "statusCode": 200,
        "originIndex": 1,
        "destinationIndex": 0,
        "durationTrafficInSeconds": 19520,
        "durationInSeconds": 19520,
        "distanceInMeters": 427769,
        "departureAt": "2022-12-19T16:39:57+01:00",
        "arrivalAt": "2022-12-19T22:05:16+01:00"
      },
      {
        "statusCode": 200,
        "originIndex": 1,
        "destinationIndex": 1,
        "durationTrafficInSeconds": 32070,
        "durationInSeconds": 32070,
        "distanceInMeters": 836080,
        "departureAt": "2022-12-19T16:39:57+01:00",
        "arrivalAt": "2022-12-20T01:34:27+01:00"
      }
    ]
  }
}

Definicje

Nazwa Opis
AdrTunnelRestrictionCodeEnum

Kod ograniczenia tunelu ADR. ADR to europejska umowa dotycząca międzynarodowego przewozu drogowego towarów niebezpiecznych. Kod ograniczenia tunelu ADR służy do określenia, czy pojazd może przejechać przez tunel z ograniczeniami dotyczącymi przewozu towarów niebezpiecznych.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

ErrorDetail

Szczegóły błędu.

FeaturesItemTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest Funkcja. Aby uzyskać więcej informacji, zobacz RFC 7946.

FeatureTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest FeatureCollection. Aby uzyskać więcej informacji, zobacz RFC 7946.

GeoJsonMultiPoint

Prawidłowy typ geometrii GeoJSON MultiPoint. Aby uzyskać szczegółowe informacje, zobacz RFC 7946.

InputRouteMatrixFeaturesItem

Określa wejściowe punkty początkowe i docelowe oraz dodatkowe właściwości GeoJSON obiektu elementu MultiPoint. Szczegółowe informacje można znaleźć w dokumencie RFC 7946 .

InputRouteMatrixProperties

Określa obiekt właściwości macierzy wejściowej.

MapsErrorDetail

Szczegóły błędu.

MapsErrorResponse

Typowa odpowiedź na błędy interfejsów API usługi Azure Maps w celu zwrócenia szczegółów błędu dla operacji, które zakończyły się niepowodzeniem.

MapsInnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

RouteMatrixAsyncResponse

Określa instrukcje jazdy i dodatkowe właściwości dla każdego punktu manewru na odcinku trasy.

RouteMatrixAvoidEnum

Określa ograniczenia, które powinny być uwzględniane przy obliczaniu trasy podczas wyznaczania trasy. Opcja Avoid obsługuje wiele wartości w żądaniu i jest obsługiwana tylko w przypadku trybu jazdy i jazdy ciężarówki.

RouteMatrixFeatureProperties

Właściwości macierzy tras.

RouteMatrixItemResult

Wynik elementu macierzy tras

RouteMatrixOptimizeRouteEnum

Określa parametr, który ma być używany do optymalizacji trasy. Jeśli nie zostanie zdefiniowana, wartość domyślna to "najszybsza", która zwraca trasę w celu zminimalizowania czasu podróży.

Przykład: "optimizeRoute":"najszybszy"

RouteMatrixRequest

Umożliwia ustawienie macierzy tras przedstawiającej czas podróży i odległość dla wszystkich możliwych par na liście punktów początkowych i docelowych. GeoJSON obiekt funkcji i dodatkowe właściwości. Szczegółowe informacje można znaleźć w dokumencie RFC 7946 .

RouteMatrixResponse

Ten obiekt jest zwracany z pomyślnego wywołania.

RouteMatrixSummary

Podsumowanie żądania macierzy tras

RouteMatrixTrafficEnum

Określa, w jaki sposób ruch jest uwzględniany przy obliczaniu tras.

Wartość domyślna: historical

RouteMatrixTravelModeEnum

Określa profil przesuwu, który ma być brany pod uwagę przy obliczaniu macierzy. Jeśli nie zostanie określona, wartość domyślna to "jazda".

Przykład: "travelMode":"jazda"

RouteMatrixTypeEnum

Określa początkowy typ MultiPoint i docelowy typ MultiPoint dla macierzy wejściowej.

RouteMatrixVehicleSpec

Określa atrybuty pojazdu, takie jak wysokość pojazdu, masa, prędkość maksymalna, rodzaj ładunku itp., które należy wziąć pod uwagę przy obliczaniu macierzy trasy. Pomaga to uniknąć niskich prześwitów mostów, ograniczeń drogowych, trudnych skrętów w prawo, aby zapewnić zoptymalizowaną trasę w oparciu o specyfikacje pojazdu. Atrybuty pojazdu są określone we właściwości vehicleSpec.

RouteOperationKindEnum

Rodzaj operacji asynchronicznej

VehicleLoadTypeEnum

Typy ładunków, które mogą być klasyfikowane jako materiały niebezpieczne i ograniczone z niektórych dróg. Dostępne wartości vehicleLoadType to amerykańskie klasy materiałów niebezpiecznych od 1 do 9 oraz klasyfikacje ogólne do użytku w innych krajach. Wartości rozpoczynające się od USHazmat dotyczą routingu w USA, podczas gdy otherHazmat powinny być używane dla wszystkich innych krajów. vehicleLoadType obsługuje wiele wartości w żądaniu.

AdrTunnelRestrictionCodeEnum

Kod ograniczenia tunelu ADR. ADR to europejska umowa dotycząca międzynarodowego przewozu drogowego towarów niebezpiecznych. Kod ograniczenia tunelu ADR służy do określenia, czy pojazd może przejechać przez tunel z ograniczeniami dotyczącymi przewozu towarów niebezpiecznych.

Wartość Opis
B

Pojazdy o kodzie B mają zakaz wjazdu na drogi z tunelami ADR kategorii B, C, D i E.

C

Pojazdy o kodzie C nie mogą wjeżdżać na drogi z tunelami kategorii C, D i E ADR

D

Pojazdy o kodzie D nie mogą wjeżdżać na drogi z tunelami ADR kategorii D i E.

E

Pojazdy o kodzie E mają zakaz wjazdu na drogi z tunelem ADR kategorii E.

ErrorAdditionalInfo

Dodatkowe informacje o błędzie zarządzania zasobami.

Nazwa Typ Opis
info

object

Dodatkowe informacje.

type

string

Dodatkowy typ informacji.

ErrorDetail

Szczegóły błędu.

Nazwa Typ Opis
additionalInfo

ErrorAdditionalInfo[]

Dodatkowe informacje o błędzie.

code

string

Kod błędu.

details

ErrorDetail[]

Szczegóły błędu.

message

string

Komunikat o błędzie.

target

string

Element docelowy błędu.

FeaturesItemTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest Funkcja. Aby uzyskać więcej informacji, zobacz RFC 7946.

Wartość Opis
Feature

Określa typ obiektu funkcji GeoJSON.

FeatureTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest FeatureCollection. Aby uzyskać więcej informacji, zobacz RFC 7946.

Wartość Opis
FeatureCollection

Określa typ obiektu GeoJSONFeatureCollection.

GeoJsonMultiPoint

Prawidłowy typ geometrii GeoJSON MultiPoint. Aby uzyskać szczegółowe informacje, zobacz RFC 7946.

Nazwa Typ Opis
coordinates

number[] (double)

Współrzędne geometrii GeoJson MultiPoint.

type string:

MultiPoint

Określa typ GeoJSON. Musi być jednym z dziewięciu prawidłowych typów obiektów GeoJSON — Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature i FeatureCollection.

InputRouteMatrixFeaturesItem

Określa wejściowe punkty początkowe i docelowe oraz dodatkowe właściwości GeoJSON obiektu elementu MultiPoint. Szczegółowe informacje można znaleźć w dokumencie RFC 7946 .

Nazwa Typ Opis
geometry

GeoJsonMultiPoint

Prawidłowy typ geometrii GeoJSON MultiPoint. Aby uzyskać szczegółowe informacje, zobacz RFC 7946.

properties

InputRouteMatrixProperties

Obiekt właściwości elementu MultiPoint, który określa obiekty początkowe i docelowe dla macierzy wejściowej.

type

FeaturesItemTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest Funkcja. Aby uzyskać więcej informacji, zobacz RFC 7946.

InputRouteMatrixProperties

Określa obiekt właściwości macierzy wejściowej.

Nazwa Typ Opis
pointType

RouteMatrixTypeEnum

Określa początkowy typ MultiPoint i docelowy typ MultiPoint dla macierzy wejściowej.

MapsErrorDetail

Szczegóły błędu.

Nazwa Typ Opis
code

string

Jeden z zdefiniowanych przez serwer zestaw kodów błędów.

details

MapsErrorDetail[]

Tablica szczegółów dotyczących określonych błędów, które doprowadziły do tego zgłoszonego błędu.

innererror

MapsInnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

message

string

Czytelna dla człowieka reprezentacja błędu.

target

string

Element docelowy błędu.

MapsErrorResponse

Typowa odpowiedź na błędy interfejsów API usługi Azure Maps w celu zwrócenia szczegółów błędu dla operacji, które zakończyły się niepowodzeniem.

Nazwa Typ Opis
error

MapsErrorDetail

Szczegóły błędu.

MapsInnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

Nazwa Typ Opis
code

string

Kod błędu.

innererror

MapsInnerError

Obiekt zawierający bardziej szczegółowe informacje niż bieżący obiekt o błędzie.

RouteMatrixAsyncResponse

Określa instrukcje jazdy i dodatkowe właściwości dla każdego punktu manewru na odcinku trasy.

Nazwa Typ Opis
geometry

object

Obiekt geometrii ma wartość null

kind string:

RouteMatrix

Rodzaj operacji asynchronicznej

properties

RouteMatrixFeatureProperties

Właściwości macierzy tras.

type

FeaturesItemTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest Funkcja. Aby uzyskać więcej informacji, zobacz RFC 7946.

RouteMatrixAvoidEnum

Określa ograniczenia, które powinny być uwzględniane przy obliczaniu trasy podczas wyznaczania trasy. Opcja Avoid obsługuje wiele wartości w żądaniu i jest obsługiwana tylko w przypadku trybu jazdy i jazdy ciężarówki.

Wartość Opis
tollRoads

Unika korzystania z dróg płatnych na trasie.

unpavedRoads

Omija na trasie drogi nieutwardzone.

RouteMatrixFeatureProperties

Właściwości macierzy tras.

Nazwa Typ Opis
matrix

RouteMatrixItemResult[]

Macierz wyników trasy.

summary

RouteMatrixSummary

Podsumowanie żądania macierzy tras

RouteMatrixItemResult

Wynik elementu macierzy tras

Nazwa Typ Opis
arrivalAt

string (date-time)

Szacowany dateTime czas przybycia, który uwzględnia warunki drogowe, jest sformatowany jako wartość zdefiniowana w RFC 3339, sekcja 5.6. Będzie odwoływać się do przesunięcia strefy czasowej o jeden lub departAtarrivalAt. Jeśli nie, zostanie użyty czas UTC. Jeśli departAt lub arriveAt jest dowolne, to departureAt jest nieobecne.

departureAt

string (date-time)

Szacowany czas odjazdu, który uwzględnia warunki drogowe, jest sformatowany jako dateTime wartość zdefiniowana w RFC 3339, sekcja 5.6. Będzie odwoływać się do przesunięcia strefy czasowej o jeden lub departAtarrivalAt. Jeśli nie, zostanie użyty czas UTC. Jeśli departAt lub arriveAt ma wartość any, to departureAt jest nieobecne.

destinationIndex

integer (int32)

Indeks punktu docelowego

distanceInMeters

number (double)

Długość w metrach, właściwość

durationInSeconds

integer (int64)

Szacowany czas podróży w sekundach, który nie obejmuje opóźnień na trasie spowodowanych warunkami drogowymi.

durationTrafficInSeconds

integer (int64)

Czas potrzebny na przebycie w sekundach odpowiada aktualnym TravelDistance warunkom drogowym. Ta wartość jest podawana, jeśli optimizeRoute obejmuje zagadnienia dotyczące ruchu.

error

ErrorDetail

Szczegóły błędu.

originIndex

integer (int32)

Indeks punktu początkowego

statusCode

integer (int32)

Kod stanu HTTP bieżącej komórki.

RouteMatrixOptimizeRouteEnum

Określa parametr, który ma być używany do optymalizacji trasy. Jeśli nie zostanie zdefiniowana, wartość domyślna to "najszybsza", która zwraca trasę w celu zminimalizowania czasu podróży.

Przykład: "optimizeRoute":"najszybszy"

Wartość Opis
fastest

Znajduje najszybszą trasę, aby zoptymalizować trasę według czasu podróży.

Tylko fastest ta opcja jest obsługiwana w przypadku interfejsu API synchronizacji macierzy tras. Aby użyć innych typów, sprawdź asynchroniczny interfejs API macierzy tras.

RouteMatrixRequest

Umożliwia ustawienie macierzy tras przedstawiającej czas podróży i odległość dla wszystkich możliwych par na liście punktów początkowych i docelowych. GeoJSON obiekt funkcji i dodatkowe właściwości. Szczegółowe informacje można znaleźć w dokumencie RFC 7946 .

Nazwa Typ Domyślna wartość Opis
arriveAt

string (date-time)

Data i godzina przybycia do punktu docelowego sformatowana jako dateTime wartość zdefiniowana w RFC 3339, sekcja 5.6. Jeśli przesunięcie strefy czasowej nie zostanie określone, zostanie przyjęty czas UTC.

Nie można użyć parametru arriveAt w połączeniu z departAt.

Obsługuje arriveAtany również wartość, która jest dostosowana do przypadku użycia, w którym kontekst czasowy jest nieistotny. Wartość traffic=live parametru nie może być używana razem z any.

Wartość domyślna: any jeśli arriveAt nie zostanie określona.

Przykład: "arriveAt": "2024-12-01T09:30:00.000-07:00"

avoid

RouteMatrixAvoidEnum[]

Określa ograniczenia, które powinny być uwzględniane przy obliczaniu trasy podczas wyznaczania trasy. Opcja Avoid obsługuje wiele wartości w żądaniu i jest obsługiwana tylko w przypadku trybu jazdy i jazdy ciężarówki.

departAt

string (date-time)

Data i godzina wyjazdu z punktu początkowego sformatowana jako dateTime wartość zdefiniowana w dokumencie RFC 3339, sekcja 5.6. Jeśli przesunięcie strefy czasowej nie zostanie określone, zostanie przyjęty czas UTC.

Nie można użyć parametru departAt w połączeniu z arriveAt.

Obsługuje departAt również:

any wartość dopasowana do przypadku użycia, w którym kontekst czasowy nie ma znaczenia. Wartość traffic=live parametru nie może być używana razem z any.

now , aby ustawić czas odjazdu na czas przetwarzania każdej pojedynczej komórki. Czas przetwarzania może wynosić dowolny czas pomiędzy zgłoszeniem a jego zakończeniem. Ten tryb najlepiej używać razem z traffic=live.

Wartość domyślna: any jeśli departAt nie zostanie określona.

Przykład:

"departAt": "2024-12-01T09:30:00.000-07:00"

features

InputRouteMatrixFeaturesItem[]

Zestaw punktów początkowych i docelowych przekazywanych jako funkcje wielopunktowe GeoJSON dla macierzy wejściowej. Zapoznaj się z dokumentem RFC 7946 , aby uzyskać szczegółowe informacje na temat formatu GeoJSON.

optimizeRoute

RouteMatrixOptimizeRouteEnum

fastest

Określa parametr, który ma być używany do optymalizacji trasy. Jeśli nie zostanie zdefiniowana, wartość domyślna to "najszybsza", która zwraca trasę w celu zminimalizowania czasu podróży.

Przykład: "optimizeRoute":"najszybszy"

traffic

RouteMatrixTrafficEnum

historical

Określa, w jaki sposób ruch jest uwzględniany przy obliczaniu tras.

Wartość domyślna: historical

travelMode

RouteMatrixTravelModeEnum

driving

Określa profil przesuwu, który ma być brany pod uwagę przy obliczaniu macierzy. Jeśli nie zostanie określona, wartość domyślna to "jazda".

Przykład: "travelMode":"jazda"

type

FeatureTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest FeatureCollection. Aby uzyskać więcej informacji, zobacz RFC 7946.

vehicleSpec

RouteMatrixVehicleSpec

Określa atrybuty pojazdu, takie jak wysokość pojazdu, masa, prędkość maksymalna, rodzaj ładunku itp., które należy wziąć pod uwagę przy obliczaniu macierzy trasy. Pomaga to uniknąć niskich prześwitów mostów, ograniczeń drogowych, trudnych skrętów w prawo, aby zapewnić zoptymalizowaną trasę w oparciu o specyfikacje pojazdu. Atrybuty pojazdu są określone we właściwości vehicleSpec.

RouteMatrixResponse

Ten obiekt jest zwracany z pomyślnego wywołania.

Nazwa Typ Opis
geometry

object

Obiekt geometrii ma wartość null

properties

RouteMatrixFeatureProperties

Właściwości macierzy tras.

type

FeaturesItemTypeEnum

Określa typ GeoJSON. Jedynym obsługiwanym typem obiektu jest Funkcja. Aby uzyskać więcej informacji, zobacz RFC 7946.

RouteMatrixSummary

Podsumowanie żądania macierzy tras

Nazwa Typ Opis
successfulCount

integer (int32)

Liczba udanych tras w tej macierzy.

totalCount

integer (int32)

Łączna liczba tras w tej macierzy.

RouteMatrixTrafficEnum

Określa, w jaki sposób ruch jest uwzględniany przy obliczaniu tras.

Wartość domyślna: historical

Wartość Opis
historical

Obliczanie trasy uwzględnia historyczne czasy podróży i długoterminowe zamknięcia. Korki i krótkotrwałe zamknięcia w oknie czasowym podróży nie mają wpływu na trasę ani czas podróży.

live

Oprócz historycznych czasów podróży, przy obliczaniu trasy uwzględniane są korki oraz krótko- i długoterminowe zamknięcia w czasie podróży.

Note: traffic=live nie może być używany w połączeniu z arriveAt=any i departAt=any

RouteMatrixTravelModeEnum

Określa profil przesuwu, który ma być brany pod uwagę przy obliczaniu macierzy. Jeśli nie zostanie określona, wartość domyślna to "jazda".

Przykład: "travelMode":"jazda"

Wartość Opis
driving

Profil wyznaczania trasy odpowiedni dla samochodów służy do obliczania macierzy trasy.

truck

Profil routingu odpowiedni dla pojazdów użytkowych, takich jak samochody ciężarowe, służy do obliczania macierzy trasy.

walking

Zwrócone trasy są zoptymalizowane pod kątem pieszych, w tym korzystania z chodników.

RouteMatrixTypeEnum

Określa początkowy typ MultiPoint i docelowy typ MultiPoint dla macierzy wejściowej.

Wartość Opis
origins

Funkcje MultiPoint, które definiują lokalizacje początkowe w macierzy wejściowej.

destinations

Funkcje wielopunktowe, które definiują lokalizacje docelowe w macierzy wejściowej.

RouteMatrixVehicleSpec

Określa atrybuty pojazdu, takie jak wysokość pojazdu, masa, prędkość maksymalna, rodzaj ładunku itp., które należy wziąć pod uwagę przy obliczaniu macierzy trasy. Pomaga to uniknąć niskich prześwitów mostów, ograniczeń drogowych, trudnych skrętów w prawo, aby zapewnić zoptymalizowaną trasę w oparciu o specyfikacje pojazdu. Atrybuty pojazdu są określone we właściwości vehicleSpec.

Nazwa Typ Domyślna wartość Opis
adrTunnelRestrictionCode

AdrTunnelRestrictionCodeEnum

Kod ograniczenia tunelu ADR. ADR to europejska umowa dotycząca międzynarodowego przewozu drogowego towarów niebezpiecznych. Kod ograniczenia tunelu ADR służy do określenia, czy pojazd może przejechać przez tunel z ograniczeniami dotyczącymi przewozu towarów niebezpiecznych.

axleWeight

integer (int64)

minimum: 0
maximum: 1000000
0

Waga na oś pojazdu w kg. Wartość 0 oznacza, że ograniczenia wagi na oś nie są brane pod uwagę.

height

number (double)

minimum: 0
maximum: 1000000
0

Wysokość pojazdu w metrach. Wartość 0 oznacza, że ograniczenia wysokości nie są brane pod uwagę.

isVehicleCommercial

boolean

False

Czy pojazd jest używany do celów komercyjnych. Pojazdy komercyjne mogą nie być dozwolone do jazdy na niektórych drogach.

length

number (double)

minimum: 0
maximum: 1000000
0

Długość pojazdu w metrach. Wartość 0 oznacza, że ograniczenia długości nie są brane pod uwagę.

loadType

VehicleLoadTypeEnum[]

Typy ładunków, które mogą być klasyfikowane jako materiały niebezpieczne i ograniczone z niektórych dróg. Dostępne wartości vehicleLoadType to amerykańskie klasy materiałów niebezpiecznych od 1 do 9 oraz klasyfikacje ogólne do użytku w innych krajach. Wartości rozpoczynające się od USHazmat dotyczą routingu w USA, podczas gdy otherHazmat powinny być używane dla wszystkich innych krajów. vehicleLoadType obsługuje wiele wartości w żądaniu.

maxSpeed

integer (int64)

minimum: 0
maximum: 250
0

Maksymalna prędkość pojazdu w km/godzinę. Maksymalna prędkość w profilu pojazdu służy do sprawdzania, czy pojazd jest dozwolony na autostradach.

Wartość 0 oznacza, że odpowiednia wartość dla pojazdu zostanie określona i zastosowana podczas planowania tras.

Wartość niezerowa może zostać zastąpiona podczas planowania trasy. Na przykład bieżący przepływ ruchu wynosi 60 km/godzinę. Jeśli maksymalna prędkość pojazdu wynosi 50 km/godzinę, silnik rozsyłania rozważy 60 km/godzinę, ponieważ jest to bieżąca sytuacja. Jeśli maksymalna prędkość pojazdu wynosi 80 km/godzinę, ale bieżący przepływ ruchu wynosi 60 km/godzinę, silnik routingu ponownie użyje 60 km/godzinę.

weight

integer (int64)

minimum: 0
maximum: 1000000
0

Waga pojazdu w kilogramach. Wartość 0 oznacza, że ograniczenia wagowe nie są brane pod uwagę.

width

number (double)

minimum: 0
maximum: 1000000
0

Szerokość pojazdu w metrach. Wartość 0 oznacza, że ograniczenia szerokości nie są brane pod uwagę.

RouteOperationKindEnum

Rodzaj operacji asynchronicznej

Wartość Opis
RouteMatrix

Zadanie asynchroniczne macierzy tras.

VehicleLoadTypeEnum

Typy ładunków, które mogą być klasyfikowane jako materiały niebezpieczne i ograniczone z niektórych dróg. Dostępne wartości vehicleLoadType to amerykańskie klasy materiałów niebezpiecznych od 1 do 9 oraz klasyfikacje ogólne do użytku w innych krajach. Wartości rozpoczynające się od USHazmat dotyczą routingu w USA, podczas gdy otherHazmat powinny być używane dla wszystkich innych krajów. vehicleLoadType obsługuje wiele wartości w żądaniu.

Wartość Opis
USHazmatClass1

Explosives

USHazmatClass2

Gaz sprężony

USHazmatClass3

Ciecze łatwopalne

USHazmatClass4

Substancje stałe łatwopalne

USHazmatClass5

Oxidizers

USHazmatClass6

Poisons

USHazmatClass7

Radioactive

USHazmatClass8

Corrosives

USHazmatClass9

Różne

otherHazmatExplosive

Explosives

otherHazmatGeneral

Różne

otherHazmatHarmfulToWater

Działa szkodliwie na wodę