Penghitungan rute (termasuk pengalihan rute) menampilkan rute yang membutuhkan waktu navigasi paling singkat sebagai rute terbaik default. Namun, Anda dapat mengubah strategi perutean sehingga alternatif rute yang lebih pendek akan ditampilkan.
Istilah lebih pendek berarti rute yang paling pendek di antara rute optimal berdasarkan model biaya default kami. Rute yang lebih pendek mungkin bukan rute terpendek mutlak, karena opsi tersebut mungkin merupakan alternatif yang buruk. Misalnya, jika rute terpendek mutlak adalah 10 km dan membutuhkan waktu 50 menit untuk dilalui, dan rute lain adalah 15 km, tetapi hanya membutuhkan waktu 20 menit untuk dilalui, pilihan kedua adalah yang optimal, karena menghabiskan waktu 30 menit untuk mengurangi lima km bukanlah pertukaran yang baik.
Setelah Anda menetapkan strategi perutean untuk perjalanan, strategi tersebut tidak akan berubah hingga perjalanan selesai. Untuk mengubah strategi perutean untuk perjalanan yang sudah ada, Anda harus menghapus tujuan dan menyetel ulang dengan strategi perutean baru.
Menetapkan strategi perutean
Anda dapat mengonfigurasi strategi pemilihan rute dengan menetapkan
RoutingOptions.routingStrategy
saat memanggil setDestinations()
.
RoutingOptions.routingStrategy
menggunakan salah satu nilai enumerasi berikut:
Nilai Enumerasi | Deskripsi |
---|---|
RoutingStrategy.DEFAULT_BEST | Menempatkan rute berdasarkan model biaya default Navigation SDK. Ini adalah strategi pemilihan rute default. |
RoutingStrategy.SHORTER | Mengurutkan rute berdasarkan jarak. Rute dengan peringkat tertinggi adalah rute terpendek dari rute yang ditampilkan. |
Contoh
Contoh kode berikut menunjukkan cara menyetel preferensi rute yang lebih pendek.
RoutingOptions routingOptions = new RoutingOptions();
routingOptions.routingStrategy(RoutingStrategy.SHORTER);
navigator.setDestinations(destinations, routingOptions, displayOptions);
Rute yang mencakup kapal feri
Secara default, NavSDK mengecualikan rute yang mencakup kapal feri. Jika Anda ingin menyertakan opsi feri sebagai bagian dari rute, Anda dapat menyesuaikan preferensi pemilihan rute ini untuk menampilkan perjalanan ke segmen feri dengan menyetel avoidFerries
ke false
.
Contoh
RoutingOptions routingOptions = new RoutingOptions().avoidFerries(true);
// Add additional routing preferences
navigator.setDestination(destination, routingOptions);
Format info rute
Dengan preferensi rute yang lebih pendek, balon di sepanjang rute akan menampilkan detail jarak. Namun, Anda dapat menggunakan info perkiraan waktu tiba (ETA).
Mengonfigurasi format info rute
Anda dapat mengubah format keterangan rute dengan memanggil setRouteCalloutInfoFormat
di NavigationView
(atau di NavigationFragment
). setRouteCalloutInfoFormat
menggunakan salah satu nilai enumerasi berikut:
Nilai Enumerasi | Deskripsi |
---|---|
RouteCalloutInfoFormat.DEFAULT | Menampilkan sisa waktu saat menggunakan strategi perutean rute terbaik default. Menampilkan jarak yang tersisa saat menggunakan strategi perutean rute yang lebih pendek. |
RouteCalloutInfoFormat.TIME | Menampilkan sisa waktu. |
RouteCalloutInfoFormat.DISTANCE | Menampilkan jarak yang tersisa. |
Contoh
Contoh kode berikut menunjukkan cara mengonfigurasi format balon rute.
mNavFragment.setRouteCalloutInfoFormat(RouteCalloutInfoFormat.TIME);