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 .

Тело запроса

Тело запроса содержит данные следующей структуры:

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 . Транзитные поездки доступны на срок до 7 дней в прошлом или на 100 дней в будущем.

Использует RFC 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)

Необязательный. Время прибытия. ПРИМЕЧАНИЕ. Можно установить только в том случае, если для параметра RouteTravelMode установлено значение TRANSIT . Вы можете указать либо departureTime , либо arrivalTime , но не оба сразу. Транзитные поездки доступны на срок до 7 дней в прошлом или на 100 дней в будущем.

Использует RFC 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». Дополнительные сведения см. в разделе Идентификатор локали Unicode . Список поддерживаемых языков см. в разделе «Поддержка языков». Если вы не укажете это значение, язык отображения будет определяться на основе местоположения запроса маршрута.

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 учитывает различные параметры, которые позволят создать оптимальный маршрут с экономией топлива. При использовании этой функции ищите routeLabels на результирующих маршрутах.

extraComputations[]

enum ( ExtraComputation )

Необязательный. Список дополнительных вычислений, которые можно использовать для выполнения запроса. Примечание. Эти дополнительные вычисления могут возвращать дополнительные поля в ответе. Эти дополнительные поля также должны быть указаны в маске поля, которая будет возвращена в ответе.

trafficModel

enum ( TrafficModel )

Необязательный. Указывает предположения, которые следует использовать при расчете времени в пробке. Этот параметр влияет на значение, возвращаемое в поле длительности в полях Route и RouteLeg , которое содержит прогнозируемое время в трафике на основе исторических средних значений. TrafficModel доступен только для запросов, в которых для RoutingPreference установлено значение TRAFFIC_AWARE_OPTIMAL , а для RouteTravelMode — значение DRIVE . По умолчанию используется BEST_GUESS , если трафик запрошен, а TrafficModel не указан.

transitPreferences

object ( TransitPreferences )

Необязательный. Указывает предпочтения, влияющие на маршрут, возвращаемый для TRANSIT маршрутов. ПРИМЕЧАНИЕ. transitPreferences можно указать только в том случае, если для RouteTravelMode установлено значение TRANSIT .

Тело ответа

v2.computeПеренаправляет ответное сообщение.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Поля
routes[]

object ( Route )

Содержит массив вычисленных маршрутов (до трех), если вы compute_alternatives_routes , и содержит только один маршрут, если вы этого не делаете. Если этот массив содержит несколько записей, наиболее рекомендуемым маршрутом является первая. Если массив пуст, это означает, что маршрут не найден.

fallbackInfo

object ( FallbackInfo )

В некоторых случаях, когда сервер не может вычислить результаты маршрута со всеми входными предпочтениями, он может вернуться к использованию другого способа вычислений. Если используется резервный режим, это поле содержит подробную информацию о резервном ответе. В противном случае это поле не установлено.

geocodingResults

object ( GeocodingResults )

Содержит информацию ответа геокодирования для путевых точек, указанных как адреса.

ПолилинияКачество

Набор значений, определяющих качество полилинии.

Перечисления
POLYLINE_QUALITY_UNSPECIFIED Не указаны предпочтения качества полилиний. По умолчанию OVERVIEW .
HIGH_QUALITY Задает высококачественную ломаную линию, состоящую из большего количества точек, чем OVERVIEW , за счет увеличения размера ответа. Используйте это значение, когда вам нужна большая точность.
OVERVIEW Указывает обзорную полилинию, состоящую из небольшого количества точек. Используйте это значение при отображении обзора маршрута. Использование этого параметра обеспечивает меньшую задержку запроса по сравнению с использованием параметра HIGH_QUALITY .

ПолилинияКодирование

Указывает предпочтительный тип возвращаемой полилинии.

Перечисления
POLYLINE_ENCODING_UNSPECIFIED Не заданы предпочтения типа полилинии. По умолчанию ENCODED_POLYLINE .
ENCODED_POLYLINE Указывает полилинию, закодированную с использованием алгоритма кодирования полилиний .
GEO_JSON_LINESTRING Определяет полилинию в формате GeoJSON LineString.

Справочный маршрут

Поддерживаемый эталонный маршрут в ComputeRoutesRequest.

