Punkty pośrednie to lokalizacje między miejscem początkowym a docelowym, przez które ma przebiegać trasa.
W jednym żądaniu możesz zdefiniować maksymalnie 25 punktów pośrednich, korzystając z właściwości tablicy intermediates metody REST computeRoutes lub metody gRPC ComputeRoutes.
Przystanki a punkty pośrednie
Punkt pośredni możesz skonfigurować jako przystanek lub miejsce, przez które chcesz przejechać:
- Przystanek: domyślnie pojazd zatrzymuje się w danym miejscu. Każdy punkt pośredni dzieli trasę, dodając wpis
RouteLegdo tablicylegsw odpowiedzi. Więcej informacji znajdziesz w artykule Ustawianie przystanku na trasie. - Punkt pośredni z ustawioną wartością
"via"natrue: pojazd przejeżdża przez lokalizację bez zatrzymywania się. Punkty pośrednie nie dodają wpisów do tablicylegs. Więcej informacji znajdziesz w artykule Ustawianie punktu, przez który ma przebiegać trasa.
Odcinki trasy i punkty pośrednie
W przypadku każdego pośredniego przystanku w żądaniu odpowiedź zawiera osobny obiekt RouteLeg w tablicy routes.legs.
Na przykład trasa z miejscem początkowym, jednym przystankiem pośrednim i miejscem docelowym zawiera 2 odcinki: * Odcinek 1: od miejsca początkowego do przystanku pośredniego. * Odcinek 2: od przystanku pośredniego do miejsca docelowego.
Przykład: żądanie z punktem pośrednim
W tym przykładzie użyto tablicy intermediates, aby dodać do trasy pojedynczy przystanek pośredni.
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "intermediates": [ { "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0807784 } } } ], "travelMode": "DRIVE" }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Odpowiedź z wieloma etapami trasy
Ponieważ punkt pośredni w żądaniu jest przystankiem, który nie ustawia wartości "via": true, odpowiedź dzieli trasę na 2 etapy w tablicy legs:
{ "routes": [ { "distanceMeters": 805, "duration": "248s", "legs": [ { "distanceMeters": 207, "duration": "89s", "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.0807792 } } }, { "distanceMeters": 598, "duration": "159s", "startLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.0807792 } }, "endLocation": { "latLng": { "latitude": 37.4176166, "longitude": -122.0793882 } } } ] } ] }