إدارة نقاط الطريق

يوضّح هذا المستند كيفية إدارة الإعدادات المفضّلة لنقاط الطريق في تطبيقك باستخدام ميزتَين:

  • الإعدادات المفضّلة لمسار التنقّل على جانب الطريق
  • التوقف المؤقت

يبحث حزمة تطوير البرامج (SDK) لنظام التشغيل iOS للتنقّل تلقائيًا عن أسرع مسار إلى نقطة تفتيش، ولكنّ ذلك لا يضمن وصول المستخدم إلى الجانب المطلوب من الطريق، على سبيل المثال، الجانب الذي ينتظر فيه عميل سائق مشاركة الرحلة. تتيح لك ميزة الإعدادات المفضّلة لمسار التوجيه على جانب الطريق التأكّد من وصول المركبة إلى الجانب الصحيح من الطريق.

آلية العمل

يمكنك ضبط الإعداد المفضّل للوصول إلى جانب معيّن من الطريق عند إنشاء نقطة الطريق لهذه المحطة. يمكنك تحديد الإعداد المفضّل بإحدى الطريقتين التاليتين:

يُفضَّل الجانب نفسه من الطريق

يمكنك تقديم الإحداثيات الجغرافية لنقطة المرور، ثم ضبط علامة preferSameSideOfRoad تشير إلى أنّك تفضّل الوصول إلى جانب الطريق نفسه الذي تقع عليه نقطة المرور، مع تثبيتها على الرصيف الأقرب.

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

ضبط عنوان الوصول

يمكنك تقديم الإحداثيات الجغرافية لنقطة الطريق، ثم تقديم اتجاه وصول preferredSegmentHeading يتطابق مع اتجاه تدفق حركة المرور على الجانب نفسه من الطريق الذي يقع عليه الوجهة.

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

يختار Navigation SDK جزء الطريق الأقرب إلى نقطة الالتفاف، والذي يكون اتجاه مساره متوافقًا (+/- 55 درجة) مع جانب الطريق الذي تقع عليه نقطة الالتفاف.

ضبط الإعدادات المفضّلة للتوقف

في أماكن معيّنة، لا يمكن للمستخدمين التوقف بأمان (مثل المناطق المرتفعة والعبارات والمواقع الجغرافية تحت الأرض والمناطق الأخرى التي يصعب فيها الوصول). تعيد ميزة التوقف تحديد موقع نقطة الطريق إلى مكان قريب إذا كان موقعها الجغرافي غير مناسب للمستخدم للتوقف. عند ضبط vehicleStopover على YES، تتم إعادة تحديد موقع نقطة الطريق تلقائيًا عند احتساب المسار، إذا كان هناك موقع بديل متاحًا.

آلية العمل

يمكنك ضبط الإعدادات المفضّلة للتوقف عند إنشاء نقطة الطريق لهذا التوقف. لإجراء ذلك، اضبط الإعدادات المفضّلة لنقطة التوقف على GMSNavigationMutableWaypoint كما هو موضّح في المثال التالي:

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

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