Перечисления
REFERENCE_ROUTE_UNSPECIFIED Не используется. Запросы, содержащие это значение, завершаются неудачно.
FUEL_EFFICIENT Экономичный маршрут.
SHORTER_DISTANCE

Маршрут с меньшим расстоянием путешествия. Это экспериментальная функция.

В запросах DRIVE эта функция отдает предпочтение более короткому расстоянию, а не комфорту вождения. Например, он может предпочитать местные дороги автомагистралям, выбирать грунтовые дороги, проезжать через парковки и т. д. Эта функция не возвращает данные о маневрах, которые Google Maps считает незаконными.

Для запросов BICYCLE и TWO_WHEELER эта функция возвращает маршруты, аналогичные тем, которые возвращаются, если вы не указываете requestedReferenceRoutes .

Эта функция несовместима ни с какими другими режимами путешествия, через промежуточные точки optimizeWaypointOrder ; такие запросы не будут выполнены. Однако вы можете использовать его с любым routingPreference .

Дополнительные вычисления

Дополнительные вычисления, которые необходимо выполнить при выполнении запроса.

Перечисления
EXTRA_COMPUTATION_UNSPECIFIED Не используется. Запросы, содержащие это значение, не будут выполнены.
TOLLS Информация о платных маршрутах.
FUEL_CONSUMPTION Ориентировочный расход топлива по маршруту(ам).
TRAFFIC_ON_POLYLINE Полилинии с учетом трафика для маршрутов.
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions представлены в виде текстовой строки в формате HTML. Этот контент предназначен для чтения «как есть». Этот контент предназначен только для отображения. Не анализируйте его программно.
FLYOVER_INFO_ON_POLYLINE Информация о эстакаде для маршрута(ов). Для возврата этой информации необходимо указать маску поля routes.polyline_details.flyover_info . В настоящее время эти данные будут заполнены только для некоторых метрополитенов Индии. Эта функция является экспериментальной, поэтому артикул/стоимость могут быть изменены.
NARROW_ROAD_INFO_ON_POLYLINE Информация об узких дорогах для маршрута(ов). Для возврата этой информации необходимо указать маску поля routes.polyline_details.narrow_road_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 )

Набор участков (сегментов пути между путевыми точками), составляющих маршрут. Каждый этап соответствует поездке между двумя 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; Промежуточные путевые точки: Даллас, Бангор, Феникс; Пункт назначения: Нью-Йорк; и оптимизированный порядок промежуточных точек — Феникс, Даллас, Бангор, тогда это поле содержит значения [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 не поддерживается для запросов, содержащих путевые точки Via.

polylineDetails

object ( PolylineDetails )

Содержит информацию о деталях вдоль полилинии.

Метка маршрута

Метки Route , которые полезны для определения конкретных свойств маршрута для сравнения с другими.

Перечисления
ROUTE_LABEL_UNSPECIFIED По умолчанию – не используется.
DEFAULT_ROUTE «Лучший» маршрут по умолчанию, возвращаемый для расчета маршрута.
DEFAULT_ROUTE_ALTERNATE Альтернатива «лучшему» маршруту по умолчанию. Маршруты, подобные этому, будут возвращены, если указан computeAlternativeRoutes .
FUEL_EFFICIENT Экономичный маршрут. Маршруты, отмеченные этим значением, считаются оптимизированными с учетом параметров Eco, таких как расход топлива.
SHORTER_DISTANCE Маршрут с более коротким расстоянием. Это экспериментальная функция.

МаршрутНога

Содержит сегмент между точками маршрута, не 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-представление
{

  // 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 .

МаршрутНогаШаг

Содержит сегмент 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 )

Режим движения, используемый для этого шага.

Маневр

Набор значений, определяющих действие навигации, которое необходимо выполнить для текущего шага (например, поворот налево, слияние или прямо).

Перечисления
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 Используется для обозначения изменения названия улицы.

МаршрутНогаШагПутешествиеКонсультационный совет

Содержит дополнительную информацию, о которой следует сообщить пользователю, например, возможные ограничения зоны движения на шаге ноги.

JSON-представление
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
Поля
speedReadingIntervals[]

object ( SpeedReadingInterval )

ПРИМЕЧАНИЕ. Это поле в настоящее время не заполнено.

МаршрутЛегШтепЛокализованныеЗначения

Текстовые представления определенных свойств.

JSON-представление
{
  "distance": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Поля
distance

object ( LocalizedText )

Расстояние путешествия представлено в текстовой форме.

staticDuration

object ( LocalizedText )

Продолжительность без учета условий движения, представленная в текстовом виде.

МаршрутНогаШагТранзитПодробнее

Дополнительная информация для 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 по будням в Сакраменто, Калифорния.

Транзитная остановкаПодробнее

Подробности о транзитных остановках для RouteLegStep .

JSON-представление
{
  "arrivalStop": {
    object (TransitStop)
  },
  "arrivalTime": string,
  "departureStop": {
    object (TransitStop)
  },
  "departureTime": string
}
Поля
arrivalStop

object ( TransitStop )

Информация об остановке прибытия на шаг.

arrivalTime

string ( Timestamp format)

Расчетное время прибытия шага.

Использует RFC 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)

Ориентировочное время выхода на шаг.

Использует RFC 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" .

ТранзитСтоп

Информация о транзитной остановке.

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 )

