Method: computeRoutes

Zwraca trasę podstawową wraz z opcjonalnymi trasami alternatywnymi z określonym zestawem terminali i pośrednich punktów na trasie.

UWAGA: ta metoda wymaga określenia maski pola odpowiedzi w danych wejściowych. Maską pola odpowiedzi możesz podać przy użyciu parametru adresu URL $fields lub fields albo nagłówka HTTP/gRPC X-Goog-FieldMask (zobacz dostępne parametry i nagłówki adresu URL). Wartość jest rozdzielaną przecinkami listą ścieżek pól. Zapoznaj się ze szczegółową dokumentacją tworzenia ścieżek pól.

Na przykład w tej metodzie:

  • Maska wszystkich dostępnych pól (do sprawdzenia ręcznej): X-Goog-FieldMask: *
  • Maska pola z czasem trwania, odległością i linią łamaną na poziomie trasy (przykładowa konfiguracja produkcyjna): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google odradza korzystanie z maski pola odpowiedzi z symbolem wieloznacznym (*) i określanie maski pola na najwyższym poziomie (routes), ponieważ:

  • Zaznaczenie tylko tych pól, które są Ci potrzebne, pozwala naszemu serwerowi skrócić cykle obliczeniowe, a przez to zwracać Ci wyniki z mniejszym opóźnieniem.
  • Wybór tylko tych pól, które są potrzebne w zadaniu produkcyjnym, zapewnia stabilność czasu oczekiwania. W przyszłości możemy dodać więcej pól odpowiedzi, a te nowe pola mogą wymagać więcej czasu na obliczenia. Jeśli zaznaczysz wszystkie pola lub wybierzesz wszystkie pola na najwyższym poziomie, może nastąpić spadek wydajności, ponieważ każde dodane przez nas nowe pole zostanie automatycznie uwzględnione w odpowiedzi.
  • Wybranie tylko tych pól, które są potrzebne, zmniejsza rozmiar odpowiedzi i większą przepustowość sieci.

Żądanie HTTP

POST https://routes.googleapis.com/directions/v2:computeRoutes

Adres URL używa składni transkodowania gRPC.

Treść żądania

Treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "arrivalTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean,
  "requestedReferenceRoutes": [
    enum (ReferenceRoute)
  ],
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
Pola
origin

object (Waypoint)

To pole jest wymagane. Punkt początkowy.

destination

object (Waypoint)

To pole jest wymagane. Docelowy punkt na trasie.

intermediates[]

object (Waypoint)

Opcjonalnie. Zestaw punktów pośrednich na trasie (bez punktów końcowych) do zatrzymania się lub przejechania. Obsługiwanych jest do 25 pośrednich punktów pośrednich.

travelMode

enum (RouteTravelMode)

Opcjonalnie. Określa środek transportu.

routingPreference

enum (RoutingPreference)

Opcjonalnie. Określa sposób obliczania trasy. Serwer próbuje wyznaczyć trasę, korzystając z wybranego ustawienia routingu. Jeśli ustawienie routingu prowadzi do błędu lub długiego czasu oczekiwania, zwracany jest błąd. Możesz określić tę opcję tylko wtedy, gdy travelMode ma wartość DRIVE lub TWO_WHEELER. W przeciwnym razie żądanie się nie powiedzie.

polylineQuality

enum (PolylineQuality)

Opcjonalnie. Określa preferencję dotyczącą jakości linii łamanej.

polylineEncoding

enum (PolylineEncoding)

Opcjonalnie. Określa preferowane kodowanie linii łamanej.

departureTime

string (Timestamp format)

Opcjonalnie. Godzina odjazdu. Jeśli nie ustawisz tej wartości, domyślną wartością będzie czas przesłania żądania. UWAGA: w przeszłości można było określić departureTime tylko wtedy, gdy opcja RouteTravelMode ma wartość TRANSIT. Podróże transportem publicznym są dostępne dla podróży na okres do 7 dni wstecz lub do 100 dni do przodu.

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

arrivalTime

string (Timestamp format)

Opcjonalnie. Godzina przyjazdu. UWAGA: to ustawienie można ustawić tylko wtedy, gdy RouteTravelMode ma wartość TRANSIT. Możesz podać wartość departureTime lub arrivalTime, ale nie obie te wartości. Podróże transportem publicznym są dostępne dla podróży na okres do 7 dni wstecz lub do 100 dni do przodu.

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

computeAlternativeRoutes

boolean

Opcjonalnie. Określa, czy oprócz trasy mają być obliczane trasy alternatywne. W przypadku żądań z pośrednimi punktami na trasie nie są zwracane trasy alternatywne.

routeModifiers

