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 дней в будущем.

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

arrivalTime

string ( Timestamp format)

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

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

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

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.

Единицы

Набор значений, определяющих единицу измерения, используемую при отображении.

Перечисления
UNITS_UNSPECIFIED Единицы измерения не указаны. По умолчанию используется единица измерения, полученная из запроса.
METRIC Метрические единицы измерения.
IMPERIAL Имперские (английские) единицы измерения.

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

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

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

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

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

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

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

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

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

МаршрутНога

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

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

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

departureStop

object ( TransitStop )

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

departureTime

string ( Timestamp format)

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

Временная метка в формате RFC3339 UTC «Зулу» с наносекундным разрешением и до девяти дробных цифр. Примеры: "2014-10-02T15:01:23Z" и "2014-10-02T15:01:23.045123456Z" .

ТранзитСтоп

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

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 )

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

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

Содержит 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

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