Время в форматированном текстовом представлении с соответствующим часовым поясом.

Локализованноевремя

Локализованное описание времени.

JSON-представление
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Поля
time

object ( LocalizedText )

Время, указанное в виде строки в заданном часовом поясе.

timeZone

string

Содержит часовой пояс. Значением является название часового пояса, определенное в базе данных часовых поясов IANA , например «Америка/Нью_Йорк».

ТранзитЛайн

Содержит информацию о транзитной линии, использованной на этом этапе.

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_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 Троллейбус.

МаршрутНогаПутешествиеРекомендации

Содержит дополнительную информацию, о которой пользователь должен быть проинформирован на шаге ноги, например, возможные ограничения зон движения.

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).

МаршрутЛегЛокализованныеЗначения

Текстовые представления определенных свойств.

JSON-представление
{
  "distance": {
    object (LocalizedText)
  },
  "duration": {
    object (LocalizedText)
  },
  "staticDuration": {
    object (LocalizedText)
  }
}
Поля
distance

object ( LocalizedText )

Расстояние путешествия представлено в текстовой форме.

duration

object ( LocalizedText )

Продолжительность, представленная в текстовой форме и локализованная для региона запроса. Учитывает условия дорожного движения. Примечание. Если вы не запрашивали информацию о трафике, это значение совпадает со значением staticDuration.

staticDuration

object ( LocalizedText )

Продолжительность без учета условий движения, представленная в текстовом виде.

ШагиОбзор

Предоставляет обзорную информацию о списке RouteLegStep .

JSON-представление
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Поля
multiModalSegments[]

object ( MultiModalSegment )

Обобщенная информация о различных мультимодальных сегментах RouteLeg.steps . Это поле не заполняется, если RouteLeg не содержит мультимодальных сегментов в шагах.

Мультимодальный сегмент

Предоставляет сводную информацию о различных мультимодальных сегментах 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 должны быть заполнены, а представленное поле не может быть пустым (как указано в определениях выше). Пустое окно просмотра приведет к ошибке.

Например, это окно просмотра полностью охватывает Нью-Йорк:

{ "низкая": { "широта": 40,477398, "долгота": -74,259087 }, "высокая": { "широта": 40,91618, "долгота": -73,70018 } }

JSON-представление
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Поля
low

object ( LatLng )

Необходимый. Нижняя точка смотрового окна.

high

object ( LatLng )

Необходимый. Самая высокая точка смотрового окна.

МаршрутLocalizedValues

Текстовые представления определенных свойств.

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 )

Транзитный тариф представлен в текстовом виде.

ПолилинияПодробнее

Детали, соответствующие заданному индексу или непрерывному сегменту полилинии. Для полилинии с точками P_0, P_1,..., P_N (индекс, начинающийся с нуля), PolylineDetails определяет интервал и связанные метаданные.

JSON-представление
{
  "flyoverInfo": [
    {
      object (FlyoverInfo)
    }
  ],
  "narrowRoadInfo": [
    {
      object (NarrowRoadInfo)
    }
  ]
}
Поля
flyoverInfo[]

object ( FlyoverInfo )

Детали эстакады вдоль полилинии.

narrowRoadInfo[]

object ( NarrowRoadInfo )

