Method: computeRoutes

Zwraca trasę podstawową wraz z opcjonalnymi trasami alternatywnymi z uwzględnieniem zestawu 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ć za pomocą parametru 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 pola wszystkich dostępnych pól (do kontroli 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

Odradzamy stosowanie 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, pomaga naszemu serwerowi skrócić cykle obliczeniowe, a tym samym zwrócić Ci wynik z mniejszym czasem oczekiwania.
  • Wybór tylko tych pól, których potrzebujesz w zadaniu produkcyjnym, zapewnia stabilny czas oczekiwania. W przyszłości możemy dodać więcej pól odpowiedzi i te nowe pola mogą wymagać więcej czasu na obliczenia. Jeśli wybierzesz wszystkie pola lub wszystkie pola na najwyższym poziomie, może nastąpić spadek wydajności, ponieważ każde nowe pole, które dodajemy, będzie automatycznie uwzględniane w odpowiedzi.
  • Wybranie tylko tych pól, które są Ci potrzebne, spowoduje zmniejszenie rozmiaru 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 na trasie 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 użyć wybranych preferencji routingu do obliczenia trasy. Jeśli ustawienie routingu skutkuje błędem lub bardzo długim czasem 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 nie powiedzie się.

polylineQuality

enum (PolylineQuality)

Opcjonalnie. Określa preferencje dotyczące 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ślnie zostanie użyta godzina przesłania żądania. UWAGA: departureTime w przeszłości możesz określić tylko wtedy, gdy RouteTravelMode ma wartość TRANSIT. Podróże transportem publicznym mogą obejmować do 7 dni wstecz lub do 100 dni do przodu.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy 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: tę opcję można ustawić tylko wtedy, gdy zasada RouteTravelMode ma wartość TRANSIT. Możesz podać albo departureTime, albo arrivalTime, ale nie obie te wartości. Podróże transportem publicznym mogą obejmować do 7 dni wstecz lub do 100 dni do przodu.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy 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 pośrednimi nie są zwracane trasy alternatywne.

routeModifiers

object (RouteModifiers)

Opcjonalnie. Zestaw warunków, które mają wpływ 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 Identyfikator lokalny 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 będzie określany na podstawie lokalizacji żądania trasy.

regionCode

string

Opcjonalnie. Kod regionu, określony jako dwuznakowa wartość domeny ccTLD („domena najwyższego poziomu”). 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 NavigationInstruction. Nie ma wpływu na jednostki miary używane dla trasy, kroku, odległości kroków ani czasu trwania. Jeśli nie podasz tej wartości, wyświetlane jednostki będą ustalane 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 pośrednim via. Użyj pola ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index, by znaleźć nową kolejność. Jeśli żądanie ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index nie zostanie wysłane w nagłówku X-Goog-FieldMask, nie powiedzie się. 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ć obliczone 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 przy obliczaniu trasy referencyjnej FUEL_EFFICIENT uwzględnia się 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 pól, aby zostały zwrócone w odpowiedzi.

trafficModel

enum (TrafficModel)

Opcjonalnie. Określa założenia do wykorzystania przy obliczaniu czasu natężenia ruchu. To ustawienie wpływa na wartość zwracaną w polu czasu trwania w parametrach Route i RouteLeg, które zawierają przewidywany czas w ruchu określony na podstawie średnich historycznych. Funkcja TrafficModel jest dostępna tylko w przypadku żądań, które ustawiono RoutingPreference na TRAFFIC_AWARE_OPTIMAL i 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 TRANSIT tras. UWAGA: transitPreferences możesz określić tylko wtedy, gdy RouteTravelMode ma wartość TRANSIT.

Treść odpowiedzi

v2.computeRoutes wyświetla komunikat 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, pierwsza 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 jest w stanie obliczyć trasy na podstawie wszystkich ustawień wejściowych, może skorzystać z innego sposobu obliczania. W przypadku użycia trybu awaryjnego to pole zawiera szczegółowe informacje o odpowiedzi kreacji zastępczej. W przeciwnym razie to pole jest nieskonfigurowane.

geocodingResults

object (GeocodingResults)

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

PolylineQuality

Zestaw wartości określających jakość linii łamanej.

Wartości w polu enum
POLYLINE_QUALITY_UNSPECIFIED Nie określono preferencji dotyczących jakości linii łamanych. 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 większego rozmiaru odpowiedzi. Użyj tej wartości, gdy potrzebujesz większej precyzji.
OVERVIEW Określa ogólną linię łamaną, która składa się z małej 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 w porównaniu do opcji HIGH_QUALITY.

PolylineEncoding

Określa preferowany typ linii łamanej, która ma zostać zwrócona.

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 wiersza łamanego.
GEO_JSON_LINESTRING Wskazuje linię łamaną w formacie linii GeoJSON

Jednostki

Zestaw wartości określających jednostkę miary używaną na wyświetlaczu.

Wartości w polu enum
UNITS_UNSPECIFIED Nie określono jednostek miary. Domyślnie jest to jednostka miary określona na podstawie żądania.
METRIC Jednostki miary.
IMPERIAL Imperialne (angielskie) jednostki miary.

ReferenceRoute

Obsługiwana trasa referencyjna w ComputeRoutesRequest.

Wartości w polu enum
REFERENCE_ROUTE_UNSPECIFIED Niewykorzystywany. Żą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 parametrów takich jak zużycie paliwa.

ExtraComputation

Dodatkowe obliczenia do wykonania podczas wykonywania żądania.

Wartości w polu enum
EXTRA_COMPUTATION_UNSPECIFIED Niewykorzystywany. Żą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 danej trasie.
TRAFFIC_ON_POLYLINE linie łamane związane z natężeniem ruchu na trasach.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions – przedstawiony jako sformatowany ciąg tekstowy HTML. Treści należy czytać w niezmienionej postaci. Mają one charakter wyłącznie poglądowy. Nie analizuj go automatycznie.

Trasa

Zawiera trasę, która składa się z szeregu połączonych fragmentów drogi, które łączą początek, koniec i pośrednie punkty na trasie.

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, które służą do identyfikowania konkretnych właściwości trasy do porównania z innymi.

legs[]

object (RouteLeg)

Zbiór odcinków (odcinków ścieżki między punktami na trasie) tworzących trasę. Każdy etap odpowiada podróży między dwoma elementami spoza organizacji via (Waypoints). Na przykład trasa bez pośrednich punktów pośrednich ma tylko jeden etap. Trasa obejmująca jeden pośredni punkt pośredni inny niż via ma dwa etapy. Trasa zawierająca jeden pośredni punkt pośredni via ma jeden etap. Kolejność etapó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)

