वीडियो के विषय से जुड़े मुख्य कॉन्सेप्ट

आइसोक्रोन जनरेट करने के लिए, एपीआई को यात्रा शुरू करने की जगह, यात्रा का मोड (जैसे, ड्राइविंग, दोपहिया वाहन, साइकल चलाना या पैदल चलना), और समयसीमा की जानकारी दें. आपके पास रूटिंग की सेटिंग और पॉलीगॉन के विज़ुअल को अडजस्ट करने का विकल्प भी होता है.

यात्रा के मोड

परिवहन के मोड की जानकारी देने के लिए, ज़रूरी travelMode (travel_mode) पैरामीटर का इस्तेमाल करें:

  • DRIVE: यह फ़ंक्शन, किसी पैसेंजर कार के लिए, ड्राइव करने लायक सड़कों पर पहुंचने की क्षमता का हिसाब लगाता है. इसके लिए, वह पोस्ट की गई स्पीड लिमिट, सड़कों की हैरारकी, टर्न पेनल्टी, और लाइव ट्रैफ़िक का हाल (ज़रूरी नहीं) का इस्तेमाल करता है.
  • TWO_WHEELER: यह मोड, दोपहिया वाहन (जैसे, मोटरसाइकिल या स्कूटर) के लिए, पैदल या ड्राइव करके पहुंचने की जगह का हिसाब लगाता है. इसके लिए, यह मोड के हिसाब से सड़क के ऐक्सेस के नियमों का इस्तेमाल करता है. साथ ही, तेज़ रफ़्तार वाली सड़कों पर DRIVE की तुलना में कम रफ़्तार का इस्तेमाल करता है. इस वजह से, TWO_WHEELER का आइसोक्रोन आम तौर पर, BICYCLE से बड़े इलाके को कवर करता है. हालांकि, तेज़ रफ़्तार वाले हाइवे पर यह DRIVE से छोटे इलाके को कवर करता है.
  • BICYCLE: यह साइकल चलाने वाले व्यक्ति के लिए, पैदल या ड्राइव करके पहुंचने की जगह का हिसाब लगाता है. इसके लिए, यह साइकल चलाने के लिए उपलब्ध सड़कों, साइकल के रास्तों, और शेयर किए गए रास्तों का इस्तेमाल करता है. साथ ही, सड़क के टाइप और ढलान के हिसाब से स्पीड को अडजस्ट करता है. इसमें मोटरवे और सीमित ऐक्सेस वाले फ़्रीवे शामिल नहीं होते.
  • WALK: इससे पैदल चलने वाले लोगों के लिए, फ़ुटपाथ, पगडंडियों, और पैदल चलने के लिए उपलब्ध सड़कों पर पहुंचने की जगह का हिसाब लगाया जाता है. इसमें पैदल चलने की रफ़्तार को ढलान के हिसाब से अडजस्ट किया जाता है. पैदल चलने वाले लोगों के लिए, वन-वे ट्रैफ़िक की पाबंदियां लागू नहीं होतीं.

समयसीमा

सेवा के लिए मुख्य शर्त travelDuration (travel_duration) है. इससे कैलकुलेशन के लिए समयावधि तय होती है.

  • कम से कम और ज़्यादा से ज़्यादा अवधि: अवधि कम से कम "1s" (1 सेकंड) होनी चाहिए. शून्य ("0s"), नेगेटिव अवधि, और एक सेकंड से कम की अवधि (जैसे कि "0.5s") के लिए, 400 INVALID_ARGUMENT गड़बड़ी दिखती है. एपीआई, DRIVE और TWO_WHEELER मोड के लिए, यात्रा में लगने वाले समय के तौर पर ज़्यादा से ज़्यादा 3,600 सेकंड (1 घंटा) की वैल्यू का इस्तेमाल कर सकता है. वहीं, WALK और BICYCLE मोड के लिए, ज़्यादा से ज़्यादा 7,200 सेकंड (2 घंटे) की वैल्यू का इस्तेमाल कर सकता है.
  • पॉलीगॉन का कम से कम साइज़: एपीआई, सड़क के उन हिस्सों को स्पेशल ग्रिड सेल में बदल देता है जहां तक पहुंचा जा सकता है. इसलिए, बहुत कम समय के लिए, स्नैप किए गए ऑरिजिन के आस-पास के ग्रिड सेल को कवर करने वाला एक छोटा पॉलीगॉन दिखता है.
  • परफ़ॉर्मेंस: यात्रा में लगने वाले समय का हिसाब, अनुरोध की गई अवधि और यात्रा के लिए चुने गए मोड के हिसाब से लगाया जाता है. एक घंटे की ड्राइविंग आइसोक्रोन, एक घंटे की पैदल चलने वाली आइसोक्रोन की तुलना में काफ़ी बड़े भौगोलिक इलाके और सड़क नेटवर्क को कवर करती है. इसकी वजह से, ड्राइविंग के अनुरोध के लिए इंतज़ार का समय ज़्यादा होता है.
  • फ़ॉर्मैटिंग: एपीआई, google.protobuf.Duration का इस्तेमाल करता है. इसलिए, अवधि को पूर्णांक के बजाय, "s" पर खत्म होने वाली स्ट्रिंग के तौर पर फ़ॉर्मैट किया जाना चाहिए. उदाहरण के लिए, "3600s".

