Dokumen ini menjelaskan cara mengelola preferensi titik jalan untuk aplikasi Anda dengan menggunakan dua fitur:
- Preferensi pemilihan rute sisi jalan
- Persinggahan
Menetapkan preferensi perutean sisi jalan
Secara default, Navigation SDK untuk iOS menemukan rute tercepat ke titik jalan, tetapi hal ini tidak menjamin bahwa pengguna akan tiba di sisi jalan yang diinginkan, misalnya, sisi jalan tempat pelanggan pengemudi layanan transportasi online menunggu. Fitur Preferensi Rute Sisi Jalan memungkinkan Anda memastikan kendaraan tiba di sisi jalan yang benar.
Cara kerjanya
Anda menetapkan preferensi untuk tiba di sisi jalan tertentu saat membuat titik jalan untuk perhentian tersebut. Anda dapat menentukan preferensi dengan salah satu dari dua cara.
Lebih memilih sisi jalan yang sama
Anda memberikan koordinat geografis titik jalan, lalu menetapkan tanda
preferSameSideOfRoad
yang menunjukkan bahwa Anda lebih memilih untuk tiba di sisi jalan yang sama dengan
titik jalan—disesuaikan dengan trotoar terdekat.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferSameSideOfRoad:(BOOL)preferSameSideOfRoad;
Menetapkan heading kedatangan
Anda memberikan koordinat geografis titik jalan, lalu memberikan
arah kedatangan
preferredSegmentHeading
yang cocok dengan arah arus lalu lintas di sisi jalan yang sama dengan
tujuan.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferredSegmentHeading:(int32_t)preferredSegmentHeading;
Navigation SDK memilih segmen jalan yang paling dekat dengan titik jalan—yang memiliki arah jalur yang sejajar (dalam +/- 55 derajat) dengan sisi jalan tempat titik jalan berada.
Menetapkan preferensi persinggahan
Di tempat tertentu, pengguna tidak dapat berhenti dengan aman (misalnya, area tinggi, feri, lokasi di bawah tanah, dan area lain dengan akses terbatas). Fitur Mampir memindahkan titik jalan ke tempat terdekat jika lokasinya tidak sesuai untuk pengguna berhenti. Saat Anda menetapkan
vehicleStopover
ke YES
, titik jalan akan otomatis dipindahkan saat
rute dihitung, jika lokasi alternatif tersedia.
Cara kerjanya
Anda dapat menetapkan preferensi untuk persinggahan saat membuat titik jalan untuk perhentian tersebut.
Untuk melakukannya, tetapkan preferensi untuk persinggahan di
GMSNavigationMutableWaypoint
seperti yang ditunjukkan dalam contoh berikut:
Swift
let location = CLLocationCoordinate2D(latitude: 47.67, longitude: -122.20) let waypoint = GMSNavigationMutableWaypoint(location: location, title: "waypoint from location")! waypoint.vehicleStopover = true mapView.navigator?.setDestinations([waypoint], routingOptions: routingOptions, callback: {...})
Objective-C
CLLocationCoordinate2D location = CLLocationCoordinate2DMake(47.67, -122.20); GMSNavigationMutableWaypoint *waypoint = [[GMSNavigationMutableWaypoint alloc] initWithLocation:location title:@"waypoint from location"]; waypoint.vehicleStopover = YES; [_mapView.navigator setDestinations:@[waypoint1] routingOptions:routingOptions callback:^(GMSRouteStatus routeStatus){...}];