Czas potrzebny na nawigację po trasie. Jeśli ustawisz routingPreference na TRAFFIC_UNAWARE, ta wartość będzie taka sama jak staticDuration. Jeśli ustawisz routingPreference na TRAFFIC_AWARE lub TRAFFIC_AWARE_OPTIMAL, wartość ta 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ść podróży na trasie 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 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ść prawda, to pole będzie zawierać zoptymalizowaną kolejność pośrednich punktów pośrednich. W przeciwnym razie pole jest puste. Jeśli na przykład wpiszesz dane punktu początkowego: LA; pośrednie punkty na trasie: Dallas, Bangor, Phoenix; cel podróży: Nowy Jork, a zoptymalizowany pośredni punkt na trasie 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)

Tekstowa reprezentacja właściwości obiektu Route.

routeToken

string

Bezpieczny w internecie token trasy zakodowany w standardzie base64, który można przekazać do pakietu SDK nawigacji, który umożliwia zrekonstruowanie trasy podczas nawigacji, a w przypadku zmiany trasy – zachowanie pierwotnej intencji podczas tworzenia trasy przez wywołanie funkcji v2.computeRoutes. Klienci powinni traktować ten token jako nieprzezroczysty obiekt blob. Nie służy do czytania ani mutacji. UWAGA: funkcja Route.route_token jest dostępna tylko w przypadku żądań z ustawieniem ComputeRoutesRequest.routing_preference na TRAFFIC_AWARE lub TRAFFIC_AWARE_OPTIMAL. Funkcja Route.route_token nie jest obsługiwana w przypadku żądań zawierających punkty na trasie.

