Method: computeRoutes

با توجه به مجموعه ای از ایستگاه های پایانه و میانی، مسیر اصلی را به همراه مسیرهای جایگزین اختیاری برمی گرداند.

توجه: این روش مستلزم آن است که یک ماسک فیلد پاسخ را در ورودی مشخص کنید. می‌توانید ماسک فیلد پاسخ را با استفاده از پارامتر URL $fields یا fields ، یا با استفاده از هدر HTTP/gRPC X-Goog-FieldMask ارائه دهید (به پارامترها و سرصفحه‌های URL موجود مراجعه کنید). مقدار یک لیست از مسیرهای فیلد جدا شده با کاما است. به مستندات دقیق در مورد نحوه ساخت مسیرهای فیلد مراجعه کنید.

برای مثال در این روش:

  • ماسک فیلد تمام فیلدهای موجود (برای بازرسی دستی): X-Goog-FieldMask: *
  • ماسک فیلد مدت، فاصله و چند خط سطح مسیر (نمونه ای از راه اندازی تولید): X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google از استفاده از ماسک فیلد پاسخ ( * ) یا مشخص کردن ماسک فیلد در سطح بالا ( routes ) جلوگیری می کند، زیرا:

  • انتخاب فقط فیلدهایی که نیاز دارید به سرور ما کمک می کند تا چرخه های محاسباتی را ذخیره کند و به ما امکان می دهد نتیجه را با تاخیر کمتری به شما برگردانیم.
  • انتخاب تنها زمینه هایی که در کار تولیدی خود به آن نیاز دارید، عملکرد تاخیر پایدار را تضمین می کند. ممکن است در آینده فیلدهای پاسخ بیشتری اضافه کنیم و این فیلدهای جدید ممکن است به زمان محاسبات اضافی نیاز داشته باشند. اگر همه فیلدها را انتخاب کنید، یا اگر همه فیلدها را در سطح بالا انتخاب کنید، ممکن است با کاهش عملکرد مواجه شوید زیرا هر فیلد جدیدی که اضافه کنیم به طور خودکار در پاسخ گنجانده می شود.
  • انتخاب تنها فیلدهایی که به آنها نیاز دارید باعث می‌شود که اندازه پاسخ کوچک‌تر و در نتیجه توان عملیاتی شبکه بیشتر شود.

درخواست HTTP

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

URL از دستور GRPC Transcoding استفاده می کند.

درخواست بدن

بدنه درخواست حاوی داده هایی با ساختار زیر است:

نمایندگی 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)

اختیاری. زمان حرکت اگر این مقدار را تنظیم نکنید، این مقدار به طور پیش‌فرض روی زمانی است که درخواست را انجام داده‌اید. توجه: زمانی که RouteTravelMode روی TRANSIT تنظیم شده باشد، می‌توانید departureTime در گذشته مشخص کنید. سفرهای ترانزیت تا 7 روز در گذشته یا 100 روز در آینده در دسترس هستند.

مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

arrivalTime

string ( Timestamp format)

اختیاری. زمان رسیدن. توجه: فقط زمانی می توان تنظیم کرد که RouteTravelMode روی TRANSIT تنظیم شده باشد. شما می توانید departureTime یا arrivalTime را مشخص کنید، اما نه هر دو را. سفرهای ترانزیت تا 7 روز در گذشته یا 100 روز در آینده در دسترس هستند.

مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

computeAlternativeRoutes

boolean

اختیاری. تعیین می کند که آیا مسیرهای جایگزین علاوه بر مسیر محاسبه شود یا خیر. هیچ مسیر جایگزینی برای درخواست هایی که دارای ایستگاه های بین راهی هستند بازگردانده نمی شود.

routeModifiers

object ( RouteModifiers )

اختیاری. مجموعه ای از شرایط برای برآورده شدن که بر نحوه محاسبه مسیرها تأثیر می گذارد.

languageCode

string

اختیاری. کد زبان BCP-47، مانند "en-US" یا "sr-Latn". برای اطلاعات بیشتر، به شناسه محلی یونیکد مراجعه کنید. برای لیست زبان های پشتیبانی شده به پشتیبانی زبان مراجعه کنید. وقتی این مقدار را ارائه نمی کنید، زبان نمایش از محل درخواست مسیر استنباط می شود.

regionCode

string

اختیاری. کد منطقه که به عنوان یک مقدار دو نویسه ccTLD ("دامنه سطح بالا") مشخص شده است. برای اطلاعات بیشتر به دامنه های سطح بالای کد کشور مراجعه کنید.

units

enum ( Units )

