Ara nokta yönetme

Bu belgede, iki özelliği kullanarak uygulamanız için ara nokta tercihlerini nasıl yönetebileceğiniz açıklanmaktadır:

  • Yolun tarafına göre rota tercihleri
  • Aktarma

Yolun hangi tarafında yönlendirme yapılacağını ayarlama

iOS için Navigation SDK varsayılan olarak bir ara noktaya en hızlı rotayı bulur ancak bu, kullanıcının yolun istenen tarafına (ör. bir araç paylaşımı sürücüsünün müşterisinin beklediği taraf) varacağını garanti etmez. Yolun Tarafı Rota Tercihi özelliği, aracın yolun doğru tarafına ulaşmasını sağlar.

İşleyiş şekli

Bu durak için ara nokta oluşturduğunuzda yolun belirli bir tarafına varma tercihini ayarlarsınız. Tercihi iki şekilde belirtebilirsiniz.

Yolun aynı tarafını tercih etme

Ara noktanın coğrafi koordinatlarını sağlarsınız ve ardından ara noktayla aynı yol tarafına varmayı tercih ettiğinizi belirten bir işaret preferSameSideOfRoad ayarlarsınız. Bu işaret, en yakın kaldırıma sabitlenir.

(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
                                  title:(NSString *)title
                   preferSameSideOfRoad:(BOOL)preferSameSideOfRoad;

Varış yönü ayarlama

Ara noktanın coğrafi koordinatlarını ve ardından varış yönünü preferredSegmentHeading sağlarsınız. Bu yön, yolun hedefle aynı tarafındaki trafik akışının yönüyle eşleşir.

(nullable instancetype)initWithLocation:(CLLocationCoordinate2D)location
                                  title:(NSString *)title
                preferredSegmentHeading:(int32_t)preferredSegmentHeading;

Navigation SDK, ara noktaya en yakın olan ve ara noktanın bulunduğu yol tarafıyla aynı yönde (± 55 derece içinde) bir şerit yönüne sahip yol segmentini seçer.

Aktarma tercihi belirleme

Bazı yerlerde kullanıcıların güvenli bir şekilde durması mümkün değildir (ör. yüksek alanlar, feribotlar, yer altı konumları ve erişimin sınırlı olduğu diğer alanlar). Mola yeri özelliği, kullanıcının mola vermesi için uygun olmayan bir konumda bulunan ara noktayı yakındaki bir yere taşır. vehicleStopover değerini YES olarak ayarladığınızda, rota hesaplanırken alternatif bir konum varsa ara nokta otomatik olarak yeniden konumlandırılır.

İşleyiş şekli

Mola tercihinizi, ilgili mola için ara nokta oluştururken ayarlarsınız. Bunu yapmak için aşağıdaki örnekte gösterildiği gibi GMSNavigationMutableWaypoint üzerinde bir mola tercihi 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){...}];