object (RouteModifiers)

Opcjonalnie. Zbiór warunków, które muszą spełniać warunki wpływające na sposób obliczania tras.

languageCode

string

Opcjonalnie. Kod języka BCP-47, np. „en-US” lub „sr-Latn”. Więcej informacji znajdziesz w artykule Lokalny identyfikator Unicode. Listę obsługiwanych języków znajdziesz w sekcji Obsługa języków. Jeśli nie podasz tej wartości, język wyświetlania zostanie określony na podstawie lokalizacji żądania trasy.

regionCode

string

Opcjonalnie. Kod regionu, podany jako dwuznakowa wartość domeny najwyższego poziomu (ccTLD). Więcej informacji znajdziesz w artykule Domeny krajowe najwyższego poziomu.

units

enum (Units)

Opcjonalnie. Określa jednostki miary wyświetlane w polach wyświetlania. Te pola obejmują pole instruction w tabeli NavigationInstruction. Ta wartość nie ma wpływu na jednostki miary używane dla trasy, etapu, dystansu kroków ani czasu trwania. Jeśli nie podasz tej wartości, wyświetlane jednostki zostaną ustalone na podstawie lokalizacji pierwszego punktu początkowego.

optimizeWaypointOrder

boolean

Opcjonalnie. Jeśli zasada ma wartość Prawda, usługa próbuje zminimalizować ogólny koszt trasy przez zmianę kolejności określonych pośrednich punktów pośrednich. Żądanie nie powiedzie się, jeśli dowolny z pośrednich punktów pośrednich jest punktem na trasie via. Użyj pola ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index, aby znaleźć nową kolejność. Jeśli w nagłówku X-Goog-FieldMask nie zostanie wysłane żądanie ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index, nie uda się zrealizować żądania. Jeśli optimizeWaypointOrder ma wartość Fałsz, ComputeRoutesResponse.optimized_intermediate_waypoint_index jest pusty.

requestedReferenceRoutes[]

enum (ReferenceRoute)

Opcjonalnie. Określa, które trasy referencyjne mają być obliczane w ramach żądania oprócz trasy domyślnej. Trasa referencyjna to trasa, której cel wyznaczania trasy jest inny niż trasa domyślna. Na przykład wynikowe obliczanie trasy z uwzględnieniem FUEL_EFFICIENT uwzględnia różne parametry, które pozwalają wygenerować optymalną trasę z najniższym spalaniem.

extraComputations[]

enum (ExtraComputation)

Opcjonalnie. Lista dodatkowych obliczeń, które mogą zostać użyte do realizacji żądania. Uwaga: te dodatkowe obliczenia mogą zwrócić dodatkowe pola w odpowiedzi. Te dodatkowe pola muszą być też określone w masce pola, aby zostały zwrócone w odpowiedzi.

trafficModel

enum (TrafficModel)

Opcjonalnie. Określa założenia do obliczenia czasu w ruchu. To ustawienie wpływa na wartość zwracaną w polu czasu trwania w polach Route i RouteLeg, która zawiera przewidywany czas w korku na podstawie średnich historycznych. Funkcja TrafficModel jest dostępna tylko dla żądań, które ustawiono w polu RoutingPreference na TRAFFIC_AWARE_OPTIMAL, a w kolumnie RouteTravelMode na DRIVE. Jeśli żądanie ruchu jest wysyłane, a TrafficModel nie jest określony, przyjmuje domyślnie wartość BEST_GUESS.

transitPreferences

object (TransitPreferences)

Opcjonalnie. Określa preferencje, które mają wpływ na zwracaną trasę dla tras TRANSIT. UWAGA: transitPreferences możesz określić tylko wtedy, gdy RouteTravelMode ma wartość TRANSIT.

Treść odpowiedzi

v2.computeRoutes zwraca wiadomość z odpowiedzią.

W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:

Zapis JSON
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Pola
routes[]

object (Route)

Zawiera tablicę obliczonych tras (maksymalnie 3), gdy podasz compute_alternatives_routes, i tylko 1 trasę, jeśli jej nie określisz. Jeśli ta tablica zawiera wiele wpisów, pierwszy z nich jest najbardziej zalecaną trasą. Jeśli tablica jest pusta, oznacza to, że nie udało się znaleźć żadnej trasy.

fallbackInfo

object (FallbackInfo)

W niektórych przypadkach, gdy serwer nie może obliczyć wyników trasy przy użyciu wszystkich danych wejściowych, może w zastępstwie użyć innej metody obliczeń. Gdy używany jest tryb zastępczy, to pole zawiera szczegółowe informacje o odpowiedzi kreacji zastępczej. W przeciwnym razie to pole jest nieskonfigurowane.