शुरुआती पॉइंट और रोड स्नैपिंग

आइसोक्रोन के लिए शुरुआती पॉइंट को दो तरीकों से तय किया जा सकता है:

  • निर्देशांक (location): अक्षांश और देशांतर का जोड़ा. latitude ([-90, 90] में) और longitude ([-180, 180] में), दोनों की जानकारी दें. अगर इनमें से किसी एक की जानकारी नहीं दी जाती है, तो एपीआई उसे 0.0 के तौर पर मानता है. इससे पॉइंट, भूमध्य रेखा या प्राइम मेरिडियन पर सेट हो जाता है. अगर दोनों ({}) को शामिल नहीं किया जाता है या (0, 0) भेजा जाता है, तो एपीआई 400 INVALID_ARGUMENT गड़बड़ी का मैसेज दिखाता है.
  • जगह के आईडी (place): Google Maps पर किसी जगह का यूनीक आइडेंटिफ़ायर. जगह का आईडी देने पर, सेवा उस जगह को उसके सेंट्रॉइड कोऑर्डिनेट में बदल देती है. साथ ही, उस पॉइंट को सबसे नज़दीकी सड़क पर स्नैप कर देती है. places/ से शुरू होने वाले रिसॉर्स नेम फ़ॉर्मैट का इस्तेमाल करें. उदाहरण के लिए, places/ChIJIQBpAG2ahYAR_6128GcTUEo. places/ प्रीफ़िक्स के बिना भी जगह का आईडी इस्तेमाल किया जा सकता है. जगह के आईडी के बारे में ज़्यादा जानकारी के लिए, जगह के आईडी देखें.

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

  • स्मार्ट स्नैपिंग: यह सेवा, आपके शुरुआती पॉइंट को सबसे नज़दीकी सड़क सेगमेंट पर स्नैप करने की कोशिश करती है.
  • मोड के बारे में जानकारी: स्नैपिंग लॉजिक, आपके travel_mode को ध्यान में रखता है. अगर आपने DRIVE या TWO_WHEELER का अनुरोध किया है, तो एपीआई सिर्फ़ पैदल चलने वालों के लिए बने रास्तों को अनदेखा कर देता है और आस-पास की ऐसी सड़क ढूंढता है जिस पर गाड़ी चलाई जा सके. WALK का अनुरोध करने पर, एपीआई पैदल चलने के रास्तों और फ़ुटपाथ को प्राथमिकता देता है.
  • काम न करने के मामले: अगर एपीआई को आपके शुरुआती पॉइंट की ज़्यादा से ज़्यादा स्नैपिंग दूरी (करीब 200 मीटर या WALK और BICYCLE के लिए इससे कम) के अंदर सड़क का कोई सही सेगमेंट नहीं मिलता है, तो एपीआई 404 NOT_FOUND गड़बड़ी दिखाता है. बड़ी भौगोलिक विशेषताओं (जैसे, पार्क, कैंपस या खूबसूरत नज़ारे वाली जगहें) में, जगह के आईडी का सेंट्रॉइड, यात्रा के मोड के लिए इस्तेमाल की जा सकने वाली सबसे नज़दीकी सड़क से स्नैप करने की दूरी से ज़्यादा हो सकता है. ऐसे मामलों में, सड़क के प्रवेश द्वार के सटीक location निर्देशांक पास करें.

यात्रा की दिशा (इनबाउंड बनाम आउटबाउंड)

travelDirection (travel_direction) पैरामीटर का इस्तेमाल करके, इनबाउंड और आउटबाउंड, दोनों तरह की रीचबिलिटी का हिसाब लगाया जा सकता है:

  • FROM (Outbound): यह तय समयसीमा के अंदर, शुरुआत की जगह से पहुंचने लायक इलाके का हिसाब लगाता है. यह डिलीवरी ज़ोन या सेवा कवरेज जैसे मामलों के लिए सही है.
  • TO (इनबाउंड): इससे उस इलाके का पता चलता है जहां से तय समयसीमा के अंदर, शुरुआती पॉइंट तक यात्रा की जा सकती है. यह कैचमेंट ज़ोन तय करने के लिए सही है. जैसे, कर्मचारी किसी सेंट्रल ऑफ़िस तक पहुंचने के लिए कहां से यात्रा कर सकते हैं.

ट्रैफ़िक के बारे में जानकारी

