Określ, jak i czy chcesz uwzględniać dane o ruchu

Wybrane preferencje dotyczące natężenia ruchu równoważą dokładność szczegółów trasy z wydajnością żądania. Przed przesłaniem prośby należy rozważyć, czy jest zwrócenie możliwie najdokładniejszych wyników lub jak najszybciej. Interfejs Routes API udostępnia opcje, które umożliwiają kontrolę między jakością danych i czasem oczekiwania na odpowiedź.

Ustawianie poziomu danych o ruchu

Interfejs Routes API zapewnia RoutingPreference (REST) i RoutingPreference (gRPC), który umożliwia określenie preferencji routingu przy obliczaniu tras. Te preferencje w zakresie, w jakim uwzględniają warunki na drodze wyznaczania trasy. Każde ustawienie routingu powoduje uzyskanie wyników różniących się od pod względem jakości trasy, szacowanego czasu dotarcia na miejsce i czasu oczekiwania na odpowiedź.

Warunki na drogach określają natężenie ruchu. Na przykład:

  • Gdy nie ma korków, warunki na drogach są normalne, że ruch odbywa się ze stałą prędkością.
  • Zbliża się pora największego zużycia i natężenie ruchu się zwiększa, co powoduje, że ruch zwalniać, przez co ruch na drodze będzie łagodny do umiarkowanych.
  • W ruchu z bumpera reklamowego szybkość przepływu wstrzymuje przepływ i generuje ciężkie warunki na drodze.

Brak informacji o ruchu

Gdy ustawisz preferencję routingu TRAFFIC_UNAWARE, trasy są obliczane bez uwzględniania bieżących warunków na drodze. To ustawienie routingu zapewnia najkrótszy czas oczekiwania na odpowiedź (odpowiedzi są zwracane najszybciej).

Ustawienie domyślne to TRAFFIC_UNAWARE.

W odpowiedzi:

  • Szacowany czas dotarcia na miejsce jest podany we właściwości odpowiedzi duration.

  • Właściwości odpowiedzi duration i staticDuration zawierają takie same wartości .

Użyj tego ustawienia routingu, jeśli chcesz, aby odpowiedzi były zwracane najszybciej. przybliżone szczegóły trasy są wystarczające.

Z uwzględnieniem natężenia ruchu

Gdy ustawisz preferencję routingu TRAFFIC_AWARE, trasy są obliczane z uwzględnieniem bieżących warunków na drodze. Z tego powodu trasa i trasa pozwala dokładniej odzwierciedlać rzeczywiste warunki. Ponieważ ten wzrost jakość danych wpływa na czas oczekiwania na odpowiedź, optymalizacje wydajności mają na celu zmniejszenie opóźnień.

W odpowiedzi:

  • Szacowany czas dotarcia na miejsce, który uwzględnia ruch w czasie rzeczywistym, jest zawarty w Właściwość odpowiedzi duration.

  • Właściwość odpowiedzi staticDuration zawiera czas podróży pokonywać całą trasę bez uwzględniania warunków drogowych.

Użyj tego ustawienia routingu, jeśli chcesz uzyskać dokładniejsze dane trasy niż TRAFFIC_UNAWARE. Oprócz tego odpowiedzi na te pytania średnie wydłużenie czasu oczekiwania.

Optymalny z uwzględnieniem ruchu

Gdy skonfigurujesz preferencję routingu TRAFFIC_AWARE_OPTIMAL, trasy będą z uwzględnieniem bieżących warunków na drodze, ale bez uwzględniania skuteczności i optymalizacje. W tym trybie serwer wykonuje bardziej szczegółowe zadania przeszukiwanie sieci dróg w celu znalezienia optymalnej trasy.

Preferencje routingu TRAFFIC_AWARE_OPTIMAL są równoważne trybowi używanemu przez maps.google.com oraz Mapy Google na komórki.

W przypadku korzystania z tej opcji z macierzy tras Compute liczba elementy w żądaniu (liczba źródeł × liczba miejsc docelowych) nie mogą przekraczać wartości 100. Więcej informacji o limitach macierzy tras Compute znajdziesz w artykule Obliczanie macierzy tras.

W odpowiedzi:

  • Szacowany czas dotarcia na miejsce, który uwzględnia ruch w czasie rzeczywistym, jest zawarty w Właściwość odpowiedzi duration.

  • Właściwość odpowiedzi staticDuration zawiera czas podróży pokonywać całą trasę bez uwzględniania warunków drogowych.

Takie ustawienie routingu zapewnia największe opóźnienie odpowiedzi (czyli odpowiedzi są zwracane z najdłuższym opóźnieniem). Użyj tego ustawienia routingu, gdy zależy Ci na wynikach o najwyższej jakości, niezależnie od czasu potrzebnego na udzielenie odpowiedzi.

Wpływ ustawienia godziny odjazdu

Opcjonalnie możesz użyć właściwości departureTime do ustawienia godziny odjazdu podróży. Jeśli nie skonfigurujesz właściwości departureTime, domyślnie zostanie użyta wartość w chwili ich przesłania.

  • W przypadku opcji TRAFFIC_UNAWARE nie można ustawić wartości departureTime, ponieważ wybór trasa i czas trwania zależą od sieci drogowej i średniego czasu trwania warunki na drodze.

  • Dotyczy to TRAFFIC_AWARE i TRAFFIC_AWARE_OPTIMAL, które biorą udział w aktualnym ruchu należy wziąć pod uwagę warunki, rzeczywisty ruch staje się ważniejszy zbliża się departureTime. Im dalej ustawisz godzinę odjazdu tym bardziej kwestionuje dane historyczne dotyczące ruchu, warunków.

Przykładowe ustawienie routingu

Poniższy kod JSON pokazuje, jak ustawić preferencję routingu w pliku treść encji wiadomości z żądaniem.

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "travelMode":"DRIVE",
  "routingPreference":"TRAFFIC_AWARE_OPTIMAL"
}

Konfigurowanie ruchu na liniach łamanych

Interfejs Routes API umożliwia wysyłanie próśb o informacje o warunkach na drodze wzdłuż linii łamanej z uwzględnieniem ruchu. Zobacz Aby dowiedzieć się więcej, poproś o linie łamane.