Method: computeRoutes

यह फ़ंक्शन, टर्मिनल और इंटरमीडिएट वेपॉइंट के सेट के हिसाब से, मुख्य रास्ते के साथ-साथ वैकल्पिक रास्ते भी दिखाता है.

ध्यान दें: इस तरीके के लिए, आपको इनपुट में रिस्पॉन्स फ़ील्ड मास्क तय करना होगा. यूआरएल पैरामीटर $fields या fields का इस्तेमाल करके या एचटीटीपी/gRPC हेडर X-Goog-FieldMask का इस्तेमाल करके, रिस्पॉन्स फ़ील्ड मास्क दिया जा सकता है. उपलब्ध यूआरएल पैरामीटर और हेडर देखें. यह वैल्यू, फ़ील्ड पाथ की कॉमा लगाकर अलग की गई सूची होती है. फ़ील्ड पाथ बनाने के तरीके के बारे में ज़्यादा जानकारी देने वाला दस्तावेज़ देखें.

उदाहरण के लिए, इस तरीके में:

  • मैन्युअल तरीके से जांच करने के लिए, सभी उपलब्ध फ़ील्ड का फ़ील्ड मास्क: X-Goog-FieldMask: *
  • रूट के लेवल पर अवधि, दूरी, और पॉलीलाइन का फ़ील्ड मास्क (उदाहरण के लिए प्रोडक्शन सेटअप): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google, वाइल्डकार्ड (*) रिस्पॉन्स फ़ील्ड मास्क का इस्तेमाल करने या टॉप लेवल (routes) पर फ़ील्ड मास्क तय करने का सुझाव नहीं देता है. इसकी वजह यह है कि:

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

एचटीटीपी अनुरोध

POST https://routes.googleapis.com/directions/v2:computeRoutes

यह यूआरएल, gRPC ट्रांसकोडिंग सिंटैक्स का इस्तेमाल करता है.

अनुरोध का मुख्य भाग

अनुरोध के मुख्य हिस्से में, इस स्ट्रक्चर का डेटा शामिल होता है:

