एक रास्ता तय करें, जिस पर से होकर गुज़रना है

डिफ़ॉल्ट रूप से, बीच के रास्ते के वेपॉइंट का इस्तेमाल, यात्रियों को लेने और छोड़ने के लिए किया जाता है. हालांकि, यह भी बताया जा सकता है कि किसी बीच के रास्ते के वेपॉइंट पर सिर्फ़ गुज़रना है.

किसी रास्ते में ऑरिजिन वॉयपॉइंट, पास-थ्रू इंटरमीडिएट वॉयपॉइंट, और डेस्टिनेशन वॉयपॉइंट शामिल होने पर, उस रास्ते में सिर्फ़ एक लेग होता है. यह लेग, ऑरिजिन और डेस्टिनेशन को जोड़ता है. साथ ही, इंटरमीडिएट वॉयपॉइंट (जिसे via कहा जाता है) से होकर गुज़रता है.

किसी इंटरमीडिएट वेपॉइंट को पास-थ्रू वेपॉइंट के तौर पर कॉन्फ़िगर करने के लिए, वेपॉइंट की via प्रॉपर्टी को true पर सेट करें. इसके लिए, वेपॉइंट (REST) या वेपॉइंट (gRPC) में से किसी एक का इस्तेमाल करें.

via प्रॉपर्टी, सबसे ज़्यादा तब असरदार होती है, जब उपयोगकर्ता मैप पर व्यूपॉइंट को खींचकर, रास्ते बनाता है. ऐसा करने से, उपयोगकर्ता को यह देखने में मदद मिलती है कि रीयल-टाइम में आखिरी रास्ता कैसा दिख सकता है. साथ ही, यह पक्का करने में भी मदद मिलती है कि वे रास्ते, कंप्यूट रूट के लिए ऐक्सेस किए जा सकने वाली जगहों पर हों.

यहां दिए गए उदाहरण में, किसी बीच के रास्ते के वेपॉइंट को पास-थ्रू वेपॉइंट के तौर पर मार्क करने का तरीका बताया गया है.

{
  "location": {
    "latLng": {
      "latitude":37.419734,
      "longitude":-122.0827784
    }
  },
  "via": true
}

बीच के रास्ते पर मौजूद जगहों के आईडी ऐक्सेस करना

अगर किसी ऑरिजिन, डेस्टिनेशन या इंटरमीडिएट वेपॉइंट की जगह को पता स्ट्रिंग या प्लस कोड के तौर पर बताया जाता है, तो एपीआई सबसे काम की जगह ढूंढने की कोशिश करता है, जिसमें उसका जगह का आईडी मौजूद हो. नतीजों में मौजूद geocodingResults.intermediates ऐरे में, वैकल्पिक जगह की जानकारी के साथ-साथ, व्यूपॉइंट की जगह का प्लेस आईडी भी शामिल होता है.

intermediates कलेक्शन के हर एलिमेंट के लिए, intermediateWaypointRequestIndex प्रॉपर्टी का इस्तेमाल करके यह तय करें कि अनुरोध में मौजूद कौनसा इंटरमीडिएट वॉयपॉइंट, रिस्पॉन्स में मौजूद प्लेस आईडी से मेल खाता है.

उदाहरण के लिए:

  • आपने अनुरोध में तीन इंटरमीडिएट वेपॉइंट तय किए हैं. इनमें से दो वॉइसपॉइंट के लिए पते की स्ट्रिंग दी गई है और एक के लिए अक्षांश/देशांतर निर्देशांक.

  • नतीजों में geocodingResults कलेक्शन दिखाने के लिए, रिस्पॉन्स फ़ील्ड मास्क में geocodingResults शामिल करें.

curl -X POST -d '{
  "origin":{
    "address": "1600 Amphitheatre Parkway, Mountain View, CA"
  },
  "destination":{
    "address": "24 Willie Mays Plaza, San Francisco, CA 94107"
  },
  "intermediates": [
    {
      "address": "450 Serra Mall, Stanford, CA 94305, USA"
    },
    {
      "location":{
        "latLng":{
          "latitude": 37.419734,
          "longitude": -122.0807784
        }
      }
    },
    {
      "address": "1836 El Camino Real, Redwood City, CA 94063"
    }
  ],
  "travelMode": "DRIVE",
}'
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: YOUR_API_KEY'
-H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.legs,geocodingResults'
'https://routes.googleapis.com/directions/v2:computeRoutes'

जवाब में geocodingResults कलेक्शन शामिल होता है. इसमें ऑरिजिन, डेस्टिनेशन, और तीन में से दो वेपॉइंट के लिए प्लेस आईडी होता है. अनुरोध के इंडेक्स 0 और 2 में ये वेपॉइंट हैं. अनुरोध के इंडेक्स 1 में मौजूद वॉयपॉइंट को अक्षांश/देशांतर निर्देशांक का इस्तेमाल करके तय किया गया था. इसलिए, इसे रिस्पॉन्स में geocodingResults कलेक्शन से हटा दिया गया है.

{
  "routes": [{...}],
  "geocodingResults": {
    "origin": {
      "geocoderStatus": {},
      "type": [
        "premise"
      ],
      "placeId": "ChIJj38IfwK6j4ARNcyPDnEGa9g"
    },
    "destination": {
     "geocoderStatus": {},
      "type": [
        "premise"
      ],
      "placeId": "ChIJI7ES6tl_j4ARVpDZoXbWAiY"
    },
    "intermediates": [
      {
        "geocoderStatus": {},
        "intermediateWaypointRequestIndex": 0,
        "type": [
            "street_address"
        ],
        "placeId": "ChIJvdLMGyq7j4ARScE5tWX_C0Y"
      },
      {
        "geocoderStatus": {},
        "intermediateWaypointRequestIndex": 2,
        "type": [
          "premise"
        ],
        "placeId": "ChIJkTc0GKajj4AR9UMsOSHwGD0"
      }
    ]
  }
}