При расчете маршрута или маршрутной матрицы может потребоваться учесть любые сборы за проезд по платным дорогам. Для некоторых городов можно рассчитать ориентировочную стоимость проезда по маршруту в соответствующей валюте.
Чтобы рассчитать плату за проезд по маршрутной матрице, см. раздел «Расчет платы за проезд по маршрутной матрице» .
Список поддерживаемых пунктов взимания платы за проезд см. в справочной информации по TollPass .
Как рассчитывается плата за проезд по платным дорогам
API маршрутов рассчитывает ориентировочную стоимость проезда по платной дороге, учитывая любые скидки или проездные, доступные водителю или транспортному средству, а также наиболее удобные способы оплаты. Если для данного маршрута нет доступной информации о стоимости проезда, API маршрутов указывает на наличие платного участка с неизвестной стоимостью.
Для получения точных оценок стоимости проезда по платным дорогам, обязательно укажите в своем запросе следующую информацию:
- Тип выбросов транспортного средства, используемого на маршруте (
VehicleEmissionType). Если тип выбросов не указан, возвращается плата за проезд для транспортного средства с бензиновым двигателем. - Все проездные билеты, имеющиеся у транспортного средства и водителя, используются с помощью (
TollPass). API использует проездные билеты для определения точных тарифов и возвращает цены наличными, если проездные билеты в запросе не находятся в пределах маршрута. - При необходимости укажите, что следует избегать платных дорог . Если вы хотите по возможности избегать платных дорог, добавьте
avoidTollsв качествеRouteModifier.
Рассчитайте стоимость проезда по платной дороге, используя проездной.
Для расчета платы за проезд с использованием проездного необходимо указать все доступные проездные в запросе. После этого API вернет цены проездных.
Если вы укажете недействительный проездной, он будет проигнорирован.
Если указать несколько проездных билетов в виде массива, API попытается рассчитать стоимость маршрута для каждого билета.
Принцип работы платных проездных может различаться в зависимости от региона.
Стоимость проезда может быть ниже при наличии проездного : в некоторых регионах водитель или транспортное средство с проездным платит другую плату, чем те, у кого проездного нет. Например, если у вас есть проездной Good To Go! в Сиэтле, штат Вашингтон, США, вы заплатите меньшую плату, чем если бы у вас его не было.
Для проезда по некоторым дорогам может потребоваться платный проездной : В некоторых регионах, например, в Индонезии, на некоторых дорогах требуется платный проездной. Если вы не укажете платный проездной для маршрута, где он необходим, API не вернет стоимость проезда.
Рассчитайте плату за проезд по платной дороге.
В следующем примере метод computeRoutes возвращает информацию о стоимости проезда по платной дороге с указанием приблизительной цены при использовании проездного. В этом примере вы:
Установите для поля массива
extraComputationsзначениеTOLLS, чтобы включить расчет информации о платных дорогах.Укажите тип транспортного средства и тип проездного билета, используя поле
routeModifiersв запросе. Возвращаемая цена проезда будет основана на тарифах, используемых для указанного типа транспортного средства и проездного билета. Если указано более одного проездного билета, возвращается самая дешевая цена.Используйте маску поля ответа , чтобы настроить метод, возвращающий информацию о плате за проезд в ответе. В этом примере запрос включал следующие свойства в маске поля ответа:
Поле
routes.travelAdvisory.tollInfoвозвращает информацию по всему маршруту.routes.legs.travelAdvisory.tollInfoвозвращает информацию по каждому участку маршрута.
Запрос информации о платных дорогах
curl -X POST -d '{ "origin":{ "location":{ "latLng":{ "latitude":42.340173523716736, "longitude":-71.05997968330408 } } }, "destination":{ "location":{ "latLng":{ "latitude":42.075698891472804, "longitude": -72.59806562080408 } } }, "travelMode": "DRIVE", "extraComputations": ["TOLLS"], "routeModifiers":{ "vehicleInfo":{ "emissionType": "GASOLINE" }, "tollPasses": [ "US_MA_EZPASSMA", "US_WA_GOOD_TO_GO" ] } }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.travelAdvisory.tollInfo,routes.legs.travelAdvisory.tollInfo' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Ответ, содержащий информацию о плате за проезд.
В ответе содержится информация о платных дорогах в объекте TollInfo (REST) или TollInfo (gRPC). В этом примере возвращается информация о платных дорогах для всего маршрута и для каждого его участка.
{ "routes": [ { "legs": [ { "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ], "distanceMeters": 150338, "duration": "6650s", "travelAdvisory": { "tollInfo": { "estimatedPrice": [ { "currencyCode": "USD", "units": "4", "nanos": 400000000 } ] } } } ] }