geocodingResults

object (GeocodingResults)

Zawiera odpowiedź geokodowania dla punktów na trasie określonych jako adresy.

PolylineQuality

Zbiór wartości określających jakość linii łamanej.

Wartości w polu enum
POLYLINE_QUALITY_UNSPECIFIED Nie określono preferencji jakości linii łamanej. Domyślna wartość to OVERVIEW.
HIGH_QUALITY Określa wysokiej jakości linię łamaną, która składa się z większej liczby punktów niż OVERVIEW, ale kosztem zwiększenia rozmiaru odpowiedzi. Użyj tej wartości, gdy potrzebujesz większej precyzji.
OVERVIEW Określa linię łamaną przeglądu, która składa się z niewielkiej liczby punktów. Użyj tej wartości przy wyświetlaniu opisu trasy. Użycie tej opcji wiąże się z krótszym czasem oczekiwania na żądanie niż opcja HIGH_QUALITY.

PolylineEncoding

Określa preferowany typ linii łamanej do zwrócenia.

Wartości w polu enum
POLYLINE_ENCODING_UNSPECIFIED Nie określono preferencji typu linii łamanej. Domyślna wartość to ENCODED_POLYLINE.
ENCODED_POLYLINE Określa linię łamaną zakodowaną za pomocą algorytmu kodowania linii łamanej.
GEO_JSON_LINESTRING Określa linię łamaną w formacie linii GeoJSON

ReferenceRoute

Obsługiwana trasa odniesienia w ComputeRoutesRequest.

Wartości w polu enum
REFERENCE_ROUTE_UNSPECIFIED Nieużywany. Żądania zawierające tę wartość kończą się niepowodzeniem.
FUEL_EFFICIENT Trasa z najniższym spalaniem. Trasy oznaczone tą wartością są zoptymalizowane pod kątem takich parametrów jak zużycie paliwa.

ExtraComputation

Dodatkowe obliczenia do wykonania podczas realizacji żądania.

Wartości w polu enum
EXTRA_COMPUTATION_UNSPECIFIED Nieużywany. Żądania zawierające tę wartość będą kończyć się niepowodzeniem.
TOLLS Informacje o opłatach na trasach.
FUEL_CONSUMPTION Szacunkowe zużycie paliwa na trasach.
TRAFFIC_ON_POLYLINE linie łamane na trasach z odpowiednim natężeniem ruchu;
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions przedstawiony jako sformatowany ciąg tekstowy HTML. Treść jest przeznaczona tylko do wyświetlania. Nie analizuj ich automatycznie.

Trasa

Obejmuje trasę, która składa się z szeregu połączonych fragmentów drogi łączących się z punktami na trasie (początkowy, końcowy i pośredni).

Zapis JSON
{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ],
  "localizedValues": {
    object (RouteLocalizedValues)
  },
  "routeToken": string
}
Pola
routeLabels[]

enum (RouteLabel)

Etykiety Route umożliwiające identyfikację konkretnych właściwości trasy, które można porównać z innymi.

legs[]

object (RouteLeg)

Zespół ścieżek (odcinków ścieżek między punktami na trasie), które tworzą trasę. Każdy etap odpowiada podróży między 2 elementami Waypoints spoza via. Na przykład trasa bez pośrednich punktów na trasie ma tylko jeden etap. Trasa obejmująca jeden pośredni punkt na trasie inny niż via ma dwa etapy. Trasa obejmująca jeden pośredni punkt na trasie via ma jeden etap. Kolejność punktów jest zgodna z kolejnością punktów pośrednich od origin do intermediates do destination.

distanceMeters

integer

Długość trasy w metrach.

duration

string (Duration format)

Długość czasu potrzebnego na pokonanie trasy. Jeśli ustawisz routingPreference na TRAFFIC_UNAWARE, ta wartość jest taka sama jak staticDuration. Jeśli ustawisz routingPreference na TRAFFIC_AWARE lub TRAFFIC_AWARE_OPTIMAL, ta wartość jest obliczana z uwzględnieniem warunków ruchu.

Czas trwania w sekundach z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

staticDuration

string (Duration format)

Długość przejazdu wzdłuż trasy bez uwzględniania warunków drogowych.

Czas trwania w sekundach z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

polyline

object (Polyline)

Całkowita linia łamana trasy. Ta linia łamana jest połączona linią łamaną wszystkich elementów legs.

description

string

Opis trasy.

warnings[]

string

Tablica ostrzeżeń do wyświetlenia przy wyświetlaniu trasy.

viewport

object (Viewport)

Ramka ograniczająca widoczny obszar linii łamanej.

travelAdvisory

object (RouteTravelAdvisory)