Детали узкой дороги вдоль полилинии.

FlyoverИнформация

Инкапсулирует информацию о развязках вдоль полилинии.

JSON-представление
{
  "flyoverPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
Поля
flyoverPresence

enum ( RoadFeatureState )

Только вывод. Указывает, существует ли эстакада на данном участке полилинии.

polylinePointIndex

object ( PolylinePointIndex )

Расположение информации, связанной с эстакадой, вдоль полилинии.

ДорогаХарактеристикаСостояние

Инкапсулирует состояния объектов дороги вдоль участка полилинии.

Перечисления
ROAD_FEATURE_STATE_UNSPECIFIED Состояние объекта дороги не было рассчитано (значение по умолчанию).
EXISTS Объект дороги существует.
DOES_NOT_EXIST Объект дороги не существует.

ПолилинияПоинтИндекс

Инкапсулирует начальный и конечный индексы полилинии. В тех случаях, когда данные соответствуют одной точке, startIndex и endIndex будут равны.

JSON-представление
{
  "startIndex": integer,
  "endIndex": integer
}
Поля
startIndex

integer

Начальный индекс детали в полилинии.

endIndex

integer

Конечный индекс этой детали в полилинии.

УзкаяДорогаИнформация

Инкапсулирует информацию об узких дорогах вдоль полилинии.

JSON-представление
{
  "narrowRoadPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
Поля
narrowRoadPresence

enum ( RoadFeatureState )

Только вывод. Указывает, существует ли узкая дорога на данном участке полилинии.

polylinePointIndex

object ( PolylinePointIndex )

Расположение информации, связанной с узкой дорогой, вдоль полилинии.

Результаты геокодирования

Содержит GeocodedWaypoints для точек отправления, назначения и промежуточных путевых точек. Заполняется только для адресных путевых точек.

JSON-представление
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Поля
origin

object ( GeocodedWaypoint )

Исходная геокодированная путевая точка.

destination

object ( GeocodedWaypoint )

Геокодированная путевая точка пункта назначения.

intermediates[]

object ( GeocodedWaypoint )

Список промежуточных геокодированных путевых точек, каждая из которых содержит индексное поле, соответствующее положению путевой точки, отсчитываемому от нуля, в том порядке, в котором они были указаны в запросе.

Геокодированная путевая точка

Подробная информация о местах, используемых в качестве путевых точек. Заполняется только для адресных путевых точек. Включает подробную информацию о результатах геокодирования для определения того, для чего был геокодирован адрес.

JSON-представление
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Поля
geocoderStatus

object ( Status )

Указывает код состояния, полученный в результате операции геокодирования.

type[]

string

Тип(ы) результата в виде нуля или более тегов типа. Поддерживаемые типы: типы адресов и типы компонентов адреса .

partialMatch

boolean

Указывает, что геокодер не вернул точное совпадение с исходным запросом, хотя смог сопоставить часть запрошенного адреса. Вы можете проверить исходный запрос на предмет орфографических ошибок и/или неполного адреса.

placeId

string

Идентификатор места для этого результата.

intermediateWaypointRequestIndex

integer

Индекс соответствующей промежуточной точки в запросе. Заполняется только в том случае, если соответствующая путевая точка является промежуточной.

,

Возвращает основной маршрут вместе с дополнительными альтернативными маршрутами, учитывая набор конечных и промежуточных точек.

ПРИМЕЧАНИЕ. Для этого метода требуется указать маску поля ответа во входных данных. Вы можете предоставить маску поля ответа, используя параметр 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 .

Тело запроса

Тело запроса содержит данные следующей структуры:

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 . Транзитные поездки доступны на срок до 7 дней в прошлом или на 100 дней в будущем.

Использует RFC 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)

Необязательный. Время прибытия. ПРИМЕЧАНИЕ. Можно установить только в том случае, если для параметра RouteTravelMode установлено значение TRANSIT . Вы можете указать либо departureTime , либо arrivalTime , но не оба сразу. Транзитные поездки доступны на срок до 7 дней в прошлом или на 100 дней в будущем.

Использует RFC 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». Дополнительные сведения см. в разделе Идентификатор локали Unicode . Список поддерживаемых языков см. в разделе «Поддержка языков». Если вы не укажете это значение, язык отображения будет определяться на основе местоположения запроса маршрута.

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 учитывает различные параметры, которые генерируют оптимальный маршрут топлива. При использовании этой функции ищите routeLabels на полученных маршрутах.

extraComputations[]

enum ( ExtraComputation )

Необязательный. Список дополнительных вычислений, которые могут использоваться для выполнения запроса. Примечание. Эти дополнительные вычисления могут вернуть дополнительные поля в ответе. Эти дополнительные поля также должны быть указаны в полевой маске, чтобы быть возвращенным в ответе.

trafficModel

enum ( TrafficModel )

Необязательный. Определяет предположения, которые используются при расчете времени в трафике. Эта настройка влияет на значение, возвращаемое в поле продолжительности в Route и RouteLeg , которое содержит прогнозируемое время в движении, основанное на исторических средних значениях. TrafficModel доступен только для запросов, которые устанавливают RoutingPreference на TRAFFIC_AWARE_OPTIMAL и RouteTravelMode для DRIVE . По умолчанию BEST_GUESS , если запрашивается трафик, а TrafficModel не указан.

transitPreferences

object ( TransitPreferences )

Необязательный. Указывает предпочтения, которые влияют на маршрут, возвращаемый для TRANSIT маршрутов. ПРИМЕЧАНИЕ. Вы можете указать transitPreferences только при установке RouteTravelMode для TRANSIT .

Тело ответа

v2.computerouts отвечает на сообщение.

В случае успеха тело ответа содержит данные следующей структуры:

JSON-представление
{
  "routes": [
    {
      object (Route)
    }
  ],
  "fallbackInfo": {
    object (FallbackInfo)
  },
  "geocodingResults": {
    object (GeocodingResults)
  }
}
Поля
routes[]

object ( Route )

Содержит массив вычисленных маршрутов (до трех), когда вы указываете compute_alternatives_routes и содержит только один маршрут, когда нет. Когда этот массив содержит несколько записей, первый является наиболее рекомендуемым маршрутом. Если массив пуст, то это означает, что маршрут не может быть найдено.

fallbackInfo

object ( FallbackInfo )

В некоторых случаях, когда сервер не может вычислять результаты маршрута со всеми входными предпочтениями, он может отступить для использования другого способа вычисления. Когда используется резервный режим, это поле содержит подробную информацию о ответном ответе. В противном случае это поле не является.

geocodingResults

object ( GeocodingResults )

Содержит информацию о ответе геокодирования для путевых точек, указанных в качестве адресов.

Полилинвальт

Набор значений, которые указывают качество полилинии.

Перечисления
POLYLINE_QUALITY_UNSPECIFIED Не указано предпочтение качественного качества. По умолчанию OVERVIEW .
HIGH_QUALITY Определяет высококачественную полилинию, которая состоит из большего количества точек, чем OVERVIEW , за счет увеличения размера отклика. Используйте это значение, когда вам нужно больше точности.
OVERVIEW Определяет обзор полилинии, который состоит из небольшого количества точек. Используйте это значение при отображении обзора маршрута. Использование этой опции имеет более низкую задержку запроса по сравнению с использованием опции HIGH_QUALITY .

Полинозодирование

Определяет предпочтительный тип полилинии, который будет возвращен.

Перечисления
POLYLINE_ENCODING_UNSPECIFIED Не указано предпочтение типа полилины. По умолчанию ENCODED_POLYLINE .
ENCODED_POLYLINE Определяет полилин, закодированную с использованием алгоритма кодирования полилины .
GEO_JSON_LINESTRING Определяет полилин, используя формат Geojson Linestring

Ссылка

Поддерживаемый справочный маршрут на компьютерной области.

Перечисления
REFERENCE_ROUTE_UNSPECIFIED Не используется. Запросы, содержащие это значение, не сбои.
FUEL_EFFICIENT Экономичный маршрут.
SHORTER_DISTANCE

Маршрут с более коротким расстоянием движения. Это экспериментальная особенность.

Для запросов DRIVE эта функция приоритет более коротким расстоянием по сравнению с комфортом вождения. Например, он может предпочесть местные дороги вместо автомагистралей, проходить грунтовые дороги, прорезать парковки и т. Д. Эта функция не возвращает каких -либо маневров, которые, как считают Google Maps незаконными.

Для запросов BICYCLE и TWO_WHEELER эта функция возвращает маршруты, похожие на возвращаемые, когда вы не указываете requestedReferenceRoutes .

Эта функция не совместима с какими -либо другими режимами движения, через промежуточные путевые точки или optimizeWaypointOrder Такие запросы потерпят неудачу. Тем не менее, вы можете использовать его с любым routingPreference .

Внешневатор

Дополнительные вычисления для выполнения при выполнении запроса.

Перечисления
EXTRA_COMPUTATION_UNSPECIFIED Не используется. Запросы, содержащие это значение, потерпят неудачу.
TOLLS Информация о платежей по маршруту (и).
FUEL_CONSUMPTION Расчетный расход топлива для маршрута (ы).
TRAFFIC_ON_POLYLINE Полилички, осведомленные о трафике для маршрута (ы).
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS NavigationInstructions представленные в виде форматированной текстовой строки HTML. Этот контент предназначен для чтения как есть. Этот контент предназначен только для отображения. Не программно проанализируйте это.
FLYOVER_INFO_ON_POLYLINE Информация о эстакаде для маршрута. routes.polyline_details.flyover_info Fieldmask должен быть указан для возврата этой информации. Эти данные в настоящее время будут заполнены только для определенных метро в Индии. Эта функция экспериментальна, а SKU/заряд может быть изменена.
NARROW_ROAD_INFO_ON_POLYLINE Узкая информация о дороге для маршрута. routes.polyline_details.narrow_road_info Fieldmak должен быть указан для возврата этой информации. Эти данные в настоящее время будут заполнены только для определенных метро в Индии. Эта функция экспериментальна, а SKU/заряд может быть изменена.

Маршрут

Содержит маршрут, который состоит из ряда подключенных дорожных сегментов, которые соединяются с началом, окончанием и промежуточными путевыми точками.

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 True, это поле содержит оптимизированное упорядочение промежуточных путевых точек. В противном случае это поле пустое. Например, если вы даете вклад в происхождение: LA; Промежуточные путевые точки: Даллас, Бангор, Феникс; Назначение: Нью -Йорк; и оптимизированный промежуточный порядок путевой точки - Феникс, Даллас, Бангор, тогда это поле содержит значения [2, 0, 1]. Индекс начинается с 0 для первой промежуточной путевой точки, предоставленной на входе.

localizedValues

object ( RouteLocalizedValues )

Текстовые представления свойств Route .

routeToken

string

Непрозрачный токен, который можно передать в SDK навигации для восстановления маршрута во время навигации, и, в случае перенаправления, соблюдайте первоначальное намерение, когда был создан маршрут. Обратитесь к этому токен как непрозрачный каплей. Не сравнивайте его значение по запросам, так как его значение может измениться, даже если служба возвращает тот же маршрут.

Примечание: Route.route_token доступен только для запросов, которые имеют установку ComputeRoutesRequest.routing_preference на TRAFFIC_AWARE или TRAFFIC_AWARE_OPTIMAL . Route.route_token не поддерживается для запросов, которые имеют путевые точки.

polylineDetails

object ( PolylineDetails )

Содержит информацию о деталях вдоль полилины.

RouteLabel

Метки для Route , которые полезны для определения конкретных свойств маршрута для сравнения с другими.

Перечисления
ROUTE_LABEL_UNSPECIFIED По умолчанию - не используется.
DEFAULT_ROUTE По умолчанию «Лучший» маршрут вернулся для вычисления маршрута.
DEFAULT_ROUTE_ALTERNATE Альтернатива маршруту «Лучший» по умолчанию. Подобные маршруты будут возвращены, когда будет указана computeAlternativeRoutes .
FUEL_EFFICIENT Экономичный маршрут. Маршруты, помеченные этим значением, определяются как оптимизированные для параметров ECO, таких как расход топлива.
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-представление
{

  // 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 . Инкапсулирует тип полилинии. По умолчанию кодировать_полилин. polyline_type может быть только одним из следующих:
encodedPolyline

string

Строка кодирования полилины с использованием алгоритма кодирования полилины

geoJsonLinestring

object ( Struct format)

Определяет полилин, используя формат Linestring Geojson .

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 )

Режим движения, используемый для этого шага.

Маневр

Набор значений, которые указывают на навигационное действие, чтобы предпринять для текущего шага (например, поверните налево, слияние или прямо).

Перечисления
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)