JSON के काेड में दिखाना
{
  "origin": {
    object (Waypoint)
  },
  "destination": {
    object (Waypoint)
  },
  "intermediates": [
    {
      object (Waypoint)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "polylineQuality": enum (PolylineQuality),
  "polylineEncoding": enum (PolylineEncoding),
  "departureTime": string,
  "arrivalTime": string,
  "computeAlternativeRoutes": boolean,
  "routeModifiers": {
    object (RouteModifiers)
  },
  "languageCode": string,
  "regionCode": string,
  "units": enum (Units),
  "optimizeWaypointOrder": boolean,
  "requestedReferenceRoutes": [
    enum (ReferenceRoute)
  ],
  "extraComputations": [
    enum (ExtraComputation)
  ],
  "trafficModel": enum (TrafficModel),
  "transitPreferences": {
    object (TransitPreferences)
  }
}
फ़ील्ड
origin

object (Waypoint)

ज़रूरी है. ऑरिजिन वेपॉइंट.

destination

object (Waypoint)

ज़रूरी है. गंतव्य वेपॉइंट.

intermediates[]

object (Waypoint)

ज़रूरी नहीं. रास्ते में पड़ने वाले वेपॉइंट का सेट (टर्मिनल पॉइंट को छोड़कर). इन वेपॉइंट पर रुकने या इनके पास से गुज़रने के लिए इस्तेमाल किया जाता है. ज़्यादा से ज़्यादा 25 इंटरमीडिएट वेपॉइंट इस्तेमाल किए जा सकते हैं.

travelMode

enum (RouteTravelMode)

ज़रूरी नहीं. इससे यात्रा के साधन के बारे में पता चलता है.

routingPreference

enum (RoutingPreference)

ज़रूरी नहीं. यह तय करता है कि रूट की जानकारी कैसे कैलकुलेट की जाए. सर्वर, चुने गए राउटिंग मोड का इस्तेमाल करके, रास्ते का हिसाब लगाता है. अगर राउटिंग की प्राथमिकता सेट करने पर गड़बड़ी होती है या ज़्यादा समय लगता है, तो गड़बड़ी का मैसेज दिखता है. इस विकल्प को सिर्फ़ तब तय किया जा सकता है, जब travelMode DRIVE या TWO_WHEELER हो. ऐसा न होने पर, अनुरोध पूरा नहीं होगा.

polylineQuality

enum (PolylineQuality)

ज़रूरी नहीं. इस विकल्प से, पॉलीलाइन की क्वालिटी के लिए आपकी प्राथमिकता तय होती है.

polylineEncoding

enum (PolylineEncoding)

ज़रूरी नहीं. इस विकल्प से, पॉलीलाइन के लिए पसंदीदा एन्कोडिंग के बारे में पता चलता है.

departureTime

string (Timestamp format)

ज़रूरी नहीं. रवाना होने का समय. अगर आपने यह वैल्यू सेट नहीं की है, तो यह वैल्यू डिफ़ॉल्ट रूप से उस समय पर सेट हो जाती है जब आपने अनुरोध किया था. ध्यान दें: departureTime को सिर्फ़ तब पुरानी तारीख पर सेट किया जा सकता है, जब RouteTravelMode को TRANSIT पर सेट किया गया हो. बस, मेट्रो वगैरह से की गई यात्राओं की जानकारी, पिछले सात दिनों या आने वाले 100 दिनों तक के लिए उपलब्ध होती है.

यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".

arrivalTime

string (Timestamp format)

ज़रूरी नहीं. पहुंचने का समय. ध्यान दें: अगर अनुरोधों में TRANSIT के अलावा कोई दूसरा RouteTravelMode तय किया जाता है, तो इस फ़ील्ड को अनदेखा कर दिया जाता है. departureTime या arrivalTime में से किसी एक को तय किया जा सकता है, लेकिन दोनों को नहीं. बस, मेट्रो वगैरह से की गई यात्राओं की जानकारी, पिछले सात दिनों या आने वाले 100 दिनों तक के लिए उपलब्ध होती है.

यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".

computeAlternativeRoutes

boolean

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

routeModifiers

object (RouteModifiers)

ज़रूरी नहीं. रास्तों का हिसाब लगाने के तरीके पर असर डालने वाली शर्तों का सेट.

languageCode

string

ज़रूरी नहीं. BCP-47 भाषा कोड, जैसे कि "en-US" या "sr-Latn". ज़्यादा जानकारी के लिए, यूनिकोड लोकल आइडेंटिफ़ायर देखें. इस्तेमाल की जा सकने वाली भाषाओं की सूची देखने के लिए, भाषा से जुड़ी सहायता देखें. यह वैल्यू न देने पर, डिसप्ले भाषा का पता रास्ते के अनुरोध की जगह से लगाया जाता है.

regionCode

string

ज़रूरी नहीं. क्षेत्र का कोड, जिसे ccTLD ("टॉप लेवल डोमेन") के तौर पर दो वर्णों वाली वैल्यू के तौर पर तय किया जाता है. ज़्यादा जानकारी के लिए, देश के कोड के हिसाब से टॉप लेवल डोमेन देखें.

units

enum (Units)

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

optimizeWaypointOrder

boolean

ज़रूरी नहीं. अगर इस विकल्प को 'सही है' पर सेट किया जाता है, तो सेवा, रास्ते के कुल शुल्क को कम करने की कोशिश करती है. इसके लिए, रास्ते में पड़ने वाले इंटरमीडिएट वेपॉइंट का क्रम बदल दिया जाता है. अगर इंटरमीडिएट वेपॉइंट में से कोई भी via वेपॉइंट है, तो अनुरोध पूरा नहीं होगा. नई क्रम संख्या ढूंढने के लिए, ComputeRoutesResponse.routes.optimized_intermediate_waypoint_index का इस्तेमाल करें. अगर X-Goog-FieldMask हेडर में ComputeRoutesResponse.routes.optimized_intermediate_waypoint_index का अनुरोध नहीं किया जाता है, तो अनुरोध पूरा नहीं होगा. अगर optimizeWaypointOrder को 'गलत है' पर सेट किया जाता है, तो ComputeRoutesResponse.optimized_intermediate_waypoint_index खाली होगा.

requestedReferenceRoutes[]

enum (ReferenceRoute)

ज़रूरी नहीं. इससे यह तय किया जाता है कि डिफ़ॉल्ट रूट के अलावा, अनुरोध के हिस्से के तौर पर किन रेफ़रंस रूट का हिसाब लगाया जाए. रेफ़रंस रूट, डिफ़ॉल्ट रूट से अलग होता है. इसे कैलकुलेट करने का मकसद भी अलग होता है. उदाहरण के लिए, FUEL_EFFICIENT रेफ़रंस रूट का हिसाब लगाते समय, कई पैरामीटर को ध्यान में रखा जाता है. इससे ईंधन की कम खपत वाला सबसे सही रूट जनरेट होता है. इस सुविधा का इस्तेमाल करते समय, रास्ते के सुझावों में routeLabels देखें.

extraComputations[]

enum (ExtraComputation)

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

trafficModel

enum (TrafficModel)

ज़रूरी नहीं. ट्रैफ़िक में लगने वाले समय का हिसाब लगाते समय इस्तेमाल की जाने वाली मान्यताओं के बारे में बताता है. इस सेटिंग से, Route और RouteLeg में मौजूद अवधि फ़ील्ड में दिखाई गई वैल्यू पर असर पड़ता है. इस वैल्यू में, ट्रैफ़िक के हिसाब से अनुमानित समय शामिल होता है. यह अनुमान, पिछले समय के औसत के आधार पर लगाया जाता है. TrafficModel सिर्फ़ उन अनुरोधों के लिए उपलब्ध है जिनमें RoutingPreference को TRAFFIC_AWARE_OPTIMAL और RouteTravelMode को DRIVE पर सेट किया गया है. अगर ट्रैफ़िक का अनुरोध किया गया है और TrafficModel की वैल्यू नहीं दी गई है, तो डिफ़ॉल्ट रूप से इसकी वैल्यू BEST_GUESS होती है.

transitPreferences

object (TransitPreferences)

ज़रूरी नहीं. यह उन प्राथमिकताओं के बारे में बताता है जो TRANSIT रास्तों के लिए दिखाए गए रूट पर असर डालती हैं. ध्यान दें: RouteTravelMode को TRANSIT पर सेट करने पर ही, transitPreferences की जानकारी दी जा सकती है.

जवाब का मुख्य भाग

v2.computeRoutes का जवाब देने वाला मैसेज.

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

JSON फ़ॉर्मैट में दिखाया गया है
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
फ़ील्ड
routes[]

object (Route)

compute_alternatives_routes तय करने पर, इसमें कैलकुलेट किए गए रास्तों (ज़्यादा से ज़्यादा तीन) की एक कैटगरी होती है. वहीं, इसे तय न करने पर, इसमें सिर्फ़ एक रास्ता होता है. जब इस ऐरे में कई एंट्री होती हैं, तो पहली एंट्री सबसे ज़्यादा सुझाई गई यात्रा का रास्ता होती है. अगर ऐरे खाली है, तो इसका मतलब है कि कोई रास्ता नहीं मिला.

fallbackInfo

object (FallbackInfo)

कुछ मामलों में, जब सर्वर सभी इनपुट प्राथमिकताओं के साथ रास्ते के नतीजे नहीं दिखा पाता है, तो वह कैलकुलेशन के लिए किसी दूसरे तरीके का इस्तेमाल कर सकता है. फ़ॉलबैक मोड का इस्तेमाल किए जाने पर, इस फ़ील्ड में फ़ॉलबैक रिस्पॉन्स के बारे में पूरी जानकारी होती है. ऐसा न होने पर, इस फ़ील्ड को सेट नहीं किया जाता.

geocodingResults

object (GeocodingResults)

इसमें पतों के तौर पर तय किए गए वेपॉइंट के लिए, जियोकोडिंग के जवाब की जानकारी होती है.

PolylineQuality

वैल्यू का ऐसा सेट जो पॉलीलाइन की क्वालिटी के बारे में बताता है.

Enums
POLYLINE_QUALITY_UNSPECIFIED पॉलीलाइन की क्वालिटी के लिए कोई प्राथमिकता नहीं दी गई है. डिफ़ॉल्ट रूप से, यह OVERVIEW पर सेट होता है.
HIGH_QUALITY यह ज़्यादा क्वालिटी वाली पॉलीलाइन के बारे में बताता है. इसे OVERVIEW से ज़्यादा पॉइंट का इस्तेमाल करके बनाया जाता है. हालांकि, इससे जवाब का साइज़ बढ़ जाता है. ज़्यादा सटीक जानकारी देने के लिए, इस वैल्यू का इस्तेमाल करें.
OVERVIEW यह एक ओवरव्यू पॉलीलाइन तय करता है. इसे कुछ पॉइंट का इस्तेमाल करके बनाया जाता है. रास्ते की खास जानकारी दिखाते समय, इस वैल्यू का इस्तेमाल करें. इस विकल्प का इस्तेमाल करने पर, अनुरोध के लिए इंतज़ार का समय, HIGH_QUALITY विकल्प का इस्तेमाल करने की तुलना में कम होता है.

PolylineEncoding

इससे यह तय किया जाता है कि किस तरह की पॉलीलाइन को वापस लाना है.

Enums
POLYLINE_ENCODING_UNSPECIFIED कोई पॉलीलाइन टाइप प्राथमिकता नहीं दी गई है. डिफ़ॉल्ट रूप से, यह ENCODED_POLYLINE पर सेट होता है.
ENCODED_POLYLINE यह पॉलीलाइन एन्कोडिंग एल्गोरिदम का इस्तेमाल करके एन्कोड की गई पॉलीलाइन के बारे में बताता है.
GEO_JSON_LINESTRING GeoJSON LineString फ़ॉर्मैट का इस्तेमाल करके, पॉलीलाइन तय करता है

ReferenceRoute

ComputeRoutesRequest पर, सहायता पाने के लिए रेफ़रंस रूट.

Enums
REFERENCE_ROUTE_UNSPECIFIED इस्तेमाल नहीं किया जाता. इस वैल्यू वाले अनुरोध पूरे नहीं किए जा सकते.
FUEL_EFFICIENT ईंधन की कम खपत वाला रास्ता.
SHORTER_DISTANCE

कम दूरी वाला रास्ता. यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है.

DRIVE अनुरोधों के लिए, यह सुविधा ड्राइविंग के दौरान मिलने वाली सुविधा के बजाय कम दूरी को प्राथमिकता देती है. उदाहरण के लिए, यह हाइवे के बजाय स्थानीय सड़कों को प्राथमिकता दे सकता है, कच्ची सड़कों पर चल सकता है, पार्किंग लॉट से होकर जा सकता है वगैरह. यह सुविधा ऐसे किसी भी मोड़ या गतिविधि के बारे में जानकारी नहीं देती जिसे Google Maps गैर-कानूनी मानता है.

BICYCLE और TWO_WHEELER के अनुरोधों के लिए, यह सुविधा ऐसे रास्ते दिखाती है जो requestedReferenceRoutes तय न करने पर दिखाए जाते हैं.

यह सुविधा, यात्रा के किसी अन्य तरीके, बीच के वेपॉइंट या optimizeWaypointOrder के साथ काम नहीं करती. ऐसे अनुरोध पूरे नहीं किए जा सकेंगे. हालांकि, इसका इस्तेमाल किसी भी routingPreference के साथ किया जा सकता है.

ExtraComputation

अनुरोध पूरा करते समय, अतिरिक्त कैलकुलेशन की जाती हैं. आने वाले समय में, इसमें अन्य वैल्यू जोड़ी जा सकती हैं.

Enums
EXTRA_COMPUTATION_UNSPECIFIED इस्तेमाल नहीं किया जाता. इस वैल्यू वाले अनुरोध पूरे नहीं किए जा सकेंगे.
TOLLS रास्ते के लिए टोल की जानकारी.
FUEL_CONSUMPTION रास्ते के लिए ईंधन की अनुमानित खपत.
TRAFFIC_ON_POLYLINE रास्ते के लिए, ट्रैफ़िक की जानकारी देने वाली पॉलीलाइन.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstruction को फ़ॉर्मैट किए गए एचटीएमएल टेक्स्ट स्ट्रिंग के तौर पर दिखाया जाता है. इस कॉन्टेंट को जैसा है वैसा ही पढ़ा जाना चाहिए. यह कॉन्टेंट सिर्फ़ दिखाने के लिए है. इसे प्रोग्राम के हिसाब से पार्स न करें.
FLYOVER_INFO_ON_POLYLINE रास्ते के फ़्लाइओवर की जानकारी. यह जानकारी पाने के लिए, routes.polyline_details.flyover_info फ़ील्डमास्क तय करना ज़रूरी है. फ़िलहाल, यह डेटा सिर्फ़ भारत के कुछ महानगरों के लिए उपलब्ध होगा. यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है. इसलिए, एसकेयू/शुल्क में बदलाव हो सकता है.
NARROW_ROAD_INFO_ON_POLYLINE रास्ते की संकरी सड़क की जानकारी. यह जानकारी पाने के लिए, routes.polyline_details.narrow_road_info फ़ील्डमास्क तय करना ज़रूरी है. फ़िलहाल, यह डेटा सिर्फ़ भारत के कुछ महानगरों के लिए उपलब्ध होगा. यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है. इसलिए, एसकेयू/शुल्क में बदलाव हो सकता है.
TUNNEL_INFO_ON_POLYLINE रास्ते में आने वाली सुरंगों के बारे में जानकारी. यह जानकारी पाने के लिए, routes.polyline_details.tunnel_info फ़ील्डमास्क तय करना ज़रूरी है.
BRIDGE_INFO_ON_POLYLINE रास्ते के पुल की जानकारी. यह जानकारी पाने के लिए, routes.polyline_details.bridge_info फ़ील्डमास्क तय करना ज़रूरी है.
SKYWAY_INFO_ON_POLYLINE रास्ते के लिए स्काईवे की जानकारी. यह जानकारी पाने के लिए, routes.polyline_details.skyway_info फ़ील्डमास्क तय करना ज़रूरी है.

रास्ता

इसमें एक ऐसा रास्ता होता है जिसमें सड़क के जुड़े हुए कई सेगमेंट होते हैं. ये सेगमेंट, शुरुआती, आखिरी, और इंटरमीडिएट वेपॉइंट को जोड़ते हैं.

JSON के काेड में दिखाना
{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ],
  "localizedValues": {
    object (RouteLocalizedValues)
  },
  "routeToken": string,
  "polylineDetails": {
    object (PolylineDetails)
  }
}
फ़ील्ड
routeLabels[]

enum (RouteLabel)

Route के लिए लेबल. इनकी मदद से, रास्ते की खास प्रॉपर्टी की पहचान की जा सकती है, ताकि उनकी तुलना अन्य प्रॉपर्टी से की जा सके.

legs[]

object (RouteLeg)

लेग (वेपॉइंट के बीच के पाथ सेगमेंट) का ऐसा कलेक्शन जो रूट बनाता है. हर लेग, दो नॉन-via Waypoints के बीच की यात्रा से जुड़ा होता है. उदाहरण के लिए, अगर किसी रास्ते में कोई इंटरमीडिएट वेपॉइंट नहीं है, तो उसमें सिर्फ़ एक लेग होता है. ऐसे रूट में दो लेग होते हैं जिसमें एक नॉन-via इंटरमीडिएट वेपॉइंट शामिल होता है. जिस रास्ते में एक via इंटरमीडिएट वेपॉइंट शामिल होता है उसमें एक लेग होता है. लेग का क्रम, origin से intermediates से destination तक के वेपॉइंट के क्रम से मेल खाता है.

distanceMeters

integer

रास्ते की दूरी, मीटर में.

duration

string (Duration format)

रास्ते पर चलने में लगने वाला समय. अगर आपने routingPreference को TRAFFIC_UNAWARE पर सेट किया है, तो यह वैल्यू staticDuration के बराबर होगी. अगर आपने routingPreference को TRAFFIC_AWARE या TRAFFIC_AWARE_OPTIMAL पर सेट किया है, तो इस वैल्यू का हिसाब लगाते समय ट्रैफ़िक की स्थितियों को ध्यान में रखा जाता है.

सेकंड में अवधि, जिसमें नौ दशमलव अंक तक हो सकते हैं. इसके आखिर में 's' होता है. उदाहरण: "3.5s".

staticDuration

string (Duration format)

ट्रैफ़िक की स्थिति को ध्यान में रखे बिना, रास्ते से यात्रा करने में लगने वाला समय.

यह सेकंड में अवधि होती है. इसमें नौ दशमलव अंक तक हो सकते हैं. इसके आखिर में 's' होता है. उदाहरण: "3.5s".

polyline

object (Polyline)

पूरे रूट की पॉलीलाइन. यह पॉलीलाइन, सभी legs की मिली-जुली पॉलीलाइन है.

description

string

रास्ते के बारे में जानकारी.

warnings[]

string

रास्ता दिखाते समय दिखने वाली चेतावनियों का कलेक्शन.

viewport

object (Viewport)

पॉलीलाइन का व्यूपोर्ट बाउंडिंग बॉक्स.

travelAdvisory

object (RouteTravelAdvisory)

रास्ते के बारे में अतिरिक्त जानकारी.

optimizedIntermediateWaypointIndex[]

integer

अगर आपने optimizeWaypointOrder को 'सही है' पर सेट किया है, तो इस फ़ील्ड में इंटरमीडिएट वेपॉइंट का ऑप्टिमाइज़ किया गया क्रम शामिल होता है. ऐसा न होने पर, यह फ़ील्ड खाली होता है. उदाहरण के लिए, अगर आपने इनपुट दिया है: शुरुआती जगह: लॉस एंजेलिस; बीच के रास्ते के वेपॉइंट: डैलस, बैंगोर, फ़ीनिक्स; मंज़िल: न्यूयॉर्क; और बीच के रास्ते के वेपॉइंट का ऑप्टिमाइज़ किया गया क्रम फ़ीनिक्स, डैलस, बैंगोर है, तो इस फ़ील्ड में [2, 0, 1] वैल्यू शामिल होंगी. इनपुट में दिए गए पहले इंटरमीडिएट वेपॉइंट के लिए इंडेक्स 0 से शुरू होता है.

localizedValues

object (RouteLocalizedValues)

Route की प्रॉपर्टी के टेक्स्ट फ़ॉर्मैट में दिए गए उदाहरण.

routeToken

string

यह एक ओपेक टोकन है. इसे Navigation SDK को पास किया जा सकता है. इससे नेविगेशन के दौरान रास्ते को फिर से बनाया जा सकता है. साथ ही, रास्ता बदलने की स्थिति में, रास्ता बनाते समय उपयोगकर्ता के मूल मकसद को पूरा किया जा सकता है. इस टोकन को ओपेक ब्लोब के तौर पर माना जाता है. इसकी वैल्यू की तुलना अलग-अलग अनुरोधों के लिए न करें, क्योंकि सेवा से एक ही रूट की जानकारी मिलने पर भी इसकी वैल्यू बदल सकती है.

ध्यान दें: Route.route_token सिर्फ़ उन अनुरोधों के लिए उपलब्ध है जिनमें ComputeRoutesRequest.routing_preference को TRAFFIC_AWARE या TRAFFIC_AWARE_OPTIMAL पर सेट किया गया है. Route.route_token फ़ंक्शन, उन अनुरोधों के लिए काम नहीं करता जिनमें रास्ते में पड़ने वाली जगहों के वेपॉइंट शामिल होते हैं.

polylineDetails

object (PolylineDetails)

इसमें पॉलीलाइन के साथ-साथ जानकारी होती है.

RouteLabel

Route के लिए लेबल. इनकी मदद से, रास्ते की खास प्रॉपर्टी की पहचान की जा सकती है, ताकि उनकी तुलना अन्य प्रॉपर्टी से की जा सके.

Enums
ROUTE_LABEL_UNSPECIFIED डिफ़ॉल्ट - इसका इस्तेमाल नहीं किया जाता.
DEFAULT_ROUTE रास्ते का हिसाब लगाने के लिए, डिफ़ॉल्ट तौर पर "सबसे अच्छा" रूट दिखाया जाता है.
DEFAULT_ROUTE_ALTERNATE डिफ़ॉल्ट रूप से चुने गए "सबसे अच्छे" रास्ते के अलावा कोई दूसरा रास्ता. computeAlternativeRoutes के बारे में जानकारी देने पर, इस तरह के रास्ते दिखाए जाएंगे.
FUEL_EFFICIENT ईंधन की कम खपत वाला रास्ता. इस वैल्यू के साथ लेबल किए गए रास्तों को, ईंधन की खपत जैसे इको पैरामीटर के लिए ऑप्टिमाइज़ किया जाता है.
SHORTER_DISTANCE कम दूरी वाला रास्ता. यह सुविधा एक्सपेरिमेंट के तौर पर उपलब्ध है.

RouteLeg

इसमें नॉन-via वेपॉइंट के बीच का सेगमेंट शामिल होता है.

JSON के काेड में दिखाना
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegLocalizedValues)
  },
  "stepsOverview": {
    object (StepsOverview)
  }
}
फ़ील्ड
distanceMeters