dodatkowe informacje o trasie,

optimizedIntermediateWaypointIndex[]

integer

Jeśli ustawisz optimizeWaypointOrder na wartość true, to pole będzie zawierać zoptymalizowaną kolejność pośrednich punktów pośrednich. W przeciwnym razie to pole jest puste. Jeśli na przykład podasz dane punktu początkowego: LA; pośrednie punkty na drodze: Dallas, Bangor, Phoenix; cel podróży: Nowy Jork; a zoptymalizowana pośrednia kolejność punktów pośrednich to Phoenix, Dallas, Bangor, to pole zawiera wartości [2, 0, 1]. Indeks zaczyna się od 0 w przypadku pierwszego pośredniego punktu pośredniego podanego w danych wejściowych.

localizedValues

object (RouteLocalizedValues)

Reprezentacje tekstowe właściwości obiektu Route.

routeToken

string

Bezpieczny w internecie token trasy zakodowany w base64, który można przekazać do pakietu SDK Navigation SDK, który umożliwia zrekonstruowanie trasy podczas nawigacji, a w przypadku zmiany trasy musi uwzględniać pierwotny cel utworzony podczas tworzenia trasy przez wywołanie metody v2.computeRoutes. Klienci powinni traktować ten token jako nieprzezroczysty obiekt blob. Nie służy do odczytywania tekstu ani wprowadzania mutacji. UWAGA: Route.route_token jest dostępne tylko dla żądań, dla których ComputeRoutesRequest.routing_preference ma wartość TRAFFIC_AWARE lub TRAFFIC_AWARE_OPTIMAL. Funkcja Route.route_token nie jest obsługiwana w przypadku żądań z punktami pośrednimi Via.

RouteLabel

Etykiety Route umożliwiające identyfikację konkretnych właściwości trasy, które można porównać z innymi.

Wartości w polu enum
ROUTE_LABEL_UNSPECIFIED Domyślny – nieużywany.
DEFAULT_ROUTE Przy obliczaniu trasy została zwrócona domyślna „najlepsza” trasa.
DEFAULT_ROUTE_ALTERNATE Alternatywa dla domyślnej „najlepszej” trasy. Takie trasy będą zwracane po określeniu computeAlternativeRoutes.
FUEL_EFFICIENT Trasa z najniższym spalaniem. Trasy oznaczone tą wartością są zoptymalizowane pod kątem parametrów Eko, takich jak zużycie paliwa.

RouteLeg

Zawiera segment między punktami na trasie spoza via.

Zapis JSON
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegLocalizedValues)
  },
  "stepsOverview": {
    object (StepsOverview)
  }
}
Pola
distanceMeters

integer

Odległość pokonywania odcinka trasy w metrach.

duration

string (Duration format)

Długość czasu potrzebnego na poruszanie się nogą. Jeśli route_preference ma wartość TRAFFIC_UNAWARE, ta wartość jest taka sama jak staticDuration. Jeśli route_preference to TRAFFIC_AWARE lub TRAFFIC_AWARE_OPTIMAL, ta wartość jest obliczana z uwzględnieniem warunków ruchu.

Czas trwania w sekundach z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

staticDuration

string (Duration format)

Długość przejazdu przez odcinek, obliczona bez uwzględniania warunków drogowych.

Czas trwania w sekundach z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

polyline

object (Polyline)

Ogólna linia łamana tej odnogi obejmująca linię łamaną każdego elementu step.

startLocation

object (Location)

Lokalizacja początkowa tego etapu. Ta lokalizacja może się różnić od podanej lokalizacji origin. Jeśli na przykład podany origin nie znajduje się w pobliżu drogi, jest to punkt na drodze.

endLocation

object (Location)

Lokalizacja końcowa tego etapu. Ta lokalizacja może się różnić od podanej lokalizacji destination. Jeśli na przykład podany destination nie znajduje się w pobliżu drogi, jest to punkt na drodze.

steps[]

object (RouteLegStep)

Tablica kroków oznaczających segmenty w tym odcinku. Każdy krok odpowiada jednej instrukcji nawigacji.

travelAdvisory

object (RouteLegTravelAdvisory)

Zawiera dodatkowe informacje, o których należy poinformować użytkownika, np. możliwe ograniczenia strefy ruchu na danym etapie trasy.

localizedValues

object (RouteLegLocalizedValues)

Reprezentacje tekstowe właściwości obiektu RouteLeg.

stepsOverview

object (StepsOverview)

Omówienie czynności, które musisz wykonać w tym artykule (RouteLeg). Pole jest wypełniane tylko w przypadku tras TRANSIT.

Linia łamana

Obejmuje zakodowaną linię łamaną.

