
Android के लिए Navigation SDK, डिफ़ॉल्ट रूप से किसी वेपॉइंट तक पहुंचने का सबसे छोटा रास्ता ढूंढता है. हालांकि, इससे यह गारंटी नहीं मिलती कि वाहन सड़क के उस किनारे पर पहुंचेगा जहां उपभोक्ता इंतज़ार कर रहा है. साथ ही, इससे यह भी गारंटी नहीं मिलती कि ड्राइवर के लिए वाहन रोकने की जगह सुरक्षित है. इस गाइड में, इन स्थितियों में इस्तेमाल की जा सकने वाली दो सुविधाओं के बारे में बताया गया है:
- सड़क के किस ओर से जाना है, इसके लिए प्राथमिकता सेट करना
- स्टॉपओवर की सुविधा
रास्ते के किस ओर से जाना है, इसके लिए राउटिंग की प्राथमिकता
किसी स्टॉप के लिए वेपॉइंट बनाते समय, सड़क के किसी खास हिस्से पर पहुंचने की प्राथमिकता सेट की जा सकती है. अपनी प्राथमिकता को इन दो तरीकों से बताया जा सकता है: सड़क के एक ही तरफ़ से जाना है या पहुंचने की दिशा की जानकारी देनी है.
सड़क के एक ही तरफ़ से यात्रा करना
आपको वेपॉइंट के भौगोलिक निर्देशांक देने होते हैं. इसके बाद, आपको एक फ़्लैग (setPreferSameSideOfRoad) सेट करना होता है. इससे पता चलता है कि आपको सड़क के उसी तरफ़ पहुंचना है जिस तरफ़ वेपॉइंट है. यह फ़्लैग, सबसे नज़दीकी फ़ुटपाथ पर स्नैप किया जाता है.
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setPreferSameSideOfRoad(true)
.build()
पहुंचने की जानकारी देने वाला हेडिंग सेट करना
आपको वेपॉइंट के भौगोलिक निर्देशांक देने होते हैं. इसके बाद, आपको पहुंचने की दिशा (setPreferredHeading) देनी होती है. यह दिशा, सड़क के उसी तरफ़ के ट्रैफ़िक फ़्लो से मेल खानी चाहिए जिस तरफ़ खरीदार इंतज़ार कर रहा है.
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setPreferredHeading(preferredHeading)
.build()
Navigation SDK, वेपॉइंट के सबसे नज़दीक मौजूद सड़क के हिस्से को चुनता है. साथ ही, यह देखता है कि लेन की दिशा, सड़क के उस हिस्से के साथ +/- 55 डिग्री के अंदर अलाइन हो जिस पर वेपॉइंट मौजूद है.
स्टॉपओवर की प्राथमिकता सेट करना
कुछ जगहों पर, ड्राइवर सुरक्षित तरीके से गाड़ी नहीं रोक सकते. उदाहरण के लिए, ऊंचे इलाके, फ़ेरी, भूमिगत जगहें, और अन्य ऐसी जगहें जहां पहुंचना मुश्किल है. अगर किसी जगह पर वाहन को रोकना सही नहीं है, तो कुछ देर के लिए रुकने की सुविधा, वेपॉइंट को आस-पास की किसी दूसरी जगह पर ले जाती है. setVehicleStopover को true पर सेट करने पर, अगर कोई दूसरी जगह उपलब्ध है, तो रास्ता तय होने के बाद वेपॉइंट अपने-आप दूसरी जगह पर चला जाता है.
यह कैसे काम करता है
किसी जगह पर रुकने के लिए वेपॉइंट बनाते समय, रुकने की अवधि सेट की जाती है.
इसके लिए, setVehicleStopover प्राथमिकता तय करें. जैसा कि यहां दिए गए उदाहरण में दिखाया गया है:
Waypoint waypoint =
Waypoint.builder()
.setLatLng(latitude, longitude)
.setTitle("Somewhere in Sydney")
.setVehicleStopover(true)
.build()