integer

रास्ते के लेग की दूरी, मीटर में.

duration

string (Duration format)

लेग को नेविगेट करने में लगने वाला समय. अगर route_preference को TRAFFIC_UNAWARE पर सेट किया जाता है, तो यह वैल्यू staticDuration के बराबर होती है. अगर route_preference की वैल्यू TRAFFIC_AWARE या TRAFFIC_AWARE_OPTIMAL है, तो इस वैल्यू का हिसाब लगाते समय ट्रैफ़िक की स्थितियों को ध्यान में रखा जाता है.

सेकंड में अवधि, जिसमें नौ दशमलव अंक तक हो सकते हैं. इसके आखिर में 's' होता है. उदाहरण: "3.5s".

staticDuration

string (Duration format)

लेग के हिसाब से यात्रा की अवधि. इसमें ट्रैफ़िक का हाल ध्यान में नहीं रखा जाता.

सेकंड में अवधि, जिसमें नौ दशमलव अंक तक हो सकते हैं. इसके आखिर में 's' होता है. उदाहरण: "3.5s".

polyline

object (Polyline)

इस लेग के लिए पूरी पॉलीलाइन, जिसमें हर step की पॉलीलाइन शामिल होती है.

startLocation

object (Location)

इस लेग के लिए यात्रा शुरू करने की जगह. यह जगह, दी गई origin से अलग हो सकती है. उदाहरण के लिए, अगर दिया गया origin किसी सड़क के पास नहीं है, तो यह सड़क पर मौजूद एक पॉइंट है.