Zapis JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
Pola
Pole sumy polyline_type. Obejmuje typ linii łamanej. Domyślnie jest to zakodowana_łamana. polyline_type może być tylko jedną z tych wartości:
encodedPolyline

string

Kodowanie ciągu łamanego linii łamanej za pomocą algorytmu kodowania linii łamanej

geoJsonLinestring

object (Struct format)

Wskazuje linię łamaną w formacie linii GeoJSON.

RouteLegStep

Zawiera segment elementu RouteLeg. Krok odpowiada jednej instrukcji nawigacji. Etapy trasy składają się z schodów.

Zapis JSON
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegStepLocalizedValues)
  },
  "transitDetails": {
    object (RouteLegStepTransitDetails)
  },
  "travelMode": enum (RouteTravelMode)
}
Pola
distanceMeters

integer

Odległość pokonywania tego kroku wyrażona w metrach. W pewnych okolicznościach to pole może nie mieć wartości.

staticDuration

string (Duration format)

Czas podróży na tym etapie bez uwzględniania warunków drogowych. W pewnych okolicznościach to pole może nie mieć wartości.

Czas trwania w sekundach z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

polyline

object (Polyline)

Linia łamana powiązana z tym krokiem.

startLocation

object (Location)

Lokalizacja początkowa tego kroku.

endLocation

object (Location)

Lokalizacja końcowa tego kroku.

navigationInstruction

object (NavigationInstruction)

Instrukcje nawigacji.

travelAdvisory

object (RouteLegStepTravelAdvisory)

Zawiera dodatkowe informacje, o których należy poinformować użytkownika, np. możliwe ograniczenia strefy ruchu na etapie.

localizedValues

object (RouteLegStepLocalizedValues)

Reprezentacje tekstowe właściwości obiektu RouteLegStep.

transitDetails

object (RouteLegStepTransitDetails)

Szczegóły dotyczące tego kroku, jeśli tryb podróży to TRANSIT.

travelMode

enum (RouteTravelMode)

Środek transportu użyty w tym kroku.

Ruch

Zestaw wartości określających działanie nawigacyjne, które należy wykonać na bieżącym kroku (np. skręć w lewo, scal lub prosto).

Wartości w polu enum
MANEUVER_UNSPECIFIED Nieużywany.
TURN_SLIGHT_LEFT Obróć się lekko w lewo.
TURN_SHARP_LEFT Skręć ostro w lewo.
UTURN_LEFT Zawróć w lewo.
TURN_LEFT Skręć w lewo.
TURN_SLIGHT_RIGHT Obróć się lekko w prawo.
TURN_SHARP_RIGHT Skręć ostro w prawo.
UTURN_RIGHT Zawróć w prawo.
TURN_RIGHT Skręć w prawo.
STRAIGHT Idź prosto.
RAMP_LEFT Skręć w lewą rampę.
RAMP_RIGHT Skręć w prawą rampę.
MERGE Scal w ruch.
FORK_LEFT Skręć w lewy rozwidlenie.
FORK_RIGHT Weź właściwy rozwidlenie.
FERRY Wybierzcie się promem.
FERRY_TRAIN Wsiądź do pociągu prowadzącego na prom.
ROUNDABOUT_LEFT Skręć w lewo na rondzie.
ROUNDABOUT_RIGHT Skręć w prawo na rondzie.
DEPART Początkowy manewr.
NAME_CHANGE Służy do wskazywania zmiany nazwy ulicy.

RouteLegStepTravelAdvisory

Zawiera dodatkowe informacje, o których należy poinformować użytkownika, np. możliwe ograniczenia strefy ruchu na etapie.

Zapis JSON
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Pola
speedReadingIntervals[]

object (SpeedReadingInterval)

UWAGA: to pole nie jest obecnie wypełnione.

RouteLegStepLocalizedValues

Reprezentacje tekstowe określonych właściwości.

Zapis JSON
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Pola
distance

object (LocalizedText)

Długość podróży przedstawiona w formie tekstowej.

staticDuration

object (LocalizedText)

Czas trwania bez uwzględnienia warunków na drodze, podany w formie tekstowej.

RouteLegStepTransitDetails

Dodatkowe informacje o RouteLegStep związane z trasami TRANSIT.

Zapis JSON
{
  "stopDetails": {
    object (TransitStopDetails)
  },
  "localizedValues": {
    object (TransitDetailsLocalizedValues)
  },
  "headsign": string,
  "headway": string,
  "transitLine": {
    object (TransitLine)
  },
  "stopCount": integer,
  "tripShortText": string
}
Pola
stopDetails

object (TransitStopDetails)

