Wegpunkte verwalten

In diesem Dokument wird beschrieben, wie Sie Wegpunkteinstellungen für Ihre App mit zwei Funktionen verwalten können:

  • Einstellungen für das Routing auf der Straßenseite
  • Zwischenstopp

Einstellungen für das Routing auf der Straßenseite festlegen

Standardmäßig sucht das Navigation SDK for iOS die schnellste Route zu einem Wegpunkt. Das bedeutet jedoch nicht, dass der Nutzer auf der gewünschten Straßenseite ankommt, z. B. auf der Straßenseite, auf der der Kunde eines Mitfahrdienstes wartet. Mit der Funktion Einstellungen für das Routing auf der Straßenseite können Sie dafür sorgen, dass das Fahrzeug auf der richtigen Straßenseite ankommt.

Funktionsweise

Sie legen die Einstellung für die Ankunft auf einer bestimmten Straßenseite fest, wenn Sie den Wegpunkt für diesen Stopp erstellen. Sie können die Einstellung auf zwei Arten angeben.

Dieselbe Straßenseite bevorzugen

Sie geben die geografischen Koordinaten des Wegpunkts an und legen dann ein Flag preferSameSideOfRoad fest, das angibt, dass Sie auf derselben Straßenseite wie der Wegpunkt ankommen möchten – angedockt an den nächstgelegenen Bürgersteig.

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

Ankunftsrichtung festlegen

Sie geben die geografischen Koordinaten des Wegpunkts an und dann eine Ankunftsrichtung preferredSegmentHeading, die der Richtung des Verkehrsflusses auf derselben Straßenseite wie das Ziel entspricht.

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

Das Navigation SDK wählt das Straßenabschnitt aus, das dem Wegpunkt am nächsten liegt und dessen Fahrbahnrichtung mit der Straßenseite, auf der sich der Wegpunkt befindet, übereinstimmt (innerhalb von +/- 55 Grad).

Einstellung für Zwischenstopp festlegen

An bestimmten Orten können Nutzer nicht sicher anhalten (z. B. in erhöhten Bereichen, auf Fähren, an unterirdischen Orten und in anderen Bereichen mit eingeschränktem Zugang). Mit der Funktion Zwischenstopp wird der Wegpunkt an einen nahe gelegenen Ort verschoben, wenn der Standort nicht für einen Stopp geeignet ist. Wenn Sie vehicleStopover auf YES setzen, wird der Wegpunkt automatisch verschoben, wenn die Route berechnet wird, sofern ein alternativer Standort verfügbar ist.

Funktionsweise

Sie legen die Einstellung für einen Zwischenstopp fest, wenn Sie den Wegpunkt für diesen Stopp erstellen. Setzen Sie dazu die Einstellung für einen Zwischenstopp für einen GMSNavigationMutableWaypoint fest, wie im folgenden Beispiel gezeigt:

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){...}];