endLocation

object (Location)

इस लेग के खत्म होने की जगह. यह जगह, दी गई destination से अलग हो सकती है. उदाहरण के लिए, अगर दिया गया destination किसी सड़क के पास नहीं है, तो यह सड़क पर मौजूद एक पॉइंट है.

steps[]

object (RouteLegStep)

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

travelAdvisory

object (RouteLegTravelAdvisory)

इसमें ऐसी अतिरिक्त जानकारी होती है जिसके बारे में उपयोगकर्ता को बताया जाना चाहिए. जैसे, रास्ते के किसी हिस्से पर ट्रैफ़िक ज़ोन से जुड़ी पाबंदियां.

localizedValues

object (RouteLegLocalizedValues)

RouteLeg की प्रॉपर्टी के टेक्स्ट फ़ॉर्मैट में दिए गए उदाहरण.

stepsOverview

object (StepsOverview)

इस RouteLeg में दिए गए चरणों के बारे में खास जानकारी. यह फ़ील्ड सिर्फ़ सार्वजनिक परिवहन के रास्तों के लिए भरा जाता है.

पॉलीलाइन

इसमें कोड में बदली गई पॉलीलाइन शामिल होती है.

JSON के काेड में दिखाना
{

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of mutually exclusive fields.
}
फ़ील्ड
इसमें पॉलीलाइन का टाइप शामिल होता है. डिफ़ॉल्ट रूप से, इसे encoded_polyline पर सेट किया जाता है. यहां ऐसे फ़ील्ड की सूची दी गई है जिनमें से सिर्फ़ एक को चुना जा सकता है. जवाब में, ज़्यादा से ज़्यादा एक फ़ील्ड सेट किया जाएगा:
encodedPolyline

string

पॉलीलाइन एन्कोडिंग एल्गोरिदम का इस्तेमाल करके, पॉलीलाइन की स्ट्रिंग एन्कोडिंग

geoJsonLinestring

object (Struct format)

GeoJSON LineString फ़ॉर्मैट का इस्तेमाल करके, पॉलीलाइन तय करता है.

एक-दूसरे से अलग फ़ील्ड के आखिर में.

RouteLegStep

इसमें RouteLeg का एक सेगमेंट शामिल होता है. हर चरण, नेविगेशन के एक निर्देश से जुड़ा होता है. रास्ते के लेग, चरणों से मिलकर बने होते हैं.

JSON के काेड में दिखाना
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  },
  "localizedValues": {
    object (RouteLegStepLocalizedValues)
  },
  "transitDetails": {
    object (RouteLegStepTransitDetails)
  },
  "travelMode": enum (RouteTravelMode)
}
फ़ील्ड
distanceMeters

integer

इस चरण में तय की गई दूरी, मीटर में. कुछ मामलों में, इस फ़ील्ड में कोई वैल्यू नहीं हो सकती.

staticDuration

string (Duration format)

इस चरण में यात्रा करने में लगने वाला समय. इसमें ट्रैफ़िक का हाल ध्यान में नहीं रखा जाता. कुछ मामलों में, इस फ़ील्ड में कोई वैल्यू नहीं हो सकती.

सेकंड में अवधि, जिसमें नौ दशमलव अंक तक हो सकते हैं. इसके आखिर में 's' होता है. उदाहरण: "3.5s".

polyline

object (Polyline)

इस चरण से जुड़ी पॉलीलाइन.

startLocation

object (Location)

इस चरण के लिए यात्रा शुरू करने की जगह.

endLocation

object (Location)

इस चरण के खत्म होने की जगह.

navigationInstruction

object (NavigationInstruction)

नेविगेशन के निर्देश.

travelAdvisory

object (RouteLegStepTravelAdvisory)

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

localizedValues

object (RouteLegStepLocalizedValues)

RouteLegStep की प्रॉपर्टी के टेक्स्ट फ़ॉर्मैट में दिए गए उदाहरण.

transitDetails

object (RouteLegStepTransitDetails)

अगर यात्रा का मोड TRANSIT है, तो इस चरण के बारे में जानकारी.

travelMode

enum (RouteTravelMode)

इस चरण के लिए इस्तेमाल किया गया यात्रा मोड.

सामान को एक जगह से दूसरी जगह ले जाने में मदद

वैल्यू का एक सेट, जो मौजूदा चरण के लिए नेविगेशन की कार्रवाई तय करता है. उदाहरण के लिए, बाईं ओर मुड़ें, मर्ज करें या सीधे जाएं.