Informacje o przystankach na czas przyjazdu i odjazdu na danym etapie.

localizedValues

object (TransitDetailsLocalizedValues)

Reprezentacje tekstowe właściwości obiektu RouteLegStepTransitDetails.

headsign

string

Określa kierunek jazdy na tej linii zgodnie z oznaczeniem na pojeździe lub na przystanku odjazdu. Kierunek to często stacja docelowa.

headway

string (Duration format)

Określa oczekiwany czas jako czas między odjazdem z tego samego przystanku o danej porze. Jeśli na przykład ustawisz wartość 600 sekund na trasie przejazdu, w razie spóźnienia na autobus musisz czekać 10 minut.

Czas trwania w sekundach z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

transitLine

object (TransitLine)

Informacje o linii transportu publicznego użytej w tym kroku.

stopCount

integer

Liczba przesiadek od odjazdu do przystanku przyjazdu. Liczba ta obejmuje przystanek przylotów, ale nie uwzględnia przystanku odlotu. Jeśli na przykład trasa rozpoczyna się ze przystanku A, mija przystanki B i C i dociera do przystanku D, stopCount zwróci wartość 3.

tripShortText

string

Tekst widoczny w rozkładach jazdy i na tablicach informacyjnych dla pasażerów, którzy chcą skorzystać z transportu publicznego. Tekst powinien jednoznacznie identyfikować podróż w ramach dnia usługi. Na przykład „538” to tripShortText pociągu Amtrak odjeżdżającego z San Jose, CA o 15:10 w dni powszednie do Sacramento, CA.

TransitStopDetails

Szczegółowe informacje o przystankach: RouteLegStep.

Zapis JSON
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
Pola
arrivalStop

object (TransitStop)

Informacje o przystanku na danym etapie.

arrivalTime

string (Timestamp format)

Szacowany czas dotarcia na miejsce.

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

departureStop

object (TransitStop)

Informacje o przystanku odjazdu dla tego kroku.

departureTime

string (Timestamp format)

Szacowany czas odjazdu danego kroku.

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

TransitStop

Informacje o przystanku.

Zapis JSON
{
  "name": string,
  "location": {
    object (Location)
  }
}
Pola
name

string

Nazwa przystanku.

location

object (Location)

Lokalizacja przystanku wyrażona we współrzędnych szerokości i długości geograficznej.

TransitDetailsLocalizedValues

Zlokalizowane opisy wartości dla parametru RouteTransitDetails.

Zapis JSON
{
  "arrivalTime": {
    object (LocalizedTime)
  },
  "departureTime": {
    object (LocalizedTime)
  }
}
Pola
arrivalTime

object (LocalizedTime)

Czas w sformatowanej tekstowej reprezentacji czasu z odpowiednią strefą czasową.

departureTime

object (LocalizedTime)

Czas w sformatowanej tekstowej reprezentacji czasu z odpowiednią strefą czasową.

LocalizedTime

Zlokalizowany opis czasu.

Zapis JSON
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Pola
time

object (LocalizedText)

Czas podany jako ciąg znaków w danej strefie czasowej.

timeZone

string

Zawiera strefę czasową. Ta wartość to nazwa strefy czasowej zdefiniowana w bazie danych stref czasowych IANA, np. „America/New_York”.

TransitLine

Zawiera informacje o linii transportu publicznego użytej w tym kroku.

Zapis JSON
{
  "agencies": [
    {
      object (TransitAgency)
    }
  ],
  "name": string,
  "uri": string,
  "color": string,
  "iconUri": string,
  "nameShort": string,
  "textColor": string,
  "vehicle": {
    object (TransitVehicle)
  }
}
Pola
agencies[]

object (TransitAgency)

Przewoźnik (lub przewoźnika), który obsługuje tę linię transportu publicznego.

name

string

Pełna nazwa tej linii transportu publicznego, na przykład „ul. Lokalna 8”.

uri

string

identyfikator URI dla tej linii transportu publicznego podany przez przewoźnika.

color

string

Kolor często używany na szyldach i znakach tej linii. Jest przedstawiona w systemie szesnastkowym.

iconUri

string

Identyfikator URI ikony powiązanej z tym wierszem.

nameShort

string

Krótka nazwa tej linii transportu publicznego. Zwykle jest to numer wiersza, np. „M7” lub „355”.

textColor

string

Kolor często używany w tekście na szyldach i znakach tej linii. Jest przedstawiona w systemie szesnastkowym.

vehicle

object (TransitVehicle)

Typ pojazdu poruszającego się na tej linii transportu publicznego.

TransitAgency

Przewoźnik, który obsługuje linię transportu publicznego.

Zapis JSON
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
Pola
name

string