اختیاری. واحدهای اندازه گیری فیلدهای نمایش را مشخص می کند. این فیلدها شامل فیلد instruction در NavigationInstruction است. واحدهای اندازه گیری مورد استفاده برای مسیر، پا، فاصله گام، و مدت زمان تحت تأثیر این مقدار قرار نمی گیرند. اگر این مقدار را ارائه نکنید، واحدهای نمایش از محل مبدا اول استنتاج می شوند.

optimizeWaypointOrder

boolean

اختیاری. اگر روی true تنظیم شود، سرویس تلاش می کند تا هزینه کلی مسیر را با مرتب کردن مجدد ایستگاه های بین راهی مشخص شده به حداقل برساند. در صورتی که هر یک از ایستگاه های بین راهی یک ایستگاه بین via باشد، درخواست با شکست مواجه می شود. از ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index برای پیدا کردن سفارش جدید استفاده کنید. اگر ComputeRoutesResponseroutes.optimized_intermediate_waypoint_index در هدر X-Goog-FieldMask درخواست نشود، درخواست با شکست مواجه می شود. اگر optimizeWaypointOrder روی false تنظیم شود، ComputeRoutesResponse.optimized_intermediate_waypoint_index خالی خواهد بود.

requestedReferenceRoutes[]

enum ( ReferenceRoute )

اختیاری. مشخص می کند چه مسیرهای مرجعی علاوه بر مسیر پیش فرض به عنوان بخشی از درخواست محاسبه شود. مسیر مرجع مسیری با هدف محاسبه مسیر متفاوت از مسیر پیش‌فرض است. برای مثال یک محاسبه مسیر مرجع FUEL_EFFICIENT پارامترهای مختلفی را در نظر می گیرد که یک مسیر کارآمد سوخت بهینه ایجاد می کند.

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.compute پیام پاسخ را مسیریابی می کند.

در صورت موفقیت آمیز بودن، بدنه پاسخ حاوی داده هایی با ساختار زیر است:

نمایندگی JSON
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
زمینه های
routes[]

object ( Route )

حاوی آرایه‌ای از مسیرهای محاسبه‌شده (حداکثر سه) زمانی که شما compute_alternatives_routes را مشخص می‌کنید، و فقط شامل یک مسیر است، در صورتی که این کار را نکنید. هنگامی که این آرایه حاوی چندین ورودی باشد، اولین مسیر توصیه شده است. اگر آرایه خالی باشد، به این معنی است که هیچ مسیری پیدا نشد.

fallbackInfo

object ( FallbackInfo )

در برخی موارد، زمانی که سرور قادر به محاسبه نتایج مسیر با تمام تنظیمات برگزیده ورودی نیست، ممکن است از روش دیگری برای محاسبه استفاده کند. هنگامی که از حالت بازگشتی استفاده می شود، این فیلد حاوی اطلاعات دقیق در مورد پاسخ بازگشتی است. در غیر این صورت این فیلد تنظیم نشده است.

geocodingResults

object ( GeocodingResults )

حاوی اطلاعات پاسخ کدگذاری جغرافیایی برای نقاط راه مشخص شده به عنوان آدرس است.

کیفیت پلی لاین

مجموعه ای از مقادیر که کیفیت چند خط را مشخص می کند.

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 مسیر مصرف سوخت مسیرهایی که با این مقدار برچسب گذاری شده اند برای پارامترهایی مانند مصرف سوخت بهینه شده اند.

محاسبات اضافی

محاسبات اضافی برای انجام در هنگام تکمیل درخواست.

Enums
EXTRA_COMPUTATION_UNSPECIFIED استفاده نشده. درخواست های حاوی این مقدار با شکست مواجه خواهند شد.
TOLLS اطلاعات عوارض برای مسیر(های)
FUEL_CONSUMPTION مصرف سوخت تخمینی برای مسیر(های)
TRAFFIC_ON_POLYLINE چند خط آگاه از ترافیک برای مسیر(های)
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions به عنوان یک رشته متن فرمت شده HTML ارائه شده است. این محتوا باید همانطور که هست خوانده شود. این محتوا فقط برای نمایش است. به صورت برنامه نویسی آن را تجزیه نکنید.

مسیر

شامل یک مسیر است که شامل یک سری از بخش های جاده متصل است که به ایستگاه های ابتدایی، انتهایی و میانی می پیوندند.

نمایندگی 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
}
زمینه های
routeLabels[]

enum ( RouteLabel )

برچسب‌هایی برای Route که برای شناسایی ویژگی‌های خاص مسیر برای مقایسه با دیگران مفید هستند.

legs[]

object ( RouteLeg )