Enums
MANEUVER_UNSPECIFIED इस्तेमाल नहीं किया जाता.
TURN_SLIGHT_LEFT थोड़ा बाईं ओर मुड़ें.
TURN_SHARP_LEFT तेज़ी से बाईं ओर मुड़ें.
UTURN_LEFT बाईं ओर यू-टर्न लें.
TURN_LEFT बाईं ओर मुड़ें.
TURN_SLIGHT_RIGHT थोड़ा राइट मुड़ें.
TURN_SHARP_RIGHT तेज़ी से दाईं ओर मुड़ें.
UTURN_RIGHT दाईं ओर यू-टर्न लें.
TURN_RIGHT दाईं ओर मुड़ें.
STRAIGHT सीधे जाओ.
RAMP_LEFT बाईं ओर मौजूद रैंप का इस्तेमाल करें.
RAMP_RIGHT राइट साइड वाला रैंप लें.
MERGE ट्रैफ़िक में शामिल हों.
FORK_LEFT बाएँ फ़ोर्क का इस्तेमाल करें.
FORK_RIGHT दाईं ओर वाली सड़क लें.
FERRY फ़ेरी लें.
FERRY_TRAIN ट्रेन से फ़ेरी तक जाएं.
ROUNDABOUT_LEFT गोल चक्कर से लेफ़्ट मुड़ें.
ROUNDABOUT_RIGHT गोल चक्कर से राइट मुड़ें.
DEPART शुरुआती पैंतरा.
NAME_CHANGE इसका इस्तेमाल, सड़क का नाम बदलने की जानकारी देने के लिए किया जाता है.

RouteLegStepTravelAdvisory

इसमें वह अतिरिक्त जानकारी होती है जिसके बारे में उपयोगकर्ता को बताया जाना चाहिए. जैसे, यात्रा के किसी चरण में ट्रैफ़िक ज़ोन से जुड़ी पाबंदियां.

JSON के काेड में दिखाना
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
फ़ील्ड
speedReadingIntervals[]

object (SpeedReadingInterval)

ध्यान दें: फ़िलहाल, इस फ़ील्ड में जानकारी नहीं भरी जाती.

RouteLegStepLocalizedValues

कुछ प्रॉपर्टी के टेक्स्ट वर्शन.

JSON के काेड में दिखाना
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
फ़ील्ड
distance

object (LocalizedText)

यात्रा की दूरी को टेक्स्ट के तौर पर दिखाया गया है.

staticDuration

object (LocalizedText)

ट्रैफ़िक की स्थिति को ध्यान में रखे बिना, टेक्स्ट के तौर पर दिखाया गया समय.

RouteLegStepTransitDetails

RouteLegStep के लिए, TRANSIT रास्तों से जुड़ी अतिरिक्त जानकारी.

JSON के काेड में दिखाना
{
  "stopDetails": {
    object (TransitStopDetails)
  },
  "localizedValues": {
    object (TransitDetailsLocalizedValues)
  },
  "headsign": string,
  "headway": string,
  "transitLine": {
    object (TransitLine)
  },
  "stopCount": integer,
  "tripShortText": string
}
फ़ील्ड
stopDetails

object (TransitStopDetails)

इस चरण के लिए, पहुंचने और जाने के स्टॉप की जानकारी.

localizedValues

object (TransitDetailsLocalizedValues)

RouteLegStepTransitDetails की प्रॉपर्टी के टेक्स्ट फ़ॉर्मैट में दिए गए उदाहरण.

headsign

string

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

headway

string (Duration format)

इस समय, एक ही स्टॉप से जाने के समय के बीच का अंतर बताता है. उदाहरण के लिए, अगर हेडवे सेकंड की वैल्यू 600 है, तो बस छूट जाने पर आपको दस मिनट इंतज़ार करना होगा.

सेकंड में अवधि, जिसमें नौ दशमलव अंक तक हो सकते हैं. इसके आखिर में 's' होता है. उदाहरण: "3.5s".

transitLine

object (TransitLine)

इस चरण में इस्तेमाल की गई बस, मेट्रो वगैरह का रूट मैप के बारे में जानकारी.

stopCount

integer

जाने की जगह से लेकर पहुंचने की जगह तक के स्टॉप की संख्या. इस संख्या में, पहुंचने का स्टॉप शामिल होता है, लेकिन जाने का स्टॉप शामिल नहीं होता. उदाहरण के लिए, अगर आपका रास्ता स्टॉप A से शुरू होता है, स्टॉप B और C से होकर गुज़रता है, और स्टॉप D पर पहुंचता है, तो stopCount की वैल्यू 3 होगी.

tripShortText

string

यह टेक्स्ट, शेड्यूल और साइन बोर्ड में दिखता है. इससे यात्रियों को ट्रांज़िट यात्रा की पहचान करने में मदद मिलती है. टेक्स्ट से, सेवा के दिन की अवधि में यात्रा की खास तौर पर पहचान होनी चाहिए. उदाहरण के लिए, "538" Amtrak की उस ट्रेन का tripShortText है जो हफ़्ते के दिनों में, कैलिफ़ोर्निया के सैन होज़े से कैलिफ़ोर्निया के सैक्रामेंटो के लिए 15:10 बजे रवाना होती है.

TransitStopDetails

RouteLegStep के ट्रांज़िट स्टॉप के बारे में जानकारी.

JSON के काेड में दिखाना
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
फ़ील्ड
arrivalStop

object (TransitStop)

इस चरण के लिए, बस के पहुंचने के स्टॉप की जानकारी.

arrivalTime

string (Timestamp format)

इस चरण के पूरा होने का अनुमानित समय.

यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".

departureStop

object (TransitStop)

इस चरण के लिए, बस के रवाना होने के स्टॉप की जानकारी.

departureTime

string (Timestamp format)

इस चरण के लिए, रवाना होने का अनुमानित समय.

यह आरएफ़सी 3339 का इस्तेमाल करता है. इसमें जनरेट किया गया आउटपुट हमेशा Z-नॉर्मलाइज़ किया जाएगा और इसमें 0, 3, 6 या 9 फ़्रैक्शनल अंक इस्तेमाल किए जाएंगे. "Z" के अलावा, अन्य ऑफ़सेट भी स्वीकार किए जाते हैं. उदाहरण: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" या "2014-10-02T15:01:23+05:30".

TransitStop

बस, मेट्रो वगैरह के स्टॉप के बारे में जानकारी.

JSON के काेड में दिखाना
{
  "name": string,
  "location": {
    object (Location)
  }
}
फ़ील्ड
name

string

बस, मेट्रो वगैरह के स्टॉप का नाम.

location

object (Location)

स्टॉप की जगह की जानकारी, अक्षांश/देशांतर के निर्देशांकों में दी जाती है.

TransitDetailsLocalizedValues

RouteTransitDetails के लिए वैल्यू की स्थानीय भाषा में जानकारी.

JSON के काेड में दिखाना
{
  "arrivalTime": {
    object (LocalizedTime)
  },
  "departureTime": {
    object (LocalizedTime)
  }
}
फ़ील्ड
arrivalTime

object (LocalizedTime)

टाइमज़ोन के साथ, फ़ॉर्मैट किए गए टेक्स्ट के तौर पर समय.

departureTime

object (LocalizedTime)

टाइमज़ोन के साथ, फ़ॉर्मैट किए गए टेक्स्ट के तौर पर समय.

LocalizedTime

समय के बारे में स्थानीय भाषा में जानकारी.

JSON के काेड में दिखाना
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
फ़ील्ड
time

object (LocalizedText)

किसी टाइम ज़ोन में, स्ट्रिंग के तौर पर दिया गया समय.

timeZone

string

इसमें टाइम ज़ोन की जानकारी होती है. यह वैल्यू, आईएएनए टाइम ज़ोन डेटाबेस में तय किए गए टाइम ज़ोन का नाम है. जैसे, "America/New_York".