Nazwa tego przewoźnika.

phoneNumber

string

Numer telefonu przewoźnika w zależności od regionu.

uri

string

Identyfikator URI przewoźnika.

TransitVehicle

Informacje o pojeździe używanym na trasach transportu publicznego.

Zapis JSON
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
Pola
name

object (LocalizedText)

Nazwa pojazdu pisana wielkimi literami.

type

enum (TransitVehicleType)

Typ używanego pojazdu.

iconUri

string

Identyfikator URI ikony powiązanej z tym typem pojazdu.

localIconUri

string

Identyfikator URI ikony powiązanej z tym typem pojazdu na podstawie lokalnego znaku transportowego.

TransitVehicleType

Rodzaj pojazdów na trasach transportu publicznego.

Wartości w polu enum
TRANSIT_VEHICLE_TYPE_UNSPECIFIED Nieużywane.
BUS Autobus.
CABLE_CAR Pojazd na kablu, zazwyczaj znajdujący się na ziemi. Kolejki linowe mogą należeć do typu GONDOLA_LIFT.
COMMUTER_TRAIN Kolej podmiejska.
FERRY Promem
FUNICULAR Pojazd ciągnięty linią po stromym wzniesieniu. Kolejka linowa zwykle składa się z 2 samochodów, z których każdy stanowi przeciwwagę dla drugiego.
GONDOLA_LIFT Kolejka linowa.
HEAVY_RAIL Ciężka kolej.
HIGH_SPEED_TRAIN Szybki pociąg.
INTERCITY_BUS Autobus dalekobieżny.
LONG_DISTANCE_TRAIN Pociąg dalekobieżny.
METRO_RAIL Transport kolejowy.
MONORAIL Kolej jednoszynowa.
OTHER Pozostałe pojazdy.
RAIL Kolej.
SHARE_TAXI Taksówka zbiorowa to typ autobusu umożliwiający zaparkowanie i podwiezienie pasażerów w dowolnym miejscu na trasie.
SUBWAY Podziemna kolejka.
TRAM Kolej linowa naziemna.
TROLLEYBUS Trolejbus.

RouteLegTravelAdvisory

Zawiera dodatkowe informacje, o których należy poinformować użytkownika na danym etapie, np. możliwe ograniczenia w strefach ruchu.

Zapis JSON
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Pola
tollInfo

object (TollInfo)

Zawiera informacje o opłatach na poszczególnych obszarach RouteLeg. To pole jest wypełniane tylko wtedy, gdy spodziewamy się opłat za przejazd na: RouteLeg. Jeśli to pole jest ustawione, ale pole podrzędne indexPrice nie jest wypełnione, przewidujemy, że droga zawiera opłaty za przejazd, ale nie znamy szacunkowej ceny. Jeśli to pole nie istnieje, RouteLeg nie ma opłat.

speedReadingIntervals[]

object (SpeedReadingInterval)

Interwały odczytu określające gęstość ruchu. Ma zastosowanie w przypadku ustawień routingu TRAFFIC_AWARE i TRAFFIC_AWARE_OPTIMAL. Przedziały obejmują całą linię łamaną elementu RouteLeg bez nakładania się. Punkt początkowy określonego interwału jest taki sam jak punkt końcowy poprzedniego interwału.

Przykład:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).

RouteLegLocalizedValues

Reprezentacje tekstowe określonych właściwości.

Zapis JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Pola
distance

object (LocalizedText)

Długość podróży przedstawiona w formie tekstowej.

duration

object (LocalizedText)

Czas trwania wyrażony w formie tekstowej z uwzględnieniem warunków na drodze. Uwaga: jeśli nie wysyłasz żądań informacji o ruchu, ta wartość będzie taka sama jak wartość staticDuration.

staticDuration

object (LocalizedText)

Czas trwania bez uwzględnienia warunków na drodze, podany w formie tekstowej.

StepsOverview

Zawiera ogólne informacje o liście elementów RouteLegStep.

Zapis JSON
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Pola
multiModalSegments[]

object (MultiModalSegment)

Podsumowanie informacji o różnych multimodalnych segmentach elementu RouteLeg.steps. To pole nie jest wypełniane, jeśli RouteLeg nie zawiera żadnych segmentów multimodalnych w krokach.

MultiModalSegment

Zawiera podsumowanie informacji o różnych multimodalnych segmentach interfejsu RouteLeg.steps. Segment wielomodalny to co najmniej 1 przylegający do siebie segment RouteLegStep, który ma taki sam parametr RouteTravelMode. To pole nie jest wypełniane, jeśli RouteLeg nie zawiera żadnych segmentów multimodalnych w krokach.

