Isochrones API के बारे में अक्सर पूछे जाने वाले सवाल

पैदल चलने या साइकल चलाने के लिए, दो घंटे तक के आइसोक्रोन का अनुरोध क्यों किया जा सकता है, लेकिन गाड़ी चलाने के लिए सिर्फ़ एक घंटे तक के आइसोक्रोन का अनुरोध क्यों किया जा सकता है?

यह सीमा, कैलकुलेशन की कंप्यूटेशनल जटिलता पर आधारित होती है. कोई वाहन, पैदल चलने वाले व्यक्ति या साइकल चलाने वाले व्यक्ति की तुलना में, उसी अवधि में काफ़ी ज़्यादा दूरी तय करता है. इसका मतलब है कि सड़क नेटवर्क का विश्लेषण करने के लिए, उसे काफ़ी ज़्यादा डेटा की ज़रूरत होती है. ड्राइविंग के लिए, ज़्यादा से ज़्यादा एक घंटे (3,600 सेकंड) का समय तय किया गया है. इससे यह पक्का किया जा सकता है कि एपीआई, रीयल-टाइम में तेज़ी से जवाब दे सके. पैदल चलने और साइकल चलाने के लिए, ज़्यादा से ज़्यादा दो घंटे (7,200 सेकंड) का समय तय किया गया है.

मैं किसी जगह तक पहुंचने में लगने वाले समय के हिसाब से, "घर से दफ़्तर के रास्ते" के लिए आइसोक्रोन (यात्रा में लगने वाला समय) की गणना कैसे करूं? इसके उलट, किसी जगह से यात्रा शुरू करने में लगने वाले समय के हिसाब से आइसोक्रोन की गणना कैसे करूं?

v1 एपीआई में, इनबाउंड और आउटबाउंड, दोनों तरह की कैलकुलेशन की जा सकती हैं. इसके लिए, travel_direction पैरामीटर का इस्तेमाल करें:

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

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

कभी-कभी, लौटाया गया पॉलीगॉन ब्लॉक जैसा दिखता है या उसके किनारे ऊबड़-खाबड़ होते हैं. ऐसा खास तौर पर, लंबे समय के लिए होता है. जानकारी के लेवल में बदलाव क्यों होता है?

Isochrones API, अनुरोध किए गए travel_duration और travel_mode के आधार पर, अपनी स्पेशल कैलकुलेशन ग्रिड के रिज़ॉल्यूशन को डाइनैमिक तरीके से अडजस्ट करता है:

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

अगर आपको अवधि के हिसाब से नहीं, बल्कि एक जैसा और खास लेवल की जानकारी चाहिए, तो polygon_fidelity को HIGH, MEDIUM या LOW पर सेट करें.

कभी-कभी किसी पार्क, झील या बड़े इंडस्ट्रियल कॉम्प्लेक्स के अंदर मौजूद किसी कोऑर्डिनेट के लिए आइसोक्रोन का अनुरोध करने पर, "नहीं मिला" गड़बड़ी क्यों दिखती है?

आइसोक्रोन एपीआई, सड़कों और रास्तों का इस्तेमाल करके यात्रा के समय का हिसाब लगाता है. अगर आपके अनुरोध किए गए ऑरिजिन के कोऑर्डिनेट, किसी मान्यता प्राप्त सड़क पर मौजूद नहीं हैं, तो एपीआई को हिसाब लगाने से पहले, पॉइंट को सबसे नज़दीकी और काम करने वाले सेगमेंट पर "स्नैप" करना होगा.

यात्रा के हर मोड के लिए, स्नैपिंग की ज़्यादा से ज़्यादा दूरी का थ्रेशोल्ड तय होता है:

  • DRIVE: 200 मीटर (इसमें सिर्फ़ पैदल चलने के रास्तों को शामिल नहीं किया जाता).
  • BICYCLE: 180 मीटर.
  • WALK: 150 मीटर.