TransitLine

इसमें इस चरण में इस्तेमाल की गई बस, मेट्रो वगैरह का रूट मैप के बारे में जानकारी होती है.

JSON के काेड में दिखाना
{
  "agencies": [
    {
      object (TransitAgency)
    }
  ],
  "name": string,
  "uri": string,
  "color": string,
  "iconUri": string,
  "nameShort": string,
  "textColor": string,
  "vehicle": {
    object (TransitVehicle)
  }
}
फ़ील्ड
agencies[]

object (TransitAgency)

वह ट्रांसपोर्ट एजेंसी (या एजेंसियां) जो बस, मेट्रो वगैरह के इस रूट मैप को मैनेज करती हैं.

name

string

इस बस, मेट्रो वगैरह का रूट मैप का पूरा नाम. उदाहरण के लिए, "8 एवेन्यू लोकल".

uri

string

सार्वजनिक परिवहन एजेंसी की ओर से दिया गया, इस ट्रांज़िट लाइन का यूआरआई.

color

string

इस लाइन के लिए, साइनेज में आम तौर पर इस्तेमाल किया जाने वाला रंग. इसे हेक्साडेसिमल में दिखाया जाता है.

iconUri

string

इस लाइन से जुड़े आइकॉन का यूआरआई.

nameShort

string

बस, मेट्रो वगैरह की इस लाइन का छोटा नाम. यह नाम आम तौर पर लाइन नंबर होता है, जैसे कि "M7" या "355".

textColor

string

इस लाइन के साइनेज पर टेक्स्ट के लिए आम तौर पर इस्तेमाल किया जाने वाला रंग. इसे हेक्साडेसिमल में दिखाया जाता है.

vehicle

object (TransitVehicle)

इस बस, मेट्रो वगैरह के रूट मैप पर चलने वाले वाहन का टाइप.

TransitAgency

सार्वजनिक परिवहन एजेंसी, जो सार्वजनिक परिवहन लाइन को मैनेज करती है.

JSON के काेड में दिखाना
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
फ़ील्ड
name

string

इस सार्वजनिक परिवहन एजेंसी का नाम.

phoneNumber

string

ट्रांज़िट एजेंसी का स्थानीय भाषा के हिसाब से फ़ॉर्मैट किया गया फ़ोन नंबर.

uri

string

ट्रांसपोर्ट एजेंसी का यूआरआई.

TransitVehicle

सार्वजनिक परिवहन के रास्तों में इस्तेमाल किए गए वाहन के बारे में जानकारी.

JSON के काेड में दिखाना
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
फ़ील्ड
name

object (LocalizedText)

इस वाहन का नाम, कैपिटल लेटर में.

type

enum (TransitVehicleType)

इस्तेमाल किए गए वाहन का टाइप.

iconUri

string

इस वाहन के टाइप से जुड़े आइकॉन का यूआरआई.

localIconUri

string

यह वाहन के टाइप से जुड़े आइकॉन का यूआरआई है. यह स्थानीय परिवहन के साइनेज पर आधारित होता है.

TransitVehicleType

सार्वजनिक परिवहन के रास्तों के लिए वाहनों का टाइप.

Enums
TRANSIT_VEHICLE_TYPE_UNSPECIFIED इस्तेमाल नहीं किया गया.
BUS बस.
CABLE_CAR यह एक ऐसा वाहन होता है जो केबल पर चलता है. आम तौर पर, यह ज़मीन पर चलता है. एरियल केबल कार, GONDOLA_LIFT टाइप की हो सकती हैं.
COMMUTER_TRAIN कम्यूटर रेल.
FERRY फ़ेरी.
FUNICULAR एक ऐसा वाहन जिसे केबल की मदद से, खड़ी चढ़ाई पर खींचा जाता है. आम तौर पर, फ़्यूनिकुलर में दो कारें होती हैं. इनमें से हर कार, दूसरी कार के लिए काउंटरवेट का काम करती है.
GONDOLA_LIFT एरियल केबल कार.
HEAVY_RAIL हैवी रेल.
HIGH_SPEED_TRAIN हाई स्पीड ट्रेन.
INTERCITY_BUS एक शहर से दूसरे शहर जाने वाली बस.
LONG_DISTANCE_TRAIN लंबी दूरी की ट्रेन.
METRO_RAIL लाइट रेल ट्रांज़िट.
MONORAIL मोनोरेल.
OTHER अन्य सभी वाहन.
RAIL ट्रेन.
SHARE_TAXI शेयर टैक्सी, बस की तरह होती है. यह अपने रास्ते में कहीं भी यात्रियों को उतार और चढ़ा सकती है.
SUBWAY भूमिगत लाइट रेल.
TRAM ज़मीन के ऊपर बनी लाइट रेल.
TROLLEYBUS ट्रॉलीबस.

RouteLegTravelAdvisory

इसमें ऐसी अतिरिक्त जानकारी होती है जिसके बारे में उपयोगकर्ता को यात्रा के चरण के बारे में बताना चाहिए. जैसे, ट्रैफ़िक ज़ोन से जुड़ी संभावित पाबंदियां.

JSON के काेड में दिखाना
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
फ़ील्ड
tollInfo

object (TollInfo)

इस कुकी में, किसी खास RouteLeg पर लगने वाले टोल के बारे में जानकारी होती है. इस फ़ील्ड में वैल्यू सिर्फ़ तब भरी जाती है, जब हमें लगता है कि RouteLeg पर टोल है और TOLLS को अनुरोध के ComputeRoutesRequest.extra_computations में शामिल किया गया है. अगर यह फ़ील्ड सेट है, लेकिन estimatedPrice सब-फ़ील्ड में वैल्यू नहीं भरी गई है, तो इसका मतलब है कि रास्ते पर टोल है, लेकिन हमें टोल की अनुमानित कीमत के बारे में जानकारी नहीं है. अगर tollInfo मौजूद नहीं है, तो RouteLeg पर कोई टोल नहीं लगता.

speedReadingIntervals[]

object (SpeedReadingInterval)

ट्रैफ़िक की सघनता दिखाने वाले स्पीड रीडिंग इंटरवल. इस फ़ील्ड में सिर्फ़ उन अनुरोधों के लिए डेटा भरा जाता है जिनमें TRAFFIC_AWARE या TRAFFIC_AWARE_OPTIMAL ComputeRoutesRequest.routing_preference वैल्यू होती है. साथ ही, TRAFFIC_ON_POLYLINE को ComputeRoutesRequest.extra_computations में शामिल किया जाता है. ये इंटरवल, RouteLeg की पूरी पॉलीलाइन को बिना ओवरलैप किए कवर करते हैं. किसी अंतराल का शुरुआती पॉइंट, उससे पहले वाले अंतराल के आखिरी पॉइंट के बराबर होता है.

उदाहरण:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).

RouteLegLocalizedValues

कुछ प्रॉपर्टी के टेक्स्ट वर्शन.

JSON के काेड में दिखाना
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
फ़ील्ड
distance

object (LocalizedText)

यात्रा की दूरी को टेक्स्ट के तौर पर दिखाया गया है.

duration

object (LocalizedText)

अवधि, जिसे टेक्स्ट के तौर पर दिखाया जाता है और क्वेरी के क्षेत्र के हिसाब से स्थानीय भाषा में दिखाया जाता है. इसमें ट्रैफ़िक का हाल ध्यान में रखा जाता है. ध्यान दें: अगर आपने ट्रैफ़िक की जानकारी का अनुरोध नहीं किया है, तो यह वैल्यू, staticDuration के बराबर होती है.

staticDuration

object (LocalizedText)

ट्रैफ़िक की स्थिति को ध्यान में रखे बिना, टेक्स्ट के तौर पर दिखाया गया समय.

StepsOverview

RouteLegStep की सूची के बारे में खास जानकारी देता है.