Zapis JSON
{
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelMode": enum (RouteTravelMode),
  "stepStartIndex": integer,
  "stepEndIndex": integer
}
Pola
navigationInstruction

object (NavigationInstruction)

Instrukcja nawigacji dla segmentu multimodalnego.

travelMode

enum (RouteTravelMode)

Środek transportu segmentu multimodalnego.

stepStartIndex

integer

Odpowiedni indeks RouteLegStep, który jest początkiem segmentu multimodalnego.

stepEndIndex

integer

Odpowiedni indeks RouteLegStep, który kończy się segmentem multimodalnym.

Widoczny obszar

Widoczny obszar o długości i szerokości geograficznej wyrażony jako 2 punkty po przekątnej naprzeciwko low i high. Widoczny obszar jest traktowany jako obszar zamknięty, czyli obejmuje swoją granicę. Granice szerokości geograficznej muszą się mieścić w przedziale od -90 do 90 stopni włącznie, a długość geograficzna – z zakresu od -180 do 180 stopni włącznie. Różne przypadki to m.in.:

  • Jeśli low = high, widoczny obszar składa się z tego pojedynczego punktu.

  • Jeśli low.longitude > high.longitude, zakres długości geograficznej jest odwrócony (widoczny obszar przecina linię długości 180 stopni).

  • Jeśli low.longitude = -180 stopni, high.longitude = 180 stopni, widoczny obszar obejmuje wszystkie długości geograficzne.

  • Jeśli low.longitude = 180 stopni, high.longitude = -180 stopni, zakres długości geograficznej jest pusty.

  • Jeśli low.latitude > high.latitude, zakres szerokości geograficznej jest pusty.

Musisz wypełnić zarówno pole low, jak i high, a pole reprezentowane nie może być puste (zgodnie z definicjami powyżej). Jeśli widoczny obszar jest pusty, wystąpi błąd.

Na przykład ten widoczny obszar w pełni obejmuje Nowy Jork:

{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }

Zapis JSON
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Pola
low

object (LatLng)

To pole jest wymagane. Najniższa pozycja widocznego obszaru.

high

object (LatLng)

To pole jest wymagane. Najwyższy punkt widocznego obszaru.

RouteLocalizedValues

Reprezentacje tekstowe określonych właściwości.

Zapis JSON
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
Pola
distance

object (LocalizedText)

Długość podróży przedstawiona w formie tekstowej.

duration

object (LocalizedText)

Czas trwania wyrażony w formie tekstowej z uwzględnieniem warunków na drodze. Uwaga: jeśli nie prosiłeś o informacje o natężeniu ruchu, ta wartość będzie taka sama jak wartość staticDuration.

staticDuration

object (LocalizedText)

Czas trwania bez uwzględnienia warunków na drodze, podany w formie tekstowej.

transitFare

object (LocalizedText)

Opłata za transport w formie tekstowej.

GeocodingResults

Zawiera GeocodedWaypoints dla punktów początkowych, docelowych i pośrednich. Pole wypełnione tylko w przypadku punktów na trasie.

Zapis JSON
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Pola
origin

object (GeocodedWaypoint)

Geokodowany punkt na trasie początkowy.

destination

object (GeocodedWaypoint)

Geokodowany punkt na trasie docelowy.

intermediates[]

object (GeocodedWaypoint)

Lista pośrednich geokodowanych punktów pośrednich, z których każdy zawiera pole indeksu odpowiadające zerowej pozycji punktu pośredniego w kolejności, w jakiej zostały one określone w żądaniu.

GeocodedWaypoint

Szczegółowe informacje o lokalizacjach używanych jako punkty na trasie. Pole wypełnione tylko w przypadku punktów na trasie. Zawiera szczegółowe informacje dotyczące wyników geokodowania na potrzeby określania, na co adres został zakodowany geokod.

Zapis JSON
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Pola
geocoderStatus

object (Status)

Wskazuje kod stanu wynikający z operacji geokodowania.

type[]

string

Typy wyniku w postaci 0 lub większej liczby tagów typu. Obsługiwane typy: typy adresów i typy komponentów adresu.

partialMatch

boolean

Wskazuje, że geokoder nie zwrócił dokładnego dopasowania do pierwotnego żądania, chociaż udało mu się dopasować część żądanego adresu. Warto sprawdzić pierwotne żądanie pod kątem błędów z błędami lub niekompletnego adresu.

placeId

string

Identyfikator miejsca powiązany z tym wynikiem.

intermediateWaypointRequestIndex

integer

Indeks odpowiedniego pośredniego punktu pośredniego w żądaniu. Pole wypełnione tylko wtedy, gdy odpowiedni punkt na trasie jest pośrednim punktem na trasie.