مجموعه ای از پاها (بخش های مسیر بین ایستگاه های بین راه) که مسیر را تشکیل می دهند. هر پا مربوط به سفر بین دو Waypoints غیر via است. به عنوان مثال، مسیری که هیچ ایستگاه بین راهی ندارد، تنها یک پا دارد. مسیری که شامل یک ایستگاه بین راهی غیر 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 را روی true تنظیم کنید، این فیلد شامل ترتیب بهینه شده نقاط بین راهی است. در غیر این صورت این قسمت خالی است. برای مثال، اگر ورودی Origin را بدهید: LA; ایستگاه های بین راهی: دالاس، بانگور، فینیکس؛ مقصد: نیویورک؛ و ترتیب میانی بهینه شده Phoenix، Dallas، Bangor است، سپس این فیلد حاوی مقادیر [2، 0، 1] است. شاخص با 0 برای اولین نقطه میانی ارائه شده در ورودی شروع می شود.

localizedValues

object ( RouteLocalizedValues )

نمایش متنی ویژگی های Route .

routeToken

string

یک توکن مسیر ایمن و با کد base64 که می‌تواند به Navigation SDK ارسال شود، که به Navigation SDK اجازه می‌دهد مسیر را در حین پیمایش بازسازی کند، و در صورت تغییر مسیر، هنگام ایجاد مسیر با تماس، به هدف اصلی احترام بگذارد. v2.computeRoutes. مشتریان باید با این توکن به عنوان یک لکه غیر شفاف برخورد کنند. برای خواندن یا جهش در نظر گرفته نشده است. توجه: Route.route_token فقط برای درخواست‌هایی در دسترس است که ComputeRoutesRequest.routing_preference را روی TRAFFIC_AWARE یا TRAFFIC_AWARE_OPTIMAL تنظیم کرده‌اند. Route.route_token برای درخواست هایی که دارای ایستگاه های بین راه هستند پشتیبانی نمی شود.

RouteLabel

برچسب‌هایی برای Route که برای شناسایی ویژگی‌های خاص مسیر برای مقایسه با دیگران مفید هستند.

Enums
ROUTE_LABEL_UNSPECIFIED پیش فرض - استفاده نشده است.
DEFAULT_ROUTE مسیر پیش‌فرض "بهترین" برای محاسبه مسیر برگردانده شد.
DEFAULT_ROUTE_ALTERNATE جایگزینی برای مسیر پیش‌فرض "بهترین" زمانی که computeAlternativeRoutes مشخص شده باشد، مسیرهایی مانند این برگردانده می شوند.
FUEL_EFFICIENT مسیر مصرف سوخت مسیرهایی که با این مقدار برچسب گذاری شده اند برای پارامترهای Eco مانند مصرف سوخت بهینه شده اند.

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 . این قسمت فقط برای مسیرهای TRANSIT پر شده است.

پلی لاین

یک چند خط کدگذاری شده را در بر می گیرد.

نمایندگی JSON
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
زمینه های
فیلد اتحادیه polyline_type . نوع پلی لاین را کپسوله می کند. پیش‌فرض encoded_polyline است. polyline_type می تواند تنها یکی از موارد زیر باشد:
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" tripShortText قطار Amtrak است که سن خوزه، کالیفرنیا را در ساعت 15:10 روزهای هفته به سمت ساکرامنتو، کالیفرنیا ترک می کند.

TransitStopDetails

جزئیات در مورد توقف های حمل و نقل برای RouteLegStep .

نمایندگی JSON
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
زمینه های
arrivalStop

object ( TransitStop )

اطلاعات در مورد توقف رسیدن برای مرحله.

arrivalTime

string ( Timestamp format)

زمان تخمینی رسیدن به مرحله.

مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

departureStop

object ( TransitStop )

اطلاعات در مورد توقف حرکت برای پله.

departureTime

string ( Timestamp format)

زمان تخمینی حرکت برای مرحله.

مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

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

شامل منطقه زمانی است. مقدار، نام منطقه زمانی است که در پایگاه داده منطقه زمانی IANA تعریف شده است، به عنوان مثال "America/New_York".

ترانزیت لاین

حاوی اطلاعاتی در مورد خط حمل و نقل مورد استفاده در این مرحله است.

نمایندگی 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 Avenue Local".

uri

string

URI این خط ترانزیت که توسط آژانس حمل و نقل ارائه شده است.

color

string

رنگی که معمولا در تابلوهای این خط استفاده می شود. در هگزادسیمال نشان داده شده است.

iconUri

string

URI برای نماد مرتبط با این خط.

nameShort

string

نام کوتاه این خط ترانزیت. این نام معمولاً یک شماره خط است، مانند "M7" یا "355".

textColor

string

رنگی که معمولاً در متن روی تابلوهای این خط استفاده می شود. در هگزادسیمال نشان داده شده است.

vehicle

object ( TransitVehicle )

نوع وسیله نقلیه ای که در این خط ترانزیتی تردد می کند.

