किसी रास्ते का हिसाब लगाने के लिए, आपको कम से कम रास्ते के शुरू और आखिर की जगहों की जानकारी देनी होगी. इन जगहों को, रास्ते पर वेपॉइंट के तौर पर तय किया जाता है.
ऑरिजिन और डेस्टिनेशन के अलावा, अलग-अलग तरह के वॉइसपॉइंट और किसी रास्ते के लिए वॉइसपॉइंट मैनेज करने का तरीका भी बताया जा सकता है. ज़्यादा जानकारी और उदाहरणों के लिए, ये विषय देखें:
- वाहन की दिशा और सड़क की साइड की जानकारी देना
- रास्ते में पड़ने वाले वे पॉइंट तय करना जहां आपको रुकना है
- रास्ते में कोई स्टॉप सेट करना
- किसी रास्ते पर जाने के लिए कोई पॉइंट सेट करना
- अपने रास्ते पर स्टॉप के क्रम को ऑप्टिमाइज़ करना
किसी रूट के लिए जगहों की जानकारी देना
वेपॉइंट (REST) या वेपॉइंट (gRPC) ऑब्जेक्ट बनाकर, किसी जगह की जानकारी दी जाती है. व्यूपॉइंट की परिभाषा में, जगह की जानकारी इनमें से किसी भी तरीके से दी जा सकती है:
- जगह का आईडी (इसका इस्तेमाल करना बेहतर है)
- अक्षांश/देशांतर के निर्देशांक
- पता स्ट्रिंग ("मुंबई, भारत" या "मुंबई, भारत")
- प्लस कोड
किसी अनुरोध में सभी वेपॉइंट की जगहों की जानकारी एक ही तरह से दी जा सकती है या उन्हें अलग-अलग तरीके से दिया जा सकता है. उदाहरण के लिए, ऑरिजिन व्यूपॉइंट के लिए अक्षांश/देशांतर निर्देशांक का इस्तेमाल किया जा सकता है और डेस्टिनेशन व्यूपॉइंट के लिए प्लेस आईडी का इस्तेमाल किया जा सकता है.
बेहतर और सटीक जानकारी पाने के लिए, अक्षांश/देशांतर के निर्देशांक या पते की स्ट्रिंग के बजाय, जगह के आईडी का इस्तेमाल करें. जगह के आईडी, यूनीक और साफ़ तौर पर बताए जाते हैं. साथ ही, ये ऐक्सेस पॉइंट और ट्रैफ़िक वैरिएबल जैसे रूटिंग के लिए, जियोकोडिंग के फ़ायदे देते हैं. इनकी मदद से, इन स्थितियों से बचा जा सकता है. ये स्थितियां, किसी जगह की जानकारी देने के अन्य तरीकों से हो सकती हैं:
- अक्षांश/देशांतर निर्देशांक का इस्तेमाल करने पर, जगह को उन निर्देशांक के सबसे नज़दीक वाली सड़क पर स्नैप किया जा सकता है. ऐसा हो सकता है कि वह सड़क, प्रॉपर्टी का ऐक्सेस पॉइंट न हो या वह सड़क, डेस्टिनेशन तक तेज़ी से या सुरक्षित तरीके से न ले जाती हो.
- रास्ते का हिसाब लगाने से पहले, पते की स्ट्रिंग को अक्षांश/देशांतर के निर्देशांक में बदलने के लिए, Routes API का इस्तेमाल करके उन्हें जियोकोड किया जाना चाहिए. इस कन्वर्ज़न से परफ़ॉर्मेंस पर असर पड़ सकता है.
जगह का आईडी डालना
किसी वेपॉइंट की जगह की जानकारी देने के लिए, प्लेस आईडी का इस्तेमाल किया जा सकता है. अक्षांश और देशांतर के निर्देशांक, सड़कों पर स्नैप किए जाते हैं. इसलिए, हो सकता है कि कुछ मामलों में प्लेस आईडी से बेहतर नतीजे मिलें.
Geocoding API और Places API से जगह के आईडी पाएं. इसमें जगह के नाम का ऑटोकंप्लीट भी शामिल है. प्लेस आईडी के बारे में ज़्यादा जानने के लिए, प्लेस आईडी की खास जानकारी देखें.
इस उदाहरण में, placeId
प्रॉपर्टी का इस्तेमाल करके, origin
और destination
, दोनों के लिए प्लेस आईडी पास किया गया है:
{ "origin":{ "placeId": "ChIJayOTViHY5okRRoq2kGnGg8o" }, "destination":{ "placeId": "ChIJTYKK2G3X5okRgP7BZvPQ2FU" }, ... }
किसी जगह की जानकारी, अक्षांश और देशांतर के निर्देशांक के तौर पर देना
किसी वेपॉइंट में जगह की जानकारी देने के लिए, अक्षांश/देशांतर निर्देशांक का इस्तेमाल करके, जगह की जानकारी (REST) या जगह की जानकारी(gRPC) एट्रिब्यूट की वैल्यू दें.
उदाहरण के लिए, latitude
और longitude
निर्देशांक का इस्तेमाल करके, रूट origin
और destination
के लिए वेपन पॉइंट तय करें:
{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, ... }
किसी जगह की जानकारी, पते की स्ट्रिंग के तौर पर देना
पते की स्ट्रिंग, स्ट्रिंग के तौर पर दिखाए गए लिटरल पते होते हैं. जैसे, "1600 Amphitheatre Parkway, Mountain View, CA". किसी पते की स्ट्रिंग को अक्षांश और देशांतर के निर्देशांक में बदलने की प्रोसेस को जियोकोडिंग कहा जाता है. जैसे, अक्षांश 37.423021 और देशांतर -122.083739.
जब किसी रास्ते के वेपॉइंट की जगह के तौर पर पता स्ट्रिंग दी जाती है, तो Routes API, स्ट्रिंग को अक्षांश और देशांतर के निर्देशांक में बदलने के लिए, उसे अंदरूनी तौर पर जियोकोड करता है.
उदाहरण के लिए, किसी रास्ते का हिसाब लगाने के लिए, पते की स्ट्रिंग का इस्तेमाल करके, रास्ते origin
और
destination
के लिए एक वेपॉइंट तय किया जाता है:
{ "origin":{ "address": "1600 Amphitheatre Parkway, Mountain View, CA" }, "destination":{ "address": "450 Serra Mall, Stanford, CA 94305, USA" }, ... }
इस उदाहरण में, Routes API दोनों पतों को अक्षांश और देशांतर निर्देशांक में बदलने के लिए, उन्हें जियोकोड करता है.
अगर पते की वैल्यू साफ़ तौर पर नहीं दी गई है, तो Routes API मिलते-जुलते पतों से अलग करने के लिए, खोज की सुविधा का इस्तेमाल कर सकता है. उदाहरण के लिए, "1st Street", "1st street NE" या "1st St SE" की पूरी वैल्यू या कुछ हिस्से की वैल्यू हो सकती है. यह नतीजा, Geocoding API से मिले नतीजे से अलग हो सकता है. जगह के आईडी का इस्तेमाल करके, गलतफ़हमी से बचा जा सकता है.
पते के लिए क्षेत्र सेट करना
अगर किसी वेपॉइंट की जगह के तौर पर अधूरी पते की स्ट्रिंग दी जाती है, तो हो सकता है कि एपीआई, जियोकोड किए गए अक्षांश/देशांतर के गलत निर्देशांक का इस्तेमाल करे. उदाहरण के लिए, ड्राइविंग के लिए रूट का अनुरोध करते समय, ऑरिजिन के तौर पर "टोलेडो" और डेस्टिनेशन के तौर पर "मैड्रिड" डालें:
{ "origin":{ "address": "Toledo" }, "destination":{ "address": "Madrid" }, "travelMode": "DRIVE" }
इस उदाहरण में, "Toledo" को स्पेन के बजाय, अमेरिका के ओहियो राज्य का एक शहर माना गया है. इसलिए, अनुरोध से एक खाली कलेक्शन मिलता है. इसका मतलब है कि कोई रास्ता मौजूद नहीं है:
{ [] }
regionCode
पैरामीटर को शामिल करके, एपीआई को किसी खास इलाके के हिसाब से नतीजे दिखाने के लिए कॉन्फ़िगर किया जा सकता है. यह पैरामीटर, क्षेत्र कोड को ccTLD ("टॉप-लेवल डोमेन") के तौर पर दो वर्णों वाली वैल्यू के तौर पर दिखाता है. ज़्यादातर ccTLD कोड, ISO 3166-1 कोड से मेल खाते हैं. हालांकि, कुछ कोड अलग होते हैं. उदाहरण के लिए, यूनाइटेड किंगडम का सीसीटीएलडी "uk" (.co.uk) है, जबकि इसका आईएसओ 3166-1 कोड "gb" है. तकनीकी तौर पर, यह कोड "ग्रेट ब्रिटेन और उत्तरी आयरलैंड के यूनाइटेड किंगडम" की इकाई के लिए है.
"टोलेडो" से "मैड्रिड" के लिए निर्देशों का अनुरोध करने पर, regionCode
पैरामीटर के साथ सही नतीजे मिलते हैं. ऐसा इसलिए होता है, क्योंकि "टोलेडो" को स्पेन के एक शहर के तौर पर समझा जाता है:
{ "origin":{ "address": "Toledo" }, "destination":{ "address": "Madrid" }, "travelMode": "DRIVE", "regionCode": "es" }
जवाब में अब स्पेन के टोलेडो से स्पेन के मैड्रिड तक का रास्ता शामिल है:
{ "routes": [ { "distanceMeters": 75330, "duration": "4137s", ... } ] }
किसी जगह का Plus Code डालना
कई लोगों के पास सटीक पता नहीं होता. इस वजह से, उन्हें डिलीवरी पाना मुश्किल हो सकता है. इसके अलावा, हो सकता है कि जिन लोगों के पास पता हो वे डिलीवरी पाने के लिए, घर के पीछे के दरवाज़े या लोडिंग डॉक जैसी जगहों को चुनना चाहें.
प्लस कोड, उन लोगों या जगहों के लिए मोहल्ले के पते की तरह होते हैं जिनका कोई असल पता नहीं होता. Plus Code, सड़क के नाम और नंबर वाले पतों के बजाय, अक्षांश/देशांतर निर्देशांक पर आधारित होते हैं. साथ ही, इन्हें संख्याओं और अक्षरों के तौर पर दिखाया जाता है.
Google ने Plus Code का इस्तेमाल करके, सभी को पते का फ़ायदा देने के लिए इसे बनाया है. प्लस कोड, कोड में बदली गई जगह का रेफ़रंस होता है. इसे अक्षांश/देशांतर के निर्देशांक से बनाया जाता है. यह एक ऐसा इलाका होता है जिसका क्षेत्रफल 1/8000 डिग्री x 1/8000 डिग्री (भूमध्य रेखा पर करीब 14 मीटर x 14 मीटर) या उससे कम होता है. Plus Codes का इस्तेमाल, सड़क के पते के विकल्प के तौर पर किया जा सकता है. ऐसा उन जगहों पर किया जा सकता है जहां सड़क के पते मौजूद नहीं हैं या जहां बिल्डिंग के नंबर नहीं हैं या सड़कों के नाम नहीं हैं.
Plus Codes को ग्लोबल कोड या कंपाउंड कोड के तौर पर फ़ॉर्मैट किया जाना चाहिए:
- ग्लोबल कोड में चार वर्णों का एरिया कोड और छह वर्णों या उससे ज़्यादा वर्णों का लोकल कोड होता है.
उदाहरण के लिए, "1600 Amphitheatre Parkway, Mountain View, CA" पते के लिए ग्लोबल कोड "849V" और लोकल कोड "CWC8+R9" है. इसके बाद, जगह की वैल्यू को "849VCWC8+R9" के तौर पर बताने के लिए, 10 वर्णों वाले पूरे प्लस कोड का इस्तेमाल किया जाता है.
- कंपाउंड कोड में, 6 या उससे ज़्यादा वर्णों वाला लोकल कोड और साफ़ तौर पर बताई गई जगह शामिल होती है.
उदाहरण के लिए, "450 Serra Mall, Stanford, CA 94305, USA" पते का स्थानीय कोड "CRHJ+C3" है. कंपाउंड पते के लिए, स्थानीय कोड को शहर, राज्य, पिन कोड, और देश के हिस्से के साथ "CRHJ+C3 स्टैनफ़र्ड, CA 94305, USA" के फ़ॉर्मैट में जोड़ें.
उदाहरण के लिए, Plus Code का इस्तेमाल करके, रास्ते
origin
औरdestination
के लिए वेपन पॉइंट तय करके, रास्ते का हिसाब लगाएं:{ "origin":{ "address": "849VCWC8+R9" }, "destination":{ "address": "CRHJ+C3 Stanford, CA 94305, USA" }, "travelMode": "DRIVE" }
Google Maps Platform के एपीआई में प्लस कोड का इस्तेमाल किया जा सकता है. इनमें ये एपीआई शामिल हैं: जगह की जानकारी अपने-आप भरने की सुविधा, जगह की जानकारी, Directions API, और Geocoding API. उदाहरण के लिए, Geocoding API का इस्तेमाल करके, अक्षांश/देशांतर निर्देशांक के ज़रिए बताई गई जगह को रिवर्स जियोकोडिंग किया जा सकता है. इससे, जगह का प्लस कोड पता चलता है.