वेपॉइंट मैनेज करें

इस दस्तावेज़ में बताया गया है कि दो सुविधाओं का इस्तेमाल करके, अपने ऐप्लिकेशन के लिए रास्ते के पड़ाव की सेटिंग कैसे मैनेज की जा सकती है:

  • सड़क की साइड के हिसाब से रूटिंग की प्राथमिकताएं
  • स्टॉपओवर

सड़क के किनारे की रूटिंग की प्राथमिकता सेट करना

डिफ़ॉल्ट रूप से, iOS के लिए Navigation SDK, किसी वॉइपॉइंट तक पहुंचने का सबसे तेज़ रास्ता ढूंढता है. हालांकि, इससे यह गारंटी नहीं मिलती कि उपयोगकर्ता सड़क की सही साइड पर पहुंच जाएगा. उदाहरण के लिए, सड़क की वह साइड जहां राईडशेयर ड्राइवर का ग्राहक इंतज़ार कर रहा है. सड़क की साइड के हिसाब से रूटिंग की प्राथमिकता की सुविधा की मदद से, यह पक्का किया जा सकता है कि वाहन सड़क की सही साइड पर पहुंच जाए.

यह कैसे काम करता है

किसी स्टॉप के लिए वेपॉइंट बनाते समय, सड़क के किसी खास हिस्से पर पहुंचने की प्राथमिकता सेट की जाती है. प्राथमिकता तय करने के लिए, इनमें से कोई एक तरीका अपनाएं.

सड़क की एक ही साइड को प्राथमिकता देना

आपको वॉइसपॉइंट के भौगोलिक निर्देशांक देने होंगे. इसके बाद, एक फ़्लैग 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;

नेविगेशन SDK टूल, वॉयपॉइंट के सबसे नज़दीक सड़क का वह सेगमेंट चुनता है जिसकी लेन की दिशा, सड़क के उस हिस्से के साथ अलाइन हो जो वॉयपॉइंट पर है. यह अलाइनमेंट +/- 55 डिग्री के अंदर होना चाहिए.

स्टॉपओवर की प्राथमिकता सेट करना

कुछ जगहों पर, उपयोगकर्ता सुरक्षित तरीके से गाड़ी नहीं रोक सकते. उदाहरण के लिए, ऊंचे इलाके, फ़ेरी, अंडरग्राउंड जगहें, और सीमित ऐक्सेस वाली अन्य जगहें. स्टॉपओवर सुविधा, व्यूपॉइंट को आस-पास की किसी जगह पर ले जाती है. ऐसा तब किया जाता है, जब व्यूपॉइंट की जगह, उपयोगकर्ता के लिए स्टॉप करने के लिहाज़ से सही न हो. vehicleStopover को YES पर सेट करने पर, रास्ते का हिसाब लगाने के दौरान, वैकल्पिक जगह उपलब्ध होने पर, रास्ते के बीच में मौजूद पॉइंट अपने-आप बदल जाता है.

यह कैसे काम करता है

किसी स्टॉप के लिए वेपॉइंट बनाते समय, स्टॉपेवर की प्राथमिकता सेट की जाती है. ऐसा करने के लिए, GMSNavigationMutableWaypoint पर स्टॉपओवर की प्राथमिकता सेट करें, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:

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