RouteLabel

Etykiety Route, które służą do identyfikowania konkretnych właściwości trasy do porównania z innymi.

Wartości w polu enum
ROUTE_LABEL_UNSPECIFIED Domyślny – nieużywany.
DEFAULT_ROUTE Domyślna „najlepsza” trasa zwrócona na potrzeby jej obliczania.
DEFAULT_ROUTE_ALTERNATE Alternatywa dla domyślnej „najlepszej” trasy. Po określeniu computeAlternativeRoutes będą zwracane trasy takie jak ta.
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 innymi niż 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

Długość odcinka trasy w metrach.

duration

string (Duration format)

Długość czasu potrzebnego na poruszanie się przez 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 drogowych.

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 dany etap 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 tego odcinka obejmująca linię łamaną wszystkich linii step.

startLocation

object (Location)

Lokalizacja początkowa tego etapu. Ta lokalizacja może być inna niż podana w polu 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 tej części. Ta lokalizacja może być inna niż podana w polu 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 etapie. 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)

Tekstowa reprezentacja właściwości obiektu RouteLeg.

stepsOverview

object (StepsOverview)

Przegląd informacji o krokach, które trzeba wykonać w: 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. Wartość domyślna to encoded_polyline. polyline_type może mieć tylko jedną z tych wartości:
encodedPolyline

string

kodowanie ciągu łamanego za pomocą algorytmu kodowania wiersza łamanego,

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ść przebyta w tym kroku wyrażona w metrach. W niektórych przypadkach to pole może nie mieć wartości.

staticDuration

string (Duration format)

Długość podróży na tym etapie bez uwzględniania warunków drogowych. W niektórych przypadkach 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 stref ruchu na etapie.

localizedValues

object (RouteLegStepLocalizedValues)

Tekstowa reprezentacja właściwości obiektu RouteLegStep.

transitDetails

object (RouteLegStepTransitDetails)

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

travelMode

enum (RouteTravelMode)

Tryb podróży użyty w tym kroku.

Ruch

Zestaw wartości określających działanie nawigacyjne, które ma zostać wykonane w bieżącym kroku (np. skręt w lewo, scalanie lub proste).

Wartości w polu enum
MANEUVER_UNSPECIFIED Niewykorzystywany.
TURN_SLIGHT_LEFT Obróć się lekko w lewo.
TURN_SHARP_LEFT Ostro w lewo.
UTURN_LEFT Zawróć w lewo.
TURN_LEFT Obróć się w lewo.
TURN_SLIGHT_RIGHT Obróć się lekko w prawo.
TURN_SHARP_RIGHT Ostro w prawo.
UTURN_RIGHT Zawróć w prawo.
TURN_RIGHT Obróć się w prawo.
STRAIGHT Idź prosto.
RAMP_LEFT Skorzystaj z lewej pochylni.
RAMP_RIGHT Skorzystaj z właściwego zjazdu.
MERGE Scal w ruch.
FORK_LEFT Otwórz lewy rozwidlenie.
FORK_RIGHT Trzymaj właściwy rozwidlenie.
FERRY Wybierz prom.
FERRY_TRAIN Wybierz pociąg prowadzący do promu.
ROUNDABOUT_LEFT Na rondzie skręć w lewo.
ROUNDABOUT_RIGHT Na rondzie skręć w prawo.
DEPART Manewr wstępny.
NAME_CHANGE Służy do informowania o zmianie nazwy ulicy.

RouteLegStepTravelAdvisory

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

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

object (SpeedReadingInterval)