routingPreference (routing_preference) पैरामीटर की मदद से, यह कंट्रोल करें कि ट्रैफ़िक डेटा, जनरेट किए गए पॉलीगॉन पर कैसे असर डालता है:

  • TRAFFIC_UNAWARE (डिफ़ॉल्ट): यह आइसोक्रोन पॉलीगॉन जनरेट करने के लिए, फ़्री-फ़्लो स्पीड लिमिट और सड़क की हैरारकी का इस्तेमाल करता है. इससे एक डिटरमिनिस्टिक शेप बनता है, जो दिन के समय के हिसाब से नहीं बदलता. यह पैरामीटर, सामान्य विश्लेषण या बेसलाइन सिनैरियो की प्लानिंग के लिए सबसे सही है.
  • TRAFFIC_AWARE: यह अनुरोध प्रोसेस होने के समय, ट्रैफ़िक के लाइव हाल का इस्तेमाल करके आइसोक्रोन का हिसाब लगाता है. v1 में, आने या जाने के लिए, आने वाले समय या बीते समय के कस्टम टाइमस्टैंप को कॉन्फ़िगर नहीं किया जा सकता. इस वजह से, ट्रैफ़िक ज़्यादा होने पर, पैदल या ड्राइव करके पहुंचने की जगह का दायरा कम हो जाता है और ट्रैफ़िक कम होने पर यह दायरा बढ़ जाता है. ट्रैफ़िक कम होने पर, TRAFFIC_AWARE और TRAFFIC_UNAWARE से मिलने वाले पॉलीगॉन करीब-करीब एक जैसे हो सकते हैं. ध्यान दें: ट्रैफ़िक के हिसाब से रास्ता दिखाने की सुविधा सिर्फ़ तब काम करती है, जब travelMode को DRIVE या TWO_WHEELER पर सेट किया गया हो.

स्मूदिंग और फ़िडेलिटी

polygonFidelity (polygon_fidelity) और enableSmoothing (enable_smoothing) पैरामीटर का इस्तेमाल करके, आउटपुट पॉलीगॉन के रंग-रूप और सटीक जानकारी को पसंद के मुताबिक बनाया जा सकता है. ये विकल्प अलग-अलग होते हैं, लेकिन ये साथ मिलकर फ़ाइनल शेप तय करते हैं.

  • polygonFidelity: यह पैरामीटर, स्पेशल ग्रिड सेल के रिज़ॉल्यूशन को कंट्रोल करता है. इसका इस्तेमाल, पैदल या ड्राइव करके पहुंचने की जगह की अनुमानित सीमा तय करने के लिए किया जाता है:

    • LOW: यह सबसे बड़े ग्रिड सेल का इस्तेमाल करता है. ये सेल कई सौ मीटर तक फैले होते हैं. यह तरीका, कम वर्टिसेस और बिना किसी गैप के बड़े इलाकों को कवर करने के लिए सबसे सही है. इससे एक सामान्य आकार बनता है, जो संकरी सड़कों के आस-पास के इलाकों को ज़्यादा दिखा सकता है.
    • MEDIUM: सटीक जानकारी और वर्टेक्स की संख्या के बीच संतुलन.
    • HIGH: इसमें सबसे छोटे ग्रिड सेल का इस्तेमाल किया जाता है. ये करीब 100 से 150 मीटर के होते हैं. इससे, सड़क नेटवर्क के हिसाब से बेहतर नतीजे मिलते हैं. हालांकि, जहां सड़क नेटवर्क कम है वहां अंदरूनी हिस्से में खाली जगहें दिख सकती हैं.
    • POLYGON_FIDELITY_UNSPECIFIED: अगर इसकी जानकारी नहीं दी जाती है, तो सेवा यात्रा के मोड और अवधि के आधार पर रिज़ॉल्यूशन को अपने-आप चुनती है. इसके लिए, कम अवधि और WALK के लिए बेहतर सेल और लंबी अवधि के लिए मोटे सेल का इस्तेमाल किया जाता है. अलग-अलग समयावधि या यात्रा के मोड के लिए, आइसोक्रोन की तुलना करने के लिए, polygonFidelity को साफ़ तौर पर सेट करें.
      हाई, मीडियम, और लो पॉलीगॉन फ़िडेलिटी
      ज़्यादा, मीडियम, और कम पॉलीगॉन फ़िडेलिटी
  • enableSmoothing: इससे यह कंट्रोल किया जाता है कि फ़िडेलिटी से तय किए गए ग्रिड सेल के किनारों को राउंड ऑफ़ किया जाए या नहीं.

    • false (Raw): यह डिफ़ॉल्ट फ़ॉर्मैट है. यह ग्रिड के हिसाब से अलाइन की गई बाउंड्री दिखाता है. किनारे, ग्रिड सेल के साथ-साथ स्टेप के तौर पर दिखते हैं. यह सटीक विश्लेषण के लिए सबसे सही है. जैसे, पॉइंट-इन-पॉलीगॉन टेस्ट.
    • true (स्मूद): विज़ुअल मैप डिसप्ले के लिए, शार्प कोनों को गोल करता है. साथ ही, हर रिंग के एरिया को करीब-करीब सुरक्षित रखता है. बाउंड्री अब ग्रिड सेल के हिसाब से नहीं बनती.
      स्मूथिंग के साथ और उसके बिना आइसोक्रोन
      स्मूथिंग के साथ और उसके बिना आइसोक्रोन