JSON के काेड में दिखाना
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
फ़ील्ड
multiModalSegments[]

object (MultiModalSegment)

RouteLeg.steps के अलग-अलग मल्टी-मॉडल सेगमेंट के बारे में खास जानकारी. अगर RouteLeg में चरणों के दौरान कोई मल्टी-मॉडल सेगमेंट शामिल नहीं है, तो इस फ़ील्ड में अपने-आप जानकारी नहीं भरती.

MultiModalSegment

RouteLeg.steps के अलग-अलग मल्टी-मॉडल सेगमेंट के बारे में खास जानकारी देता है. एक से ज़्यादा मोड वाले सेगमेंट को एक या उससे ज़्यादा लगातार RouteLegStep के तौर पर तय किया जाता है. इनमें एक ही RouteTravelMode होता है. अगर RouteLeg में चरणों के दौरान कोई मल्टी-मॉडल सेगमेंट शामिल नहीं है, तो इस फ़ील्ड में अपने-आप जानकारी नहीं भरती.

JSON के काेड में दिखाना
{
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelMode": enum (RouteTravelMode),
  "stepStartIndex": integer,
  "stepEndIndex": integer
}
फ़ील्ड
navigationInstruction

object (NavigationInstruction)

मल्टी-मॉडल सेगमेंट के लिए NavigationInstruction.

travelMode

enum (RouteTravelMode)

अलग-अलग मोड वाले सेगमेंट के लिए यात्रा का मोड.

stepStartIndex

integer

यह RouteLegStep इंडेक्स, मल्टी-मॉडल सेगमेंट की शुरुआत में होता है.

stepEndIndex

integer

इससे जुड़ा RouteLegStep इंडेक्स, जो मल्टी-मॉडल सेगमेंट का आखिरी हिस्सा है.

व्यूपोर्ट

अक्षांश-देशांतर व्यूपोर्ट, जिसे दो विकर्ण विपरीत low और high पॉइंट के तौर पर दिखाया गया है. व्यूपोर्ट को एक बंद क्षेत्र माना जाता है. इसका मतलब है कि इसमें इसकी सीमा शामिल होती है. अक्षांश की सीमाएं -90 से 90 डिग्री के बीच होनी चाहिए. साथ ही, देशांतर की सीमाएं -180 से 180 डिग्री के बीच होनी चाहिए. इनमें ये मामले शामिल हैं:

  • अगर low = high है, तो व्यूपोर्ट में सिर्फ़ एक पॉइंट होता है.

  • अगर low.longitude > high.longitude है, तो देशांतर की रेंज उलट जाती है. इसका मतलब है कि व्यूपोर्ट, 180 डिग्री देशांतर की लाइन को पार कर जाता है.

  • अगर low.longitude = -180 डिग्री और high.longitude = 180 डिग्री है, तो व्यूपोर्ट में सभी देशांतर शामिल होते हैं.

  • अगर low.longitude = 180 डिग्री और high.longitude = -180 डिग्री है, तो देशांतर की सीमा खाली होती है.

  • अगर low.latitude > high.latitude है, तो अक्षांश की रेंज खाली होती है.

low और high, दोनों फ़ील्ड में वैल्यू मौजूद होनी चाहिए. साथ ही, ऊपर दी गई परिभाषाओं के मुताबिक, दिखाए गए बॉक्स में वैल्यू मौजूद होनी चाहिए. व्यू पोर्ट खाली होने पर गड़बड़ी होगी.

उदाहरण के लिए, इस व्यूपोर्ट में न्यूयॉर्क शहर पूरी तरह से शामिल है:

{ "low": { "latitude": 40.477398, "longitude": -74.259087 }, "high": { "latitude": 40.91618, "longitude": -73.70018 } }

JSON के काेड में दिखाना
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
फ़ील्ड
low

object (LatLng)

ज़रूरी है. व्यूपोर्ट का सबसे निचला पॉइंट.

high

object (LatLng)

ज़रूरी है. व्यूपोर्ट का सबसे ऊपरी हिस्सा.

RouteLocalizedValues

कुछ प्रॉपर्टी के टेक्स्ट वर्शन.

JSON के काेड में दिखाना
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  },
  "transitFare": {
    object (LocalizedText)
  }
}
फ़ील्ड
distance

object (LocalizedText)

यात्रा की दूरी को टेक्स्ट के तौर पर दिखाया गया है.

duration

object (LocalizedText)

अवधि, जिसे टेक्स्ट के तौर पर दिखाया जाता है और क्वेरी के देश/इलाके के हिसाब से स्थानीय भाषा में दिखाया जाता है. इसमें ट्रैफ़िक का हाल ध्यान में रखा जाता है. ध्यान दें: अगर आपने ट्रैफ़िक की जानकारी का अनुरोध नहीं किया है, तो यह वैल्यू, staticDuration की वैल्यू के बराबर होती है.

staticDuration

object (LocalizedText)

ट्रैफ़िक की स्थिति को ध्यान में रखे बिना, टेक्स्ट के तौर पर दिखाया गया समय.

transitFare

object (LocalizedText)

किराये की जानकारी टेक्स्ट के तौर पर दी गई है.

PolylineDetails

किसी इंडेक्स या पॉलीलाइन के आस-पास के सेगमेंट से जुड़ी जानकारी. P_0, P_1, ... , P_N (शून्य पर आधारित इंडेक्स) पॉइंट वाली पॉलीलाइन दी गई है. PolylineDetails एक इंटरवल और उससे जुड़ा मेटाडेटा तय करता है.

JSON के काेड में दिखाना
{
  "tunnelInfo": [
    {
      object (TunnelInfo)
    }
  ],
  "restrictionInfo": [
    {
      object (RestrictionInfo)
    }
  ],
  "flyoverInfo": [
    {
      object (FlyoverInfo)
    }
  ],
  "narrowRoadInfo": [
    {
      object (NarrowRoadInfo)
    }
  ],
  "bridgeInfo": [
    {
      object (BridgeInfo)
    }
  ],
  "skywayInfo": [
    {
      object (SkywayInfo)
    }
  ]
}
फ़ील्ड
tunnelInfo[]

object (TunnelInfo)

पॉलीलाइन के साथ-साथ टनल की जानकारी. अगर अनुरोध में avoidTunnels रूट मॉडिफ़ायर के बारे में बताया गया है और नतीजे के तौर पर मिले रूट में उनका इस्तेमाल नहीं किया गया है, तो इस फ़ील्ड में जानकारी अपने-आप भर जाती है. इसके अलावा, अगर extraComputations में TUNNEL_INFO_ON_POLYLINE के बारे में बताया गया है और रूट में सुरंगें शामिल हैं, तो भी इस फ़ील्ड में जानकारी अपने-आप भर जाती है.

restrictionInfo[]

object (RestrictionInfo)

पॉलीलाइन के साथ पाबंदी की जानकारी. इस फ़ील्ड में जानकारी सिर्फ़ तब भरी जाती है, जब अनुरोध में vehicleInfo रूट मॉडिफ़ायर के बारे में बताया गया हो और नतीजे के तौर पर मिले रूट पर कोई पाबंदी लागू हो. ऐसा न होने पर, इस फ़ील्ड का इस्तेमाल नहीं किया जाता.

flyoverInfo[]

object (FlyoverInfo)

पॉलीलाइन के साथ-साथ फ़्लाइओवर की जानकारी.

narrowRoadInfo[]

object (NarrowRoadInfo)

पॉलीलाइन के साथ-साथ संकरी सड़क की जानकारी.

bridgeInfo[]

object (BridgeInfo)

पॉलीलाइन के साथ पुल की जानकारी.

skywayInfo[]

object (SkywayInfo)

पॉलीलाइन के साथ-साथ स्काईवे की जानकारी.

TunnelInfo

इसमें पॉलीलाइन के साथ-साथ टनल के बारे में जानकारी शामिल होती है.