UWAGA: to pole nie jest obecnie wypełnione.

RouteLegStepLocalizedValues

Tekstowa reprezentacja określonych właściwości.

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

object (LocalizedText)

Odległość podróży przedstawiona w formie tekstowej.

staticDuration

object (LocalizedText)

Czas trwania bez uwzględniania warunków drogowych, przedstawiony w formie tekstowej.

RouteLegStepTransitDetails

Dodatkowe informacje na temat RouteLegStep związane z TRANSIT trasami.

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)

Tekstowa reprezentacja właściwości obiektu RouteLegStepTransitDetails.

headsign

string

Określa kierunek, w jakim należy podróżować na tej linii, zgodnie z oznaczeniem na pojeździe lub na przystanku odjazdu. Kierunkiem podróży jest często stacja metra.

headway

string (Duration format)

Określa oczekiwany czas jako czas między odjazdem z tego samego przystanku w danej chwili. Na przykład przy wartości 600 sekund wyprzedzenia, jeśli nie zdążysz na autobus, spodziewasz się 10 minut oczekiwania.

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 wylotu do przystanku na przyjazdu. Liczba ta obejmuje przystanek przyjazdu, ale nie uwzględnia przystanku wylotu. Jeśli na przykład trasa rozpoczyna się ze przystanku A, mija przystanki B i C i dotrze do przystanku D, postCount zwraca wartość 3.

tripShortText

string

Tekst wyświetlany w rozkładach jazdy i tablicach informacyjnych dla pasażerów. 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 (Kalifornia) w dni robocze do Sacramento, Kalifornia.

TransitStopDetails

Szczegóły dotyczące przystanków na trasie RouteLegStep.

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

object (TransitStop)

Informacje o przystanku na dany etap.

arrivalTime

string (Timestamp format)

Szacowany czas dotarcia na dany etap.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy 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 na danym etapie.

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

TransitStop

Informacje o przystankach.

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

string

Nazwa przystanku transportu publicznego.

location

object (Location)

Lokalizacja przystanku wyrażona za pomocą szerokości i długości geograficznej.

TransitDetailsLocalizedValues

Zlokalizowane opisy wartości 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)

Godzina w postaci ciągu znaków w danej strefie czasowej.

timeZone

string

Zawiera strefę czasową. Wartość jest nazwą 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 daną linię transportu publicznego.

name

string

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

uri

string

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

color

string

Kolor często używany w oznakowaniu tej linii. Wartość szesnastkowa.

iconUri

string

Identyfikator URI ikony powiązanej z tym wierszem.

nameShort

string

Krótka nazwa 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. Wartość szesnastkowa.

vehicle

object (TransitVehicle)

Typ pojazdu, który porusza się na tej linii transportu publicznego.

TransitAgency

Przewoźnik obsługujący linię transportu publicznego.

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

string

Nazwa tego przewoźnika.

phoneNumber

string

Sformatowany 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 oznakowania lokalnego.

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 Prom.
FUNICULAR Pojazd podciągnięty linowo po stromym zboczu. Kolejka linowo-terenowa zazwyczaj składa się z 2 samochodów, z których każdy pełni rolę przeciwwagi dla drugiego.
GONDOLA_LIFT Kolejka linowa.
HEAVY_RAIL Kolej ciężka.
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 Wszystkie inne pojazdy.
RAIL Kolej.
SHARE_TAXI Taksówka zbiorowa to rodzaj autobusu z możliwością wysiadania i odbioru pasażerów w dowolnym miejscu na trasie.
SUBWAY Podziemna kolej miejska.
TRAM Nadziemna kolej miejska.
TROLLEYBUS Trolejbus.

RouteLegTravelAdvisory

Zawiera dodatkowe informacje, o których użytkownik powinien być informowany na danym etapie, np. możliwe ograniczenia stref ruchu.

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

object (TollInfo)