Определяет ожидаемое время как продолжительность между отъездами от той же остановки в это время. Например, со значением Headway Seconds 600 вы ожидаете, что вы ожидаете, если вам следует пропустить свой автобус.

Длительность в секундах, содержащая до девяти дробных цифр и оканчивающаяся на « s ». Пример: "3.5s" .

transitLine

object ( TransitLine )

Информация о транзитной линии, используемой на этом этапе.

stopCount

integer

Количество остановок от отъезда до остановки прибытия. Этот счет включает в себя остановку прибытия, но исключает остановку отъезда. Например, если ваш маршрут уходит от остановки A, проходит через остановки B и C и прибывает на Stop 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)

Расчетное время прибытия для шага.

Использует RFC 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)

Расчетное время отправления на шаг.

Использует RFC 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" .

Транзитстоп

Информация о транзитной остановке.

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 )

Время в его отформатированном текстовом представлении с соответствующим часовым поясом.

Локализованный время

Локализованное описание времени.

JSON-представление
{
  "time": {
    object (LocalizedText)
  },
  "timeZone": string
}
Поля
time

object ( LocalizedText )

Время, указанное как строка в данном часовом поясе.

timeZone

string

Содержит часовой пояс. Значение - это название часового пояса, как определено в базе данных IANA Time Rate , например, «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

