Bu dokümanda, iki özelliği kullanarak uygulamanız için referans noktası tercihlerini nasıl yönetebileceğiniz açıklanmaktadır:
- Yol kenarı yönlendirme tercihleri
- Duraklama
Yol yönlendirme tercihinin tarafını ayarla
Varsayılan olarak, iOS için Navigasyon SDK'sı bir ara noktaya giden en hızlı rotayı bulur. Ancak bu, kullanıcının yolun istediğiniz tarafına (örneğin, araç paylaşımı sürücüsü müşterisinin beklediği yol kenarına) varacağını garanti etmez. Yol Rotası Tercihi özelliği, aracın yolun doğru tarafına geldiğinden emin olmanızı sağlar.
İşleyiş şekli
Söz konusu durak için ara nokta oluşturduğunuzda, yolun belirli bir tarafına ulaşma tercihini ayarlarsınız. Bu tercihi iki yöntemden biriyle belirtebilirsiniz.
Yolun aynı tarafını tercih ediyorum
Referans noktasının coğrafi koordinatlarını sağlarsınız ve ardından, yol üzerinde, en yakın kaldırıma tutturulmuş şekilde, ara noktayla aynı tarafa ulaşmayı tercih ettiğinizi belirten bir işaret preferSameSideOfRoad
belirlersiniz.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferSameSideOfRoad:(BOOL)preferSameSideOfRoad;
Tercih edilen segment başlığı
Referans noktasının coğrafi koordinatlarını ve ardından, yolun hedefle aynı tarafındaki trafik akış yönüyle eşleşen bir varış başlığı preferredSegmentHeading
girersiniz.
(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
title:(NSString *)title
preferredSegmentHeading:(int32_t)preferredSegmentHeading;
Navigasyon SDK'sı, ara noktaya en yakın yol segmentini seçer. Bu segment, referans noktasının bulunduğu yolun tarafıyla hizalanan (+/- 55 derece içinde) bir şerit yönü içerir.
Durak tercihini ayarlayın
Bazı yerlerde kullanıcıların güvenli bir şekilde durması mümkün değildir (örneğin, yükseltilmiş bölgeler, feribotlar, metro konumları ve diğer sınırlı erişim alanları). Stopover özelliği, konumu kullanıcının mola vermesi için uygun değilse ara noktayı yakındaki bir yere yeniden taşır. vehicleStopover
değerini YES
olarak ayarladığınızda, alternatif bir konum varsa rota hesaplanırken referans noktası otomatik olarak değiştirilir.
İşleyiş şekli
O durak için ara nokta oluştururken duraklama tercihini ayarlarsınız.
Bunu yapmak için aşağıdaki örnekte gösterildiği gibi GMSNavigationMutableWaypoint
üzerinde aktarma tercihini ayarlayın:
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){...}];