Zawiera informacje o opłatach na wybranych drogach RouteLeg. To pole jest wypełniane tylko wtedy, gdy spodziewane są opłaty za przejazd na: RouteLeg. Jeśli to pole jest ustawione, ale pole podrzędne prognozowania ceny nie zostało wypełnione, spodziewamy się, że droga będzie zawierać drogi płatne, ale nie znamy szacunkowej ceny. Jeśli to pole nie istnieje, RouteLeg nie pobiera opłat za przejazd.

speedReadingIntervals[]

object (SpeedReadingInterval)

Szybkość czytania interwałów ze szczegółowym opisem gęstości ruchu. Ma zastosowanie w przypadku preferencji routingu TRAFFIC_AWARE i TRAFFIC_AWARE_OPTIMAL. Przedziały obejmują całą linię łamaną elementu RouteLeg bez nakładania się. Punkt początkowy określonego przedziału czasu 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

Tekstowa reprezentacja określonych właściwości.

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

object (LocalizedText)

Odległość podróży przedstawiona w formie tekstowej.

duration

object (LocalizedText)

Czas trwania przedstawiony w formie tekstowej z uwzględnieniem warunków drogowych. Uwaga: jeśli żądanie informacji o ruchu nie zostało wysłane przez Ciebie, ta wartość będzie taka sama jak wartość staticDuration.

staticDuration

object (LocalizedText)

Czas trwania bez uwzględniania warunków drogowych, przedstawiony 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 wielomodalnych segmentach elementu RouteLeg.steps. Pole nie jest wypełniane, jeśli RouteLeg nie zawiera w krokach żadnych segmentów wielomodalnych.

MultiModalSegment

Zawiera podsumowanie informacji o różnych wielomodalnych segmentach interfejsu RouteLeg.steps. Segment wielomodalny to co najmniej 1 sąsiadujący ze sobą segment RouteLegStep z tym samym atrybutem RouteTravelMode. Pole nie jest wypełniane, jeśli RouteLeg nie zawiera w krokach żadnych segmentów wielomodalnych.

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

object (NavigationInstruction)

Instrukcja nawigacji dla segmentu wielomodalnego.

travelMode

enum (RouteTravelMode)

Sposób podróży segmentu wielomodalnego.

stepStartIndex

integer

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

stepEndIndex

integer

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

Widoczny obszar

Widok obejmujący szerokość i długość geograficzną (2 punkty po przekątnej low i high). Widoczny obszar jest uważany za obszar zamknięty, czyli obejmujący swoje granice. 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. Oto niektóre z nich:

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

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

  • Jeśli low.longitude = -180 stopni i high.longitude = 180 stopni, widoczny obszar uwzględnia wszystkie długości.

  • 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 reprezentowane pole nie może być puste (zgodnie z definicjami powyżej). Pusty widoczny obszar spowoduje błąd.

Na przykład ten widoczny obszar w całości 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ższy punkt widocznego obszaru.

high

object (LatLng)

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

RouteLocalizedValues

Tekstowa reprezentacja określonych właściwości.

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

object (LocalizedText)

Odległość podróży przedstawiona w formie tekstowej.

duration

object (LocalizedText)

Czas trwania przedstawiony w formie tekstowej z uwzględnieniem warunków na drodze Uwaga: jeśli żądanie informacji o ruchu nie zostało wysłane przez Ciebie, ta wartość będzie taka sama jak wartość staticDuration.

staticDuration

object (LocalizedText)

Czas trwania bez uwzględniania warunków drogowych, przedstawiony w formie tekstowej.

transitFare

object (LocalizedText)

Opłata za transport publiczny w formie tekstowej.

GeocodingResults

Zawiera wartości 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 o wynikach geokodowania na potrzeby określania, na jaki adres został przetworzony 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ładnej zgodności z pierwotnym żądaniem, chociaż udało mu się dopasować część żądanego adresu. Warto sprawdzić w pierwotnej prośbie, czy adres nie zawiera błędów pisowni lub zawiera niepełny adres.

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 pośredni jest pośrednim punktem pośrednim.