Ури транзитного агентства.

Транзит

Информация о транспортном средстве, используемом в транзитных маршрутах.

JSON-представление
{
  "name": {
    object (LocalizedText)
  },
  "type": enum (TransitVehicleType),
  "iconUri": string,
  "localIconUri": string
}
Поля
name

object ( LocalizedText )

Название этого автомобиля, капитализированное.

type

enum ( TransitVehicleType )

Тип используемого транспортного средства.

iconUri

string

URI для значка, связанной с этим типом транспортного средства.

localIconUri

string

URI для значка, связанного с этим типом транспортного средства, на основе местных транспортных вывесок.

Transitvehicletype

Тип транспортных средств для транзитных маршрутов.

Перечисления
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 )

Продолжительность без учета условий движения, представленных в текстовой форме.

STESTORGEVERVIEW

Предоставляет обзор информации о списке RouteLegStep s.

JSON-представление
{
  "multiModalSegments": [
    {
      object (MultiModalSegment)
    }
  ]
}
Поля
multiModalSegments[]

object ( MultiModalSegment )

Суммировала информацию о различных мультимодальных сегментах RouteLeg.steps . Это поле не заполнено, если на RouteLeg не содержит каких-либо мультимодальных сегментов.

Мультимодалсегмент

Предоставляет суммированную информацию о различных мультимодальных сегментах 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 , который является конец мультимодального сегмента.