JSON के काेड में दिखाना
{
  "tunnelPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
फ़ील्ड
tunnelPresence

enum (RoadFeatureState)

इससे पता चलता है कि पॉलीलाइन के किसी हिस्से के लिए टनल मौजूद है या नहीं.

polylinePointIndex

object (PolylinePointIndex)

पॉलीलाइन के साथ-साथ, सुरंग से जुड़ी जानकारी की जगह.

RoadFeatureState

इसमें पॉलीलाइन के किसी हिस्से में मौजूद सड़क की सुविधाओं की स्थितियां शामिल होती हैं.

Enums
ROAD_FEATURE_STATE_UNSPECIFIED सड़क की सुविधा की स्थिति का हिसाब नहीं लगाया गया (डिफ़ॉल्ट वैल्यू).
EXISTS सड़क की सुविधा मौजूद है.
DOES_NOT_EXIST सड़क की सुविधा मौजूद नहीं है.

PolylinePointIndex

इसमें पॉलीलाइन की जानकारी के लिए, शुरू और खत्म होने वाले इंडेक्स शामिल होते हैं. जिन उदाहरणों में डेटा किसी एक पॉइंट से जुड़ा होता है उनमें startIndex और endIndex की वैल्यू बराबर होगी.

JSON के काेड में दिखाना
{
  "startIndex": integer,
  "endIndex": integer
}
फ़ील्ड
startIndex

integer

पॉलीलाइन में इस जानकारी का शुरुआती इंडेक्स.

endIndex

integer

पॉलीलाइन में इस जानकारी का आखिरी इंडेक्स.

RestrictionInfo

इस फ़ील्ड में, पॉलीलाइन के साथ-साथ अलग-अलग पाबंदियों के बारे में जानकारी शामिल होती है.

JSON के काेड में दिखाना
{
  "restrictionPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  },

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "restrictedHeightMm": string,
  "restrictedWeightKg": string,
  "hazardousGoods": boolean,
  "trucksProhibited": boolean
  // End of mutually exclusive fields.
}
फ़ील्ड
restrictionPresence

enum (RoadFeatureState)

सिर्फ़ आउटपुट के लिए. इससे पता चलता है कि पॉलीलाइन के किसी हिस्से पर पाबंदी है या नहीं.

polylinePointIndex

object (PolylinePointIndex)

पॉलीलाइन के साथ-साथ पाबंदी से जुड़ी जानकारी की जगह.

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

string (int64 format)

मिलीमीटर में ऊंचाई की सीमा. अगर ऊंचाई की सीमा की वजह से वाहन नहीं निकल पाता है या वाहन के लिए कम जगह बचती है, तो इस फ़ील्ड में जानकारी अपने-आप भर जाती है.

restrictedWeightKg

string (int64 format)

किलोग्राम में वज़न की सीमा. इस फ़ील्ड में जानकारी तब अपने-आप भर जाती है, जब वज़न की पाबंदी की वजह से रास्ता बंद हो जाता है या पाबंदी, तय किए गए वाहन के वज़न के आस-पास होती है.

hazardousGoods

boolean

खतरनाक सामान ले जाने पर पाबंदी होने पर, इस फ़ील्ड को 'सही है' पर सेट किया जाता है.

trucksProhibited

boolean

ट्रकों को अनुमति न होने पर, इस फ़ील्ड को 'सही है' पर सेट किया जाता है.

एक-दूसरे से अलग फ़ील्ड के आखिर में.

FlyoverInfo

यह पॉलीलाइन के साथ-साथ फ़्लाइओवर के बारे में जानकारी शामिल करता है.

JSON के काेड में दिखाना
{
  "flyoverPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
फ़ील्ड
flyoverPresence

enum (RoadFeatureState)

सिर्फ़ आउटपुट के लिए. इससे पता चलता है कि पॉलीलाइन के किसी हिस्से के लिए फ़्लाइओवर मौजूद है या नहीं.

polylinePointIndex

object (PolylinePointIndex)

पॉलीलाइन के साथ-साथ फ़्लाइओवर से जुड़ी जानकारी की जगह.

NarrowRoadInfo

इसमें पॉलीलाइन के साथ-साथ संकरी सड़कों के बारे में जानकारी होती है.

JSON के काेड में दिखाना
{
  "narrowRoadPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
फ़ील्ड
narrowRoadPresence

enum (RoadFeatureState)

सिर्फ़ आउटपुट के लिए. इससे पता चलता है कि पॉलीलाइन के किसी हिस्से के लिए, कोई संकरी सड़क मौजूद है या नहीं.

polylinePointIndex

object (PolylinePointIndex)

पॉलीलाइन के साथ-साथ, संकरी सड़क से जुड़ी जानकारी की जगह.

BridgeInfo

इसमें पॉलीलाइन के साथ-साथ पुलों के बारे में जानकारी शामिल होती है.

JSON के काेड में दिखाना
{
  "bridgePresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
फ़ील्ड
bridgePresence

enum (RoadFeatureState)

इससे पता चलता है कि पॉलीलाइन के किसी हिस्से के लिए पुल मौजूद है या नहीं.

polylinePointIndex

object (PolylinePointIndex)

पॉलीलाइन के साथ-साथ पुल से जुड़ी जानकारी की जगह.

SkywayInfo

यह पॉलीलाइन के साथ-साथ स्काईवे के बारे में जानकारी शामिल करता है.

JSON के काेड में दिखाना
{
  "skywayPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
फ़ील्ड
skywayPresence

enum (RoadFeatureState)

इससे पता चलता है कि पॉलीलाइन के किसी हिस्से के लिए स्काईवे मौजूद है या नहीं.

polylinePointIndex

object (PolylinePointIndex)

पॉलीलाइन के साथ-साथ स्काईवे से जुड़ी जानकारी की जगह.

GeocodingResults

इसमें यात्रा शुरू करने की जगह, मंज़िल, और इंटरमीडिएट वेपॉइंट के लिए GeocodedWaypoints शामिल है. यह सिर्फ़ पते के वेपॉइंट के लिए अपने-आप भरता है.

JSON के काेड में दिखाना
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
फ़ील्ड
origin

object (GeocodedWaypoint)

ऑरिजिन का जियोकोड किया गया वेपॉइंट.

destination

object (GeocodedWaypoint)

मंज़िल के जियोकोड किए गए वेपॉइंट.

intermediates[]

object (GeocodedWaypoint)

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

GeocodedWaypoint

वेपॉइंट के तौर पर इस्तेमाल की गई जगहों के बारे में जानकारी. यह सिर्फ़ पते के वेपॉइंट के लिए अपने-आप भरता है. इसमें जियोकोडिंग के नतीजों के बारे में जानकारी शामिल होती है. इससे यह तय किया जाता है कि पते को किस जगह के हिसाब से जियोकोड किया गया था.

JSON के काेड में दिखाना
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
फ़ील्ड
geocoderStatus

object (Status)

इससे, जियोकोडिंग ऑपरेशन से मिले स्टेटस कोड की जानकारी मिलती है.

type[]

string

नतीजे का टाइप, शून्य या उससे ज़्यादा टाइप टैग के तौर पर. इस्तेमाल किए जा सकने वाले टाइप: पते के टाइप और पते के कॉम्पोनेंट टाइप.

partialMatch

boolean

इससे पता चलता है कि जियोकोडर ने मूल अनुरोध के लिए सटीक मैच नहीं दिया है. हालांकि, वह अनुरोध किए गए पते के कुछ हिस्से से मेल खाने वाली जानकारी दे पाया है. ऐसा हो सकता है कि आपने पते में स्पेलिंग की कोई गलती की हो या पता अधूरा हो. इसलिए, हमारा सुझाव है कि आप मूल अनुरोध की जांच करें.

placeId

string

इस नतीजे के लिए जगह का आईडी.

intermediateWaypointRequestIndex

integer

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