آژانس ترانزیت

آژانس ترانزیت که یک خط ترانزیت را اداره می کند.

نمایندگی JSON
{
  "name": string,
  "phoneNumber": string,
  "uri": string
}
زمینه های
name

string

نام این آژانس حمل و نقل.

phoneNumber

string

شماره تلفن قالب‌بندی شده آژانس حمل و نقل.

uri

string

URI آژانس حمل و نقل.

وسیله نقلیه ترانزیت

اطلاعات در مورد وسیله نقلیه مورد استفاده در مسیرهای حمل و نقل.

نمایندگی JSON
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
زمینه های
name

object ( LocalizedText )

نام این وسیله نقلیه با حروف بزرگ نوشته شده است.

type

enum ( TransitVehicleType )

نوع وسیله نقلیه مورد استفاده.

iconUri

string

URI برای نماد مرتبط با این نوع خودرو.

localIconUri

string

URI برای نماد مرتبط با این نوع وسیله نقلیه، بر اساس علائم حمل و نقل محلی.

Transit VehicleType

نوع وسایل نقلیه برای مسیرهای ترانزیتی.

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 وجود داشته باشد. اگر این فیلد تنظیم شده باشد اما زیرفیلد برآورد شده قیمت پر نشده باشد، انتظار داریم که جاده شامل عوارض باشد اما قیمت تخمینی را نمی دانیم. اگر این فیلد وجود نداشته باشد، هیچ عوارضی در RouteLeg وجود ندارد.

speedReadingIntervals[]

object ( SpeedReadingInterval )

فواصل تندخوانی با جزئیات تراکم ترافیک. قابل اجرا در موارد ترجیحات مسیریابی TRAFFIC_AWARE و TRAFFIC_AWARE_OPTIMAL . فواصل، کل چند خط 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 )

راهنمای ناوبری برای بخش چند وجهی.

travelMode

enum ( RouteTravelMode )

حالت سفر بخش چند وجهی.

stepStartIndex

integer

شاخص RouteLegStep مربوطه که شروع یک بخش چند وجهی است.

stepEndIndex

integer

شاخص RouteLegStep مربوطه که انتهای یک بخش چند وجهی است.

درگاه دید

یک نمای طول-طول جغرافیایی که به صورت دو نقطه low و high به صورت مورب در مقابل هم نمایش داده می شود. یک viewport یک منطقه بسته در نظر گرفته می شود، یعنی شامل مرز آن می شود. محدوده عرض جغرافیایی باید بین 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, "Litude": -74.259087 }, "high": { "Latitude": 40.91618, "Latitude": -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 )

کرایه حمل و نقل به صورت متنی نشان داده شده است.

نتایج جغرافیایی

شامل GeocodedWaypoints برای مبدا، مقصد و ایستگاه های بین راهی. فقط برای نقاط راه آدرس پر شده است.

نمایندگی JSON
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
زمینه های
origin

object ( GeocodedWaypoint )

نقطه بین مسیرهای جغرافیایی کدگذاری شده مبدا.

destination

object ( GeocodedWaypoint )

نقطه گذر جغرافیایی مقصد.

intermediates[]

object ( GeocodedWaypoint )

فهرستی از نقاط بین راهی با کدهای جغرافیایی میانی که هر کدام حاوی یک فیلد شاخص است که به ترتیبی که در درخواست مشخص شده است، با موقعیت صفر نقطه راه مطابقت دارد.

GeocedWaypoint

جزئیات در مورد مکان های استفاده شده به عنوان ایستگاه های بین راه. فقط برای نقاط راه آدرس پر شده است. شامل جزئیاتی در مورد نتایج کدگذاری جغرافیایی به منظور تعیین اینکه آدرس به چه مکانی کدگذاری شده است.

نمایندگی JSON
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
زمینه های
geocoderStatus

object ( Status )

کد وضعیت حاصل از عملیات کدگذاری جغرافیایی را نشان می دهد.

type[]

string

نوع (های) نتیجه، به صورت تگ های صفر یا بیشتر. انواع پشتیبانی شده: انواع آدرس و انواع اجزای آدرس .

partialMatch

boolean

نشان می دهد که geocoder مطابقت دقیقی با درخواست اصلی برنگردانده است، اگرچه می تواند بخشی از آدرس درخواستی را مطابقت دهد. ممکن است بخواهید درخواست اصلی برای غلط املایی و/یا آدرس ناقص را بررسی کنید.

placeId

string

شناسه مکان برای این نتیجه.

intermediateWaypointRequestIndex

integer

شاخص نقطه میانی مربوطه در درخواست. فقط در صورتی پر می شود که نقطه بین راه مربوطه یک ایستگاه بین راهی باشد.