अगर आपका ऑरिजिन कोऑर्डिनेट, इन थ्रेशोल्ड से ज़्यादा दूरी पर है, तो स्नैपिंग नहीं हो पाएगी. साथ ही, एपीआई NOT_FOUND गड़बड़ी का मैसेज दिखाएगा. इस समस्या को हल करने के लिए, पक्का करें कि आपके निर्देशांक किसी सार्वजनिक सड़क या रास्ते के आस-पास हों.

जब मैं अपने मैप पर GeoJSON रिस्पॉन्स रेंडर करता हूं, तो शेप गलत जगह पर दिखता है, खराब हो जाता है या रेंडर नहीं होता. इसकी वजह क्या है?

ऐसा अक्सर, निर्देशांकों के क्रम में अंतर होने की वजह से होता है.

GeoJSON स्टैंडर्ड (RFC 7946) के मुताबिक, Isochrones API, [longitude, latitude] के क्रम में कोऑर्डिनेट दिखाता है. हालांकि, Google Maps JavaScript API और मोबाइल मैप के कई कॉम्पोनेंट सहित कई मैपिंग एसडीके, [latitude, longitude] के क्रम में निर्देशांक या LatLng ऑब्जेक्ट की उम्मीद करते हैं.

अगर मैप रेंडरिंग सही नहीं है, तो आपको GeoJSON पेलोड में मौजूद निर्देशांकों को लूप करना होगा. साथ ही, मैप एसडीके को वैल्यू पास करने से पहले, उन्हें ट्रांसपोज़ करना होगा.

मेरे आइसोक्रोन पॉलीगॉन में "होल" क्यों हैं और क्या मुझे इसके बजाय सॉलिड शेप मिल सकता है?

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

बाहरी v1 API, अपने-आप होल हटाने के लिए कोई पैरामीटर उपलब्ध नहीं कराता. अगर आपके ऐप्लिकेशन को सॉलिड बाउंड्री की ज़रूरत है, जैसे कि पॉइंट-इन-पॉलीगॉन कंटेनमेंट की जांच करने के लिए, तो ये काम किए जा सकते हैं:

  • polygon_fidelity पैरामीटर को MEDIUM या LOW पर सेट करें, ताकि एल्गोरिदम को इन इंटरनल गैप को सामान्य बनाने और मर्ज करने के लिए बढ़ावा दिया जा सके.
  • GeoJSON को पार्स करने के लिए, क्लाइंट-साइड जीआईएस लाइब्रेरी (जैसे, Turf.js) का इस्तेमाल करें. साथ ही, सिर्फ़ पहले कोऑर्डिनेट रिंग (बाहरी शेल) को एक्सट्रैक्ट करें. इसके बाद, अंदर की सभी रिंग (होल) को खारिज कर दें.

क्या मुझे बैकएंड स्पेशल विश्लेषण के लिए, enable_smoothing विकल्प चालू करना चाहिए?

नहीं. enable_smoothing पैरामीटर को सिर्फ़ विज़ुअल के लिए डिज़ाइन किया गया है. यह पैरामीटर, कैलकुलेशन ग्रिड के नुकीले कोनों को गोल कर देता है, ताकि मैप पर शेप ऑर्गैनिक दिखे.

सटीक स्पैटियल विश्लेषण के लिए, स्मूदिंग का सुझाव नहीं दिया जाता. ऐसा इसलिए, क्योंकि इससे वर्टेक्स बदल जाते हैं और सीमाएं थोड़ी बदल जाती हैं. बैकएंड कैलकुलेशन, डेटाबेस क्वेरी या पॉइंट-इन-पॉलीगॉन टेस्ट के लिए, enable_smoothing को false पर सेट करें. इससे यह पक्का किया जा सकेगा कि गणित के हिसाब से सटीक कैलकुलेट की गई सीमा का इस्तेमाल किया जा रहा है.