Compute Routes dapat menampilkan rute mengemudi yang dioptimalkan untuk jarak perjalanan yang lebih pendek jika Anda mengaktifkan rute jarak yang lebih pendek.
Saat Anda meminta rute dengan jarak yang lebih pendek, layanan akan menampilkan hal berikut:
- Rute default, yaitu rute yang dioptimalkan terutama untuk ETA.
- Rute yang lebih pendek dioptimalkan untuk meminimalkan jarak perjalanan di seluruh perjalanan.
Apa itu dan alasan menggunakannya
Rute dengan jarak yang lebih pendek memprioritaskan jarak daripada kenyamanan atau kecepatan berkendara. Misalnya, rute mungkin lebih memilih jalan lokal daripada jalan raya, melewati jalan tanah, atau memotong jalan melalui tempat parkir. Fitur ini tidak menampilkan manuver apa pun yang diketahui Google Maps ilegal.
Meminta rute dengan jarak yang lebih pendek
Permintaan Anda harus memenuhi kriteria berikut:
- Tetapkan
travelMode
keDRIVE
,BICYCLE
, atauTWO_WHEELER
. - Tetapkan
requestedReferenceRoutes
keSHORTER_DISTANCE
. - Tetapkan mask kolom respons untuk menampilkan properti respons yang terkait dengan
rute jarak yang lebih pendek:
routes.routeLabels
: Mengidentifikasi setiap rute sebagaiDEFAULT_ROUTE
,SHORTER_DISTANCE
, atauDEFAULT_ROUTE_ALTERNATE
.routes.routeToken
: Token rute yang dapat Anda teruskan ke Navigation SDK untuk mengambil rute kustom.
- Jangan sertakan titik jalan perantara
Via
. - Jangan sertakan parameter
optimizeWaypointOrder
. - Opsional: Tetapkan mask kolom respons untuk menampilkan properti berikut
yang terkait dengan rute default dan rute jarak lebih pendek:
routes.distanceMeters
: Menampilkan jarak rute.routes.duration
: Menampilkan durasi rute.
Untuk informasi referensi, lihat ReferenceRoute dan RouteLabel.
Contoh permintaan: Rute jarak yang lebih pendek
Kode berikut menunjukkan permintaan rute dengan jarak yang lebih pendek. Dalam contoh ini, Anda menggunakan mask kolom respons untuk menampilkan kolom yang terkait dengan rute default dan rute jarak lebih pendek dengan mask kolom berikut:
routes.distanceMeters
routes.duration
curl -X POST -H 'content-type: application/json' -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE", "requestedReferenceRoutes": ["SHORTER_DISTANCE"], }' \ -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY \ -H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Contoh respons rute yang lebih pendek
{
"routes": [
{
"distanceMeters": 138943,
"duration": "5373s",
"routeToken": "CrsCCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXcklWWFo2cjhDZmltdk9NUDQ3aU1nUU0QBRpPCk0KGAoNCgIIAREAAAAAAIBmQBF56SYxqDm4QBISCAAQAxAGEBMQEhgCQgQaAggFIhsKF3JJVlhaLWFOQnZpbXZPTVA0N2lNZ1FNcAEoASIVAACBmRY1BjeCiUQewJGTrQ3DuHRp",
"routeLabels": [
"DEFAULT_ROUTE"
]
},
{
"distanceMeters": 112610,
"duration": "7165s",
"routeToken": "CqgCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdySVZYWjZHR0RiTzV2T01QOUpiQXlBTRAFGk8KTQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhIIABADEAYQExASGAJCBBoCCAUiGwoXcklWWFo3S09Cck81dk9NUDlKYkF5QU1wASgCIhUAAIGZFlj_CmMgGE6KGZcsE-tEywM",
"routeLabels": [
"SHORTER_DISTANCE"
]
}
]
}
Contoh permintaan: Rute yang lebih pendek dan hemat bahan bakar
Kode berikut menunjukkan permintaan untuk rute jarak yang lebih pendek dan rute yang hemat bahan bakar.
`
curl -X POST -d '{ "origin": { "location": { "latLng": { "latitude": 41.76904801292959, "longitude": -72.67374935684933 } } }, "destination": { "location": { "latLng": { "latitude": 41.823042361105024, "longitude": -71.40933143059424 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL", "requestedReferenceRoutes": ["SHORTER_DISTANCE", "FUEL_EFFICIENT"] }'
-H 'Content-Type: application/json'
-H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.routeToken'
'https://routes.googleapis.com/directions/v2:computeRoutes'
Contoh respons: Jarak yang lebih pendek dan Rute hemat bahan bakar
Dalam hal ini, jarak yang lebih pendek dan rute yang paling hemat bahan bakar adalah sama, sehingga rute tersebut ditampilkan dan routeLabel
disertakan untuk kedua jenis rute.
{ "routes": [ { "distanceMeters": 138943, "duration": "5375s", "routeToken": "Cr8CCs4BMssBGq8BCkECFg9eN0MowaEI3Y4KqMEhzOTe-Qi3947kBsb8koUBkvX0oAKJ_b1S4uPoUvzzAYfXA92t_RXyw98Up6qKAaRaABIsNBjodKMdkMYAPMLMIajCwj-zsIxpgyBxOLYjdBBeKgkO3tFDDrj4YgZB5bMaFQAATME12CCCA9MEF-kO2wL_____DyoLHgAOAHN3DggAQQEyBAUBAQM9VDgqPkV88FI_SNO81oLq4JnjYyIXS1laWFo4T19JcWVCM2ZFUDFMbms4UXcQBRpTClEKGAoNCgIIAREAAAAAAIBmQBFOYhBYGTy4QBIWCAAQAxAGEBMQEhgCQgQaAggFSgIIASIbChdLWVpYWjlpV0g2ZUIzZkVQMUxuazhRd3ABKAEiFQAAgZkW4Df4cspNNJZWlMZuUUxLPQ", "routeLabels": [ "DEFAULT_ROUTE" ] }, { "distanceMeters": 112610, "duration": "7156s", "routeToken": "CqwCCrsBMrgBGpwBCjYCFg1SN0MowaEI3Y4KjfqjF6Ls9BXc-QGiqCOpu7FDtfCXxSG2zLOGI_r4uQGc-we_nQ7MLAASLDQY6HSjHZDGg26EAFrPI5Q3NxvGA4ELazy3sLYqno_9eAFD2KxlCqAGQeWzGg4AAMQDGwyiAqwwKQggJCoLHgBsCQ8Acm0XWWcyAgQGPVQ4Kj5FfPBSP0jikPWC95WdhIwBIhdLWVpYWi1UNklfT055OVlQczhhcWlRSRAFGlMKUQoYCg0KAggCEQAAAAAAAFlAEU5iEFh5af1AEhYIABADEAYQExASGAJCBBoCCAVKAggBIhsKF0tZWlhaNERXSF9PTnk5WVBzOGFxaVFJcAEoAiIVAACBmRaESp2EJS5nmwiEF8KH15_f", "routeLabels": [ "FUEL_EFFICIENT", "SHORTER_DISTANCE" ] } ] }
Region yang didukung
Rute jarak yang lebih pendek didukung di semua wilayah.
Penagihan
Google Maps Platform tidak mengenakan biaya tambahan untuk penggunaan fitur eksperimental. Anda akan ditagih berdasarkan penggunaan API berdasarkan parameter lain yang Anda tetapkan.
Pelajari penagihan lebih lanjut untuk Routes API.