Titik jalan perantara adalah lokasi di antara tempat asal dan tujuan yang akan dilalui rute. Titik jalan perantara bisa berupa perhentian atau Anda dapat menentukannya sebagai lokasi yang akan dilewati. Untuk contoh titik jalan untuk perhentian, lihat Menetapkan perhentian di sepanjang rute. Untuk contoh titik jalan yang akan dilewati, Tetapkan titik untuk rute yang akan dilewati.
Gunakan properti array intermediates
dari metode computeRoutes (REST) atau metode ComputeRoutes (gRPC), untuk menentukan hingga maksimum 25 titik jalan perantara.
Untuk setiap titik jalan perantara dalam permintaan, Route object (REST) atau
Route object (gRPC) dalam
respons menambahkan entri ke array legs
untuk memberikan detail
untuk segmen perjalanan tersebut.
Setiap segmen rute direpresentasikan oleh objek RouteLeg (REST) atau RouteLeg (gRPC).
Kontrol kolom RouteLeg
yang akan ditampilkan menggunakan
mask kolom respons.
Contoh - Menetapkan titik jalan perantara
Contoh berikut menggunakan properti array intermediates
untuk menambahkan satu
titik jalan menengah ke isi permintaan POST dari sebuah rute.
Contoh ini menggunakan mask kolom respons di header X-Goog-FieldMask
yang menentukan untuk menampilkan kolom berikut dalam respons:
routes.duration
routes.distanceMeters
routes.legs
yang sesuai dengan keseluruhan objekRouteLeg
.
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } }, "sideOfRoad": true }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "intermediates": [ { "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0807784 } } } ], "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE", "departureTime": "2022-10-15T15:01:23.045123456Z", "computeAlternativeRoutes": false, "routeModifiers": { "avoidTolls": false, "avoidHighways": false, "avoidFerries": false }, "languageCode": "en-US", "units": "IMPERIAL" }' -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'
Respons dari panggilan ini berisi array legs
. Setiap langkah segmen ini
diwakili oleh objek
RouteLegStep (REST) atau
RouteLegStep (gRPC).
{ "routes": [ { "legs": [ # First leg { "distanceMeters": 207, "duration": "89s", "staticDuration": "89s", "polyline": { "encodedPolyline": "ipkcFjgchVd@@@cF]@@oCK?" }, "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.08077919999998 } }, "steps": [ { "distanceMeters": 21, "staticDuration": "6s", "polyline": { "encodedPolyline": "ipkcFjgchVd@@" }, "startLocation": { "latLng": { "latitude": 37.4197318, "longitude": -122.0826233 } }, "endLocation": { "latLng": { "latitude": 37.41954, "longitude": -122.08262750000002 } } }, ... }, # Second leg { "distanceMeters": 598, "duration": "159s", "staticDuration": "159s", "polyline": { "encodedPolyline": "ipkcFz{bhVh@??{@xPBP?J}E{E?" }, "startLocation": { "latLng": { "latitude": 37.419734, "longitude": -122.08077919999998 } }, "endLocation": { "latLng": { "latitude": 37.417616599999995, "longitude": -122.07938820000001 } }, "steps": [ { ...