रूटिंग सारांश की गणना करें

टेक्स्ट सर्च (नया) या आस-पास की जगहें खोजने की सुविधा (नई) का इस्तेमाल करके, जवाब में हर जगह तक पहुंचने में लगने वाले समय और दूरी का हिसाब लगाने के लिए:

  1. रूटिंग के ऑरिजिन के अक्षांश और देशांतर के निर्देशांक बताने के लिए, अनुरोध में routingParameters.origin पैरामीटर पास करें. यह पैरामीटर में प्रत्येक स्थान की अवधि और दूरी की गणना करने की आवश्यकता है जवाब.

  2. फ़ील्ड मास्क में routingSummaries शामिल करें, ताकि रिस्पॉन्स में routingSummaries कलेक्शन शामिल हो. इस अरे में, कुल समय और दूरी की जानकारी शामिल है रूटिंग ऑरिजिन से, रिस्पॉन्स में हर जगह पर.

टेक्स्ट से खोजें (नया) इस्तेमाल करें

नीचे दिए गए अनुरोध में, टेक्स्ट सर्च (नया) के रिस्पॉन्स में, हर जगह तक पहुंचने में लगने वाले समय और दूरी का हिसाब लगाया जाता है:

  curl -X POST -d '{
    "textQuery" : "Spicy Vegetarian Food in Sydney, Australia",
    "routingParameters": {
      "origin": {
        "latitude": -33.8688,
        "longitude": 151.1957362
      }
    }
  }' \
  -H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
  -H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
  'https://places.googleapis.com/v1/places:searchText'

रिस्पॉन्स में दो JSON कलेक्शन होते हैं: places कलेक्शन में मैच होने वाली जगहें होती हैं और routingSummaries कलेक्शन में हर जगह की दूरी और वहां पहुंचने में लगने वाला समय होता है:

{
  "places": [
    {
      object (Place)
    }
  ]
  "routingSummaries": [
    {
      "legs": [
        object (Leg)
      ]
    }
  ]
}

routingSummaries कलेक्शन में मौजूद हर एलिमेंट, places कलेक्शन में मौजूद उसी एलिमेंट की जगह पर होता है. इसका मतलब है कि routingSummaries[0] पर मौजूद एलिमेंट, places[0] पर मौजूद जगह से जुड़ा है.

routingSummaries की ऐरे की लंबाई, places की ऐरे की लंबाई के बराबर होनी चाहिए. अगर किसी जगह के लिए routingSummary उपलब्ध नहीं है, तो ऐरे की एंट्री खाली होती है.

क्योंकि यह उदाहरण रूटिंग से अवधि और दूरी की गणना करता है हर जगह की उत्पत्ति होती है, तो जवाब के legs फ़ील्ड में एक ही Leg होता है वह ऑब्जेक्ट जिसमें रूटिंग ऑरिजिन से duration और distanceMeters शामिल हैं स्थान के लिए:

{
  "places": [
    {
      "formattedAddress": "1, Westfield Sydney Central Plaza, 450 George St, Sydney NSW 2000, Australia",
      "displayName": {
        "text": "Gözleme King Sydney",
        "languageCode": "en"
      }
    },
    {
      "formattedAddress": "367 Pitt St, Sydney NSW 2000, Australia",
      "priceLevel": "PRICE_LEVEL_MODERATE",
      "displayName": {
        "text": "Mother Chu's Vegetarian Kitchen",
        "languageCode": "en"
      }
    },
    …
  ]
  "routingSummaries": [
    {
      "legs": [
        {
          "duration": "597s",
          "distanceMeters": 2607
        }
      ]
    },
    {
      "legs": [
        {
          "duration": "562s",
          "distanceMeters": 2345
        }
      ]
    },
   …
  ]
}

इस उदाहरण से, यह देखा जा सकता है कि रूटिंग की दूरी और दूरी नतीजों में पहले स्थान की उत्पत्ति 597 सेकंड और 2607 मीटर है.

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

  curl -X POST -d '{
    "includedTypes": ["restaurant"],
    "maxResultCount": 10,
    "locationRestriction": {
      "circle": {
        "center": {
          "latitude": -33.8688,
          "longitude": 151.1957362},
        "radius": 500.0
      }
    },
    "routingParameters": {
      "origin": {
        "latitude": -33.8688,
        "longitude": 151.1957362
      }
    }
  }' \
  -H 'Content-Type: application/json' -H "X-Goog-Api-Key:API_KEY" \
  -H "X-Goog-FieldMask: places.displayName,routingSummaries" \
  https://places.googleapis.com/v1/places:searchNearby

आपको locationRestriction और का इस्तेमाल किया जा सकता है. उदाहरण के लिए, locationRestriction को सिडनी के केंद्र बिंदु पर सेट किया जाता है, ताकि खोज के नतीजों में उस सर्कल को प्राथमिकता दी जा सके. लेकिन आपने तो मूल स्थान को आपके घर के निर्देशांकों पर रूट किया जा रहा है, जिसका मतलब किसी अन्य स्थान से है के बारे में चर्चा करनी होगी. इसके बाद, अनुरोध के आधार पर खोज के नतीजों को सर्कल के हिसाब से दिखाया जाता है. साथ ही, आपके घर की जगह के आधार पर, रास्ते की खास जानकारी का हिसाब लगाया जाता है.

यात्रा के विकल्प बताएं

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

अगले उदाहरण में, आपने यात्रा मोड को DRIVE के तौर पर बताया है और इससे बचने के लिए हाइवे:

curl -X POST -d '{
  "textQuery" : "Spicy Vegetarian Food in Sydney, Australia",
  "routingParameters": {
    "origin": {
      "latitude": -33.8688,
      "longitude": 151.1957362
    },
    "travelMode":"DRIVE",
    "routeModifiers": {
      "avoidHighways": true
    }
  }
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.displayName,places.formattedAddress,places.priceLevel,routingSummaries' \
'https://places.googleapis.com/v1/places:searchText'