ViewPort

Широта длительного просмотра, представленное как два диагонали напротив low и high точек. Viewport считается закрытым регионом, то есть он включает в себя свою границу. Границы широты должны варьироваться от -90 до 90 градусов включено, а границы долготы должны варьироваться от -180 до 180 градусов включено. Различные случаи включают:

  • Если low = high , топорт Views состоит из этой единственной точки.

  • Если low.longitude > high.longitude .

  • Если low.longitude = -180 градусов и high.longitude .

  • Если low.longitude = 180 градусов и high.longitude = -180 градусов, диапазон долготы пуст.

  • Если low.latitude > high.latitude , диапазон широты пуст.

Как low , так и high должен быть заполнен, а представленная коробка не может быть пустой (как указано по определениям выше). Пустой вид просмотра приведет к ошибке.

Например, этот вид VIELE полностью прилагает Нью -Йорк:

{"low": {"Latitude": 40.477398, "Londitude": -74.259087}, "High": {"Latitude": 40.91618, "Londitude": -73.70018}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}

JSON-представление
{
  "low": {
    object (LatLng)
  },
  "high": {
    object (LatLng)
  }
}
Поля
low

object ( LatLng )

Необходимый. Низкая точка просмотра.

high

object ( LatLng )

Необходимый. Высшая точка просмотра.

RateLocalizedValues

Текстовые представления определенных свойств.

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 )

Транзитный тариф представлен в текстовой форме.

Полилифинетисты

Детали, соответствующие данному индексу или смежному сегменту полилинии. Учитывая полилин с точками p_0, p_1, ..., p_n (индекс на основе нуля), PolylineDetails определяют интервал и связанные метаданные.

JSON-представление
{
  "flyoverInfo": [
    {
      object (FlyoverInfo)
    }
  ],
  "narrowRoadInfo": [
    {
      object (NarrowRoadInfo)
    }
  ]
}
Поля
flyoverInfo[]

object ( FlyoverInfo )

Детали эстакады вдоль полилины.

narrowRoadInfo[]

object ( NarrowRoadInfo )

Узкие дорожные детали вдоль полилины.

RelooverInfo

Инкапсулирует информацию о эстакаде вдоль полилины.

JSON-представление
{
  "flyoverPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
Поля
flyoverPresence

enum ( RoadFeatureState )

Только вывод. Обозначает, существует ли эстакада для данного участка полилинии.

polylinePointIndex

object ( PolylinePointIndex )

Расположение информации, связанной с эстакадой вдоль полилины.

Roadfeaturestate

Инкапсулирует состояния дорожных особенностей вдоль полосы полилины.

Перечисления
ROAD_FEATURE_STATE_UNSPECIFIED Состояние функции дороги не было рассчитано (значение по умолчанию).
EXISTS Дорожная функция существует.
DOES_NOT_EXIST Дорожной функции не существует.

PolylinePointIndex

Инкапсулирует начальные и конечные индексы для детализации полилинии. Для случаев, когда данные соответствуют одной точке, startIndex и endIndex будут равны.

JSON-представление
{
  "startIndex": integer,
  "endIndex": integer
}
Поля
startIndex

integer

Начальный индекс этой детали в полилинии.

endIndex

integer

Конечный индекс этой детали в полилинии.

Узкий роудфо

Инкапсулирует информацию о узких дорогах вдоль полилины.

JSON-представление
{
  "narrowRoadPresence": enum (RoadFeatureState),
  "polylinePointIndex": {
    object (PolylinePointIndex)
  }
}
Поля
narrowRoadPresence

enum ( RoadFeatureState )

Только вывод. Обозначает, существует ли узкая дорога для данного участка полилинии.

polylinePointIndex

object ( PolylinePointIndex )

Расположение узкой дорожной информации вдоль полилины.

Геокодингрессы

Содержит GeocodedWaypoints для происхождения, назначения и промежуточных путевых точек. Заполнено только для адресных путевых точек.

JSON-представление
{
  "origin": {
    object (GeocodedWaypoint)
  },
  "destination": {
    object (GeocodedWaypoint)
  },
  "intermediates": [
    {
      object (GeocodedWaypoint)
    }
  ]
}
Поля
origin

object ( GeocodedWaypoint )

Происхождение геокодированной путевой точки.

destination

object ( GeocodedWaypoint )

Путешествие по геокодированию назначения.

intermediates[]

object ( GeocodedWaypoint )

Список промежуточных геокодированных путевых точек, каждая из которых содержит поле индекса, которое соответствует нулевой позиции путевой точки в порядке, который они были указаны в запросе.

GeocodewayPoint

Подробности о местах, используемых в качестве путевых точек. Заполнено только для адресных путевых точек. Включает подробную информацию о результатах геокодирования для целей определения того, что был геокодирован.

JSON-представление
{
  "geocoderStatus": {
    object (Status)
  },
  "type": [
    string
  ],
  "partialMatch": boolean,
  "placeId": string,
  "intermediateWaypointRequestIndex": integer
}
Поля
geocoderStatus

object ( Status )

Указывает код состояния, возникающий в результате операции геокодирования.

type[]

string

Тип (ы) результата в форме ноль или более тегов типа. Поддерживаемые типы: типы адресов и типы компонентов адресов .

partialMatch

boolean

Указывает, что геокодер не вернул точного совпадения для исходного запроса, хотя он смог сопоставить часть запрошенного адреса. Вы можете рассмотреть исходный запрос на ошибки и/или неполный адрес.

placeId

string

Идентификатор места для этого результата.

intermediateWaypointRequestIndex

integer

Индекс соответствующей промежуточной путевой точки в запросе. Заполнена только если соответствующая путевая точка является промежуточной путевой точкой.