Package google.maps.routes.v1

索引

RoutesPreferred

Routes Preferred API。

ComputeCustomRoutes

rpc ComputeCustomRoutes(ComputeCustomRoutesRequest) returns (ComputeCustomRoutesResponse)

给定一组终点和中间航点以及路线目标,计算路线目标的最佳路线。返回最快路线和最短路线作为参考路线。

注意:此方法要求您在输入中指定响应字段掩码。您可以使用网址参数 $fieldsfields,或使用 HTTP/gRPC 标头 X-Goog-FieldMask 提供响应字段掩码(请参阅可用的网址参数和标头)。该值是以英文逗号分隔的字段路径列表。请参阅有关如何构造字段路径的详细文档。

例如,在此方法中:

  • 所有可用字段的字段掩码(适用于人工检查):X-Goog-FieldMask: *
  • 路线距离、时长、令牌和过路费信息的字段掩码:X-Goog-FieldMask: routes.route.distanceMeters,routes.route.duration,routes.token,routes.route.travelAdvisory.tollInfo

Google 不建议使用通配符 (*) 响应字段掩码,也不在顶级 (routes) 指定字段掩码,原因如下:

  • 仅选择您需要的字段有助于我们的服务器节省计算周期,从而以更低的延迟将结果返回给您。
  • 在生产作业中仅选择您需要的字段,以确保延迟性能稳定。我们未来可能会添加更多响应字段,这些新字段可能需要额外的计算时间。如果您选择所有字段,或者选择顶级的所有字段,则可能会出现性能下降,因为我们添加的任何新字段都会自动包含在响应中。
  • 仅选择所需字段会使响应大小变小,从而提高网络吞吐量。
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

如需了解详情,请参阅 OAuth 2.0 概览

ComputeRouteMatrix

rpc ComputeRouteMatrix(ComputeRouteMatrixRequest) returns (RouteMatrixElement)

接受出发地和目的地的列表,并返回包含每种出发地和目的地组合的路线信息的数据流。

注意:此方法要求您在输入中指定响应字段掩码。您可以通过以下两种方式提供响应字段掩码:使用网址参数 $fieldsfields,或者使用 HTTP/gRPC 标头 X-Goog-FieldMask(请参阅可用的网址参数和标头)。该值是以英文逗号分隔的字段路径列表。请参阅有关如何构建字段路径的详细文档。

例如,在此方法中:

  • 所有可用字段的字段掩码(用于手动检查):X-Goog-FieldMask: *
  • 路线时长、距离、元素状态、条件和元素索引的字段掩码(正式版设置示例):X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

请务必在字段掩码中添加 status,否则所有消息都将显示为正常。Google 不建议使用通配符 (*) 响应字段掩码,因为:

  • 仅选择您需要的字段有助于我们的服务器节省计算周期,从而让我们能够以更短的延迟时间向您返回结果。
  • 在生产作业中仅选择您需要的字段,以确保延迟性能稳定。我们未来可能会添加更多响应字段,这些新字段可能需要额外的计算时间。如果您选择所有字段,或者选择顶级的所有字段,则可能会出现性能下降,因为我们添加的任何新字段都会自动包含在响应中。
  • 仅选择所需字段会使响应大小变小,从而提高网络吞吐量。
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

如需了解详情,请参阅 OAuth 2.0 概览

ComputeRoutes

rpc ComputeRoutes(ComputeRoutesRequest) returns (ComputeRoutesResponse)

给定一组终点和中间航点,返回主要路线以及可选的备用路线。

注意:此方法要求您在输入中指定响应字段掩码。您可以使用网址参数 $fieldsfields,或使用 HTTP/gRPC 标头 X-Goog-FieldMask 提供响应字段掩码(请参阅可用的网址参数和标头)。该值是以英文逗号分隔的字段路径列表。请参阅有关如何构造字段路径的详细文档。

例如,在此方法中:

  • 所有可用字段的字段掩码(适用于人工检查):X-Goog-FieldMask: *
  • 路线级时长、距离和多段线的字段掩码(生产设置示例):X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline.encodedPolyline

Google 不建议使用通配符 (*) 响应字段掩码,也不在顶级 (routes) 指定字段掩码,原因如下:

  • 仅选择您需要的字段有助于我们的服务器节省计算周期,从而以更低的延迟将结果返回给您。
  • 在生产作业中仅选择您需要的字段,以确保延迟性能稳定。我们未来可能会添加更多响应字段,这些新字段可能需要额外的计算时间。如果您选择所有字段,或者选择顶级的所有字段,则可能会出现性能下降,因为我们添加的任何新字段都会自动包含在响应中。
  • 仅选择所需字段会使响应大小变小,从而提高网络吞吐量。
授权范围

需要以下 OAuth 范围:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

如需了解详情,请参阅 OAuth 2.0 概览

ComputeCustomRoutesRequest

ComputeCustomRoutes 请求消息。

字段
origin

Waypoint

必需。出发地航点。

destination

Waypoint

必需。目的地航点。

intermediates[]

Waypoint

可选。路线沿途的一组航点(不包括航站点),可在以下地点经停或经过。最多支持 25 个中间航点。

travel_mode

RouteTravelMode

可选。指定交通方式。仅支持 DRIVE 和“TWO_WHEELER”。

routing_preference

RoutingPreference

可选。指定如何计算路线。服务器会尝试使用所选的路由偏好设置来计算路由。如果路由偏好设置导致错误或延迟时间过长,则返回错误。只有在 travel_modeDRIVETWO_WHEELER 时才能指定此选项,否则请求会失败。

polyline_quality

PolylineQuality

可选。指定多段线的质量偏好设置。

polyline_encoding

PolylineEncoding

可选。指定多段线的首选编码。

departure_time

Timestamp

可选。出发时间。如果未设置此值,则此值默认为您发出请求的时间。如果您将此值设置为已过的时间,则请求会失败。

route_modifiers

RouteModifiers

可选。一组要满足的条件,这些条件会影响路线的计算方式。

route_objective

RouteObjective

必需。要优化的路线目标。

language_code

string

可选。BCP-47 语言代码,例如“en-US”或“sr-Latn”。如需了解详情,请参阅 Unicode 语言区域标识符。如需查看支持的语言列表,请参阅语言支持。如果您未提供此值,系统会根据路线请求的位置推断出显示语言。

units

Units

可选。指定显示字段的测量单位。这包括 NavigationInstruction 中的 instruction 字段。路线、路程、步数、距离和时长所使用的测量单位不受此值的影响。如果您未提供此值,系统会根据请求的位置推断出显示单位。

ComputeCustomRoutesResponse

ComputeCustomRoutes 响应消息。

字段
routes[]

CustomRoute

输入路线目标的“最佳”路线。

fastest_route

CustomRoute

最快的参考路线。

shortest_route

CustomRoute

最短参考路线。

fallback_info

FallbackInfo

自定义路由的回退信息。

FallbackInfo

封装 ComputeCustomRoutes 的回退信息。ComputeCustomRoutes 会执行两种类型的回退:

  1. 如果它无法使用客户请求的 routing_preference 计算路线,则会回退到其他路由模式。在这种情况下,fallback_routing_moderouting_mode_fallback_reason 用于传达所使用的后备路由模式以及回退的原因。

  2. 如果它无法为客户指定的路线目标计算出“最佳”路线,则可能会回退到其他目标。fallback_route_objective 用于传达后备路由目标。

字段
routing_mode

FallbackRoutingMode

用于响应的路由模式。如果触发了后备广告,该模式可能与原始客户端请求中设置的路由偏好设置不同。

routing_mode_reason

FallbackReason

使用回退响应而非原始响应的原因。仅当触发回退模式并返回回退响应时,才会填充此字段。

route_objective

FallbackRouteObjective

用于响应的路线目标。如果触发了回退,目标可能与原始客户端请求中提供的路由目标不同。

FallbackRouteObjective

用于响应的 RouteObjective。

枚举
FALLBACK_ROUTE_OBJECTIVE_UNSPECIFIED 未指定回退路由目标。
FALLBACK_RATECARD_WITHOUT_TOLL_PRICE_DATA 如果客户请求 RateCard 并将 include_tolls 设置为 true,但 Google 没有该路线的通行费数据,则该 API 会回退到 RateCard,而不考虑通行费。

ComputeRouteMatrixRequest

ComputeRouteMatrix 请求消息

字段
origins[]

RouteMatrixOrigin

必需。来源数组,用于确定响应矩阵的行。起点和目的地的基数受到以下大小限制:

  • 无论如何,元素数量(出发地 × 目的地)不得超过 625 个。
  • 如果 routing_preference 设置为 TRAFFIC_AWARE_OPTIMAL,元素数量(起点 × 终点)不得超过 100。
  • 指定为 place_id 的路点(起点 + 终点)的数量不得超过 50 个。
destinations[]

RouteMatrixDestination

必需。目的地数组,用于确定响应矩阵的列。

travel_mode

RouteTravelMode

可选。指定交通方式。

routing_preference

RoutingPreference

可选。指定如何计算路线。服务器会尝试使用所选的路由偏好设置来计算路由。如果路由偏好设置导致错误或延迟时间过长,则会返回错误。只有在 travel_modeDRIVETWO_WHEELER 时才能指定此选项,否则请求会失败。

departure_time

Timestamp

可选。出发时间。如果未设置此值,则默认为您发出请求的时间。如果您将此值设置为已过的时间,请求将失败。

ComputeRoutesRequest

ComputeRoutes 请求消息。

字段
origin

Waypoint

必需。出发地航点。

destination

Waypoint

必需。目的地航点。

intermediates[]

Waypoint

可选。路线沿途的一组航点(不包括航站点),可在以下地点经停或经过。最多支持 25 个中间航点。

travel_mode

RouteTravelMode

可选。指定交通方式。

routing_preference

RoutingPreference

可选。指定如何计算路线。服务器会尝试使用所选的路由偏好设置来计算路由。如果路由偏好设置导致错误或延迟时间过长,则返回错误。只有在 travel_modeDRIVETWO_WHEELER 时才能指定此选项,否则请求会失败。

polyline_quality

PolylineQuality

可选。指定多段线的质量偏好设置。

polyline_encoding

PolylineEncoding

可选。指定多段线的首选编码。

departure_time

Timestamp

可选。出发时间。如果未设置此值,则此值默认为您发出请求的时间。如果您将此值设置为已过的时间,则请求会失败。

compute_alternative_routes

bool

可选。指定除了路线之外,是否计算备选路线。对于包含中间航点的请求,系统不会返回备选路线。

route_modifiers

RouteModifiers

可选。一组要满足的条件,这些条件会影响路线的计算方式。

language_code

string

可选。BCP-47 语言代码,例如“en-US”或“sr-Latn”。如需了解详情,请参阅 Unicode 语言区域标识符。如需查看支持的语言列表,请参阅语言支持。如果您未提供此值,系统会根据路线请求的位置推断显示语言。

units

Units

可选。指定显示字段的衡量单位。这包括 NavigationInstruction 中的 instruction 字段。路线、路段、步数距离和时长所用的衡量单位不受此值的影响。如果您未提供此值,系统会根据请求的位置推断显示单位。

optimize_waypoint_order

bool

如果将 optimizationWaypointOrder 设置为 true,则尝试对指定的中间路标重新排序,以最大程度地降低路线的总体成本。如果任何中间航点为途经航点,请求将失败。使用 ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index 查找新排序。如果未在 X-Goog-FieldMask 标头中请求 routes.optimized_intermediate_waypoint_index,则请求会失败。如果 optimize_waypoint_order 设为 false,ComputeRoutesResponse.optimized_intermediate_waypoint_index 为空。

ComputeRoutesResponse

计算响应消息的路线。

字段
routes[]

Route

包含在指定 compute_alternatives_routes 时计算出的路线的数组(最多三个),否则仅包含一条路线。如果此数组包含多个条目,则第一个条目是最推荐的路线。如果数组为空,则表示找不到路线。

fallback_info

FallbackInfo

在某些情况下,如果服务器无法使用所有输入偏好设置计算路线结果,则可能会回退到使用其他计算方式。使用回退模式时,此字段包含有关回退响应的详细信息。否则,此字段将处于未设置状态。

CustomRoute

封装根据客户指定的路线目标计算的自定义路线。CustomRoute 包含路线和路线令牌,可传递给 NavSDK 以重构自定义路线以进行精细导航。

字段
route

Route

对于输入路线目标而言被视为“最佳”的路线。

token

string

可传递给 NavSDK 的可在 Web 环境中安全使用的 base64 编码路线令牌,使 NavSDK 能够在导航期间重构路线,并在重新路线时遵循调用 RoutesPreferred ComputeCustomRoutes 时的原始意图。客户应将此令牌视为不透明 blob。

FallbackInfo

与使用回退结果的方式和原因相关的信息。如果设置了此字段,则表示服务器使用了与您的首选模式不同的路由模式作为后备选项。

字段
routing_mode

FallbackRoutingMode

用于响应的路由模式。如果触发了后备广告,该模式可能与原始客户端请求中设置的路由偏好设置不同。

reason

FallbackReason

使用后备响应而不是原始响应的原因。仅当触发回退模式并返回回退响应时,才会填充此字段。

FallbackReason

使用后备响应的原因。

枚举
FALLBACK_REASON_UNSPECIFIED 未指定后备原因。
SERVER_ERROR 使用您的首选路线模式计算路线时发生了服务器错误,但我们能够返回通过备用模式计算的结果。
LATENCY_EXCEEDED 我们无法按时使用您的首选路线模式完成计算,但可以返回使用备选模式计算的结果。

FallbackRoutingMode

用于返回的后备响应的实际路由模式。

枚举
FALLBACK_ROUTING_MODE_UNSPECIFIED 未使用。
FALLBACK_TRAFFIC_UNAWARE 表示使用了 TRAFFIC_UNAWARE 路由模式来计算响应。
FALLBACK_TRAFFIC_AWARE 表示使用 TRAFFIC_AWARE 路由模式来计算响应。

位置

封装位置(地理点和可选的标题)。

字段
lat_lng

LatLng

航点的地理坐标。

heading

Int32Value

与交通流方向相关联的罗盘方向。此值用于指定上车点和下车点的公路一侧。方向值的范围为 0 到 360,其中 0 表示方向为北方,90 表示方向为正东,依此类推。此字段仅适用于 DRIVETWO_WHEELER 出行方式。

Maneuver

一组值,用于指定要在当前路段中执行的导航操作(例如左转、合并或笔直)。

枚举
MANEUVER_UNSPECIFIED 未使用。
TURN_SLIGHT_LEFT 稍微向左转。
TURN_SHARP_LEFT 向左急转。
UTURN_LEFT 左转 U 形调头。
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 用于表示街道名称更改。
字段
maneuver

Maneuver

封装当前步骤的导航说明(例如,向左转弯、合并或直行)。此字段确定要显示的图标。

instructions

string

有关导航步骤的说明。

折线

封装编码多段线。

字段
联合字段 polyline_type。用于封装多段线的类型。默认为 encoded_多段线。polyline_type 只能是下列其中一项:
encoded_polyline

string

使用多段线编码算法对多段线进行的字符串编码。

geo_json_linestring

Struct

使用 GeoJSON LineString 格式指定多段线。

PolylineEncoding

指定要返回的多段线的首选类型。

枚举
POLYLINE_ENCODING_UNSPECIFIED 未指定多段线类型偏好设置。默认为 ENCODED_POLYLINE
ENCODED_POLYLINE 指定使用多段线编码算法编码的多段线。
GEO_JSON_LINESTRING 使用 GeoJSON LineString 格式指定多段线。

PolylineQuality

一组值,用于指定多段线的质量。

枚举
POLYLINE_QUALITY_UNSPECIFIED 未指定多段线质量偏好设置。默认为 OVERVIEW
HIGH_QUALITY 指定高质量多段线,其使用的点数超过 OVERVIEW,但响应大小会增加。如果需要更高的精度,请使用此值。
OVERVIEW 指定概览多段线,该多段线由少量点组成。在显示路线概览时,请使用此值。与使用 HIGH_QUALITY 选项相比,使用此选项的请求延迟时间更短。

路线

封装路线,路线由一系列相连的道路路段组成,这些路段连接起始航点、终点和中间航点。

字段
legs[]

RouteLeg

组成路线的路程(航点之间的路径段)的集合。每段路程都对应于两个非 via 航点之间的行程。例如,没有中间航点的路线只有一个航段。包含一个非 via 中间航点的路线有两段路程。包含一个 via 中间航点的路线有一个航段。路程的顺序与从 originintermediates 再到 destination 的航点顺序一致。

distance_meters

int32

路线的行程距离(以米为单位)。

duration

Duration

导航路线所需的时间。如果您将 routing_preference 设为 TRAFFIC_UNAWARE,则此值与 static_duration 相同。如果您将 routing_preference 设置为 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,则系统在计算此值时会考虑到路况信息。

static_duration

Duration

不考虑交通状况的情况下,沿着相应路线行驶所需的时间。

polyline

Polyline

整个路线多段线。此多段线是所有 legs 的组合多段线。

description

string

路线说明。

warnings[]

string

显示路线时要显示的警告数组。

viewport

Viewport

多段线的视口边界框。

travel_advisory

RouteTravelAdvisory

有关相应路线的其他信息。

optimized_intermediate_waypoint_index[]

int32

如果 ComputeRoutesRequest.optimize_waypoint_order 设置为 true,则此字段包含中间航点的优化顺序。否则,此字段为空。例如,假设输入为:起点:洛杉矶;中继点:达拉斯、班戈、菲尼克斯;目的地:纽约;经过优化的中继点顺序为:菲尼克斯、达拉斯、班戈。那么此字段将包含值 [2, 0, 1]。对于第一个中间航点,索引从 0 开始。

RouteLeg

封装非 via 航点之间的路段。

字段
distance_meters

int32

路线路段的行程距离(以米为单位)。

duration

Duration

导航相应航段所需的时间。如果 route_preference 设置为 TRAFFIC_UNAWARE,则此值与 static_duration 相同。如果 route_preferenceTRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,则系统在计算此值时会考虑到路况信息。

static_duration

Duration

路程经过的时长,计算时不考虑路况信息。

polyline

Polyline

此路段的整体多段线。这包括每个 step 的多段线。

start_location

Location

此行程的起始位置。这可能与提供的 origin 不同。例如,如果提供的 origin 不在道路附近,则为道路上的一个点。

end_location

Location

这段路程的结束位置。这可能与提供的 destination 不同。例如,如果提供的 destination 不在道路附近,则此值为道路上的某个点。

steps[]

RouteLegStep

一组路段,用于表示这段路程内的路段。每一步都代表一条导航指令。

travel_advisory

RouteLegTravelAdvisory

封装应告知用户的其他信息,例如路线分段可能存在的交通区域限制等。

RouteLegStep

封装 RouteLeg 的片段。步骤对应于单个导航指令。路线分段由步骤组成。

字段
distance_meters

int32

此路段的行程距离(以米为单位)。在某些情况下,此字段可能没有值。

static_duration

Duration

不考虑交通状况的情况下,完成此步骤所需的时间。在某些情况下,此字段可能没有值。

polyline

Polyline

与此步骤关联的多段线。

start_location

Location

此步骤的起始位置。

end_location

Location

此步骤的终点位置。

navigation_instruction

NavigationInstruction

导航说明。

travel_advisory

RouteLegStepTravelAdvisory

封装应告知用户的其他信息,例如相应路段步骤可能存在的交通区域限制。

RouteLegStepTravelAdvisory

封装应告知用户的其他信息,例如路程路段可能的交通区域限制。

字段
speed_reading_intervals[]

SpeedReadingInterval

注意:此字段当前未填充。

RouteLegTravelAdvisory

用于封装应告知用户的其他信息,例如路线路程上的可能的交通区域限制等。

字段
toll_info

TollInfo

封装特定 RouteLeg 上有关收费站的信息。只有当我们预计 RouteLeg 上有收费路段时,才会填充此字段。如果已设置此字段,但未填充 estimated_price 子字段,则表示相应道路包含过路费,但我们不知道估算价格。如果此字段不存在,那么RouteLeg不会产生任何费用。

speed_reading_intervals[]

SpeedReadingInterval

详细说明交通密度的速度读数间隔。适用于 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL 路由偏好设置。间隔覆盖了 RouteLeg 的整个多段线,没有重叠。指定间隔的起点与前一间隔的终点相同。

示例:

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

RouteMatrixDestination

ComputeRouteMatrixRequest 的单个目标

字段
waypoint

Waypoint

必需。目的地航点

RouteMatrixElement

封装 ComputeRouteMatrix API 中为起点/终点对计算的路线信息。此 proto 可以流式传输到客户端。

字段
origin_index

int32

请求中来源的索引(从零开始)。

destination_index

int32

请求中目的地的索引(从零开始)。

status

Status

此元素的错误状态代码。

condition

RouteMatrixElementCondition

指示是否找到了路线。与状态无关。

distance_meters

int32

路线的行程距离(以米为单位)。

duration

Duration

导航路线所需的时间。如果您将 routing_preference 设为 TRAFFIC_UNAWARE,则此值与 static_duration 相同。如果您将 routing_preference 设置为 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,则系统在计算此值时会考虑到路况信息。

static_duration

Duration

在不考虑路况信息的情况下通过路线的时长。

travel_advisory

RouteTravelAdvisory

有关该路线的其他信息。例如:限制信息和过路费信息

fallback_info

FallbackInfo

在某些情况下,如果服务器无法根据给定偏好设置为此特定始发地/目的地对计算路线,则可能会改用其他计算模式。使用回退模式时,此字段包含有关回退响应的详细信息。否则,此字段将处于未设置状态。

RouteMatrixElementCondition

所返回路线的条件。

枚举
ROUTE_MATRIX_ELEMENT_CONDITION_UNSPECIFIED 仅在元素的 status 不适用时使用。
ROUTE_EXISTS 已找到路线,并为元素填写了相应的信息。
ROUTE_NOT_FOUND 找不到路线。元素中不会填充包含路线信息的字段,例如 distance_metersduration

RouteMatrixOrigin

ComputeRouteMatrixRequest 的单个源

字段
waypoint

Waypoint

必需。出发地航点

route_modifiers

RouteModifiers

可选。以此为起点的每个路线的修饰符

RouteModifiers

封装一组可选条件,以便在计算路线时满足这些条件。

字段
avoid_tolls

bool

设置为 true 时,在合理情况下避开收费路段,优先考虑不包含收费路段的路线。仅适用于 DRIVETWO_WHEELER 出行方式。

avoid_highways

bool

如果设置为 true,则会在合理的情况下避开高速公路,优先选择不含高速公路的路线。仅适用于 DRIVETWO_WHEELER 出行方式。

avoid_ferries

bool

如果设置为 true,则会在合理的情况下避开轮渡,优先选择不含轮渡的路线。仅适用于 DRIVETWO_WHEELER 出行方式。

avoid_indoor

bool

设置为 true 时,在合理的范围内避免在室内导航,优先考虑不包含室内导航的路线。仅适用于WALK出行方式。

vehicle_info

VehicleInfo

指定车辆信息。

toll_passes[]

TollPass

封装收费卡的相关信息。如果提供了通行卡,则 API 会尝试返回通行证价格。如果未提供过路费卡,API 会将过路费卡视为未知,并尝试返回现金价格。仅适用于 DRIVETWO_WHEELER 出行方式。

RouteObjective

封装要按 ComputeCustomRoutes 进行优化的目标。

字段
联合字段 objective。路线目标。objective 只能是下列其中一项:
rate_card

RateCard

费率卡目标。

RateCard

封装 RateCard 路线目标。

字段
cost_per_minute

MonetaryCost

可选。每分钟费用。

cost_per_km

MonetaryCost

可选。每公里费用。

include_tolls

bool

可选。是否在总费用中包含通行费。

MonetaryCost

封装费率卡中使用的费用。

字段
value

double

必需。从请求推断出的费用值(本地货币)。

RouteTravelAdvisory

用于封装应告知用户的其他信息,例如可能的交通区域限制等。

字段
toll_info

TollInfo

封装有关路线上过路费的信息。只有当我们预计相应路线上有收费路段时,才会填充此字段。如果设置了此字段,但未填充 estimated_price 子字段,我们会认为这条道路包含收费站,但不知道估算价格。如果未设置此字段,则预计该路线不会收费。

speed_reading_intervals[]

SpeedReadingInterval

详细说明交通密度的速度读数间隔。适用于 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL 路由偏好设置。间隔会覆盖路线的整个多段线,没有重叠。指定间隔的起点与前一间隔的终点相同。

示例:

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

RouteTravelMode

一组用于指定出行方式的值。

枚举
TRAVEL_MODE_UNSPECIFIED 未指定出行方式。默认为 DRIVE
DRIVE 乘坐载客车辆。
BICYCLE 骑自行车。
WALK 步行。
TWO_WHEELER 双轮机动车。例如,摩托车。请注意,这与涵盖人力驱动模式的 BICYCLE 出行方式不同。
TAXI

乘坐持证出租车,可能会让车辆在某些区域指定的出租车道行驶。

出租车模式是一项实验性功能。如果客户查询的出租车路线位于某个无法提供出租车道数据的城市,则返回“DRIVE”路线。

RoutingPreference

一组值,用于指定计算路线时要考虑的因素。

枚举
ROUTING_PREFERENCE_UNSPECIFIED 未指定路由偏好设置。默认为 TRAFFIC_AWARE
TRAFFIC_UNAWARE 计算路线时不考虑实时路况。当交通状况不重要或不适用时,此值适用。使用此值可产生最短的延迟时间。注意:对于 RouteTravelMode DRIVE 和 TWO_WHEELER,系统会根据道路网和与时间无关的平均路况信息而非当前路况信息来选择路线和时长。因此,有些路线中可能会包含暂时封闭的道路。受道路网变化、平均路况信息更新以及服务的分布式性质的影响,给定请求的结果可能会随时间的推移而发生变化。此外,在时间或频率不受限制的情况下,即使两条路线几乎相同,结果还是有可能不同。
TRAFFIC_AWARE 计算将路况信息考虑在内的路线。与 TRAFFIC_AWARE_OPTIMAL 相比,它会应用一些优化来显著缩短延迟时间。
TRAFFIC_AWARE_OPTIMAL 计算路线时将路况考虑在内,而不应用大多数性能优化。使用此值会产生最长的延迟时间。

SpeedReadingInterval

多段线或路径的连续路段上的交通密度指示器。如果路径包含点 P_0、P_1、...、P_N(从零开始的索引),SpeedReadingInterval 会定义一个间隔并使用以下类别描述其流量。

字段
start_polyline_point_index

int32

多段线中此间隔的起始索引。在 JSON 中,当编号为 0 时,该字段似乎未填充。

end_polyline_point_index

int32

多段线中此间隔的结束索引。在 JSON 中,当编号为 0 时,该字段似乎未填充。

speed

Speed

此时间段内的交通速度。

速度

基于路况数据的多段线速度分类。

枚举
SPEED_UNSPECIFIED 默认值。此值未使用。
NORMAL 正常速度,未检测到减速。
SLOW 检测到车速缓慢,但未形成交通堵塞。
TRAFFIC_JAM 检测到交通堵塞。

TollInfo

封装 RouteRouteLeg 上的过路费信息。

字段
estimated_price[]

Money

相应 RouteRouteLeg 的过路费金额(货币金额)。此列表包含各个货币的金额,即相应收费站预计收取的费用。通常,对于收费站采用一种货币的路线,此列表仅包含一项。对于国际行程,此列表可能会包含多个项目,以反映以不同货币计算的通行费。

TollPass

我们支持的全球通行卡列表。

枚举
TOLL_PASS_UNSPECIFIED 未使用。如果使用此值,则请求会失败。
AU_ETOLL_TAG 悉尼众多过路费卡提供商之一。https://www.myetoll.com.au
AU_EWAY_TAG 悉尼众多过路费卡提供商之一。https://www.tollpay.com.au/
AU_LINKT 澳大利亚境内通行卡。如需了解更多详情,请访问 https://www.linkt.com.au/
AR_TELEPASE 阿根廷通行卡。如需了解更多详情,请访问 https://telepase.com.ar
BR_AUTO_EXPRESO 巴西通行卡。如需了解更多详情,请访问 https://www.autoexpreso.com
BR_CONECTCAR 巴西通行卡。如需了解更多详情,请访问 https://conectcar.com
BR_MOVE_MAIS 巴西通行卡。如需了解更多详情,请访问 https://movemais.com
BR_PASSA_RAPIDO 巴西通行卡。如需了解更多详情,请访问 https://pasorapido.gob.do/
BR_SEM_PARAR 巴西通行卡。如需了解更多详情,请访问 https://www.semparar.com.br
BR_TAGGY 巴西通行卡。如需了解更多详情,请访问 https://taggy.com.br
BR_VELOE 巴西通行卡。如需了解更多详情,请访问 https://veloe.com.br/site/onde-usar
CA_US_AKWASASNE_SEAWAY_CORPORATE_CARD 加拿大与美国过境处。
CA_US_AKWASASNE_SEAWAY_TRANSIT_CARD 加拿大与美国过境处。
CA_US_BLUE_WATER_EDGE_PASS 加拿大安大略省至美国密歇根州的边界过境点。
CA_US_CONNEXION 加拿大安大略省至美国密歇根州的边界过境点。
CA_US_NEXUS_CARD 加拿大与美国过境处。
ID_E_TOLL 印度尼西亚。多家银行提供的电子卡,用于支付通行费。通过银行发行的所有电子卡的费用相同,因此只需一个枚举值。例如,Bank Mandiri https://www.bankmandiri.co.id/e-money BCA https://www.bca.co.id/flazz BNI https://www.bni.co.id/id-id/ebanking/tapcash
IN_FASTAG India.
IN_LOCAL_HP_PLATE_EXEMPT 印度,惠普州车牌豁免。
JP_ETC 日本 ETC。收取过路费的电子无线系统。https://www.go-etc.jp/
JP_ETC2 Japan ETC2.0。新版 ETC 可进一步折扣,并支持车辆上的设备与道路上的天线之间的双向通信。https://www.go-etc.jp/etc2/index.html
MX_IAVE 墨西哥 https://iave.capufe.gob.mx/#/
MX_PASE 墨西哥 https://www.pase.com.mx
MX_QUICKPASS 墨西哥 https://operadoravial.com/quick-pass/
MX_SISTEMA_TELEPEAJE_CHIHUAHUA 墨西哥 http://appsh.chihuahua.gob.mx/transparencia/?doc=/ingresos/TelepeajeFormato4.pdf
MX_TAG_IAVE 墨西哥
MX_TAG_TELEVIA 墨西哥通行卡公司。这是墨西哥城众多公交车站之一。如需了解详情,请访问 https://www.televia.com.mx
MX_TELEVIA 墨西哥通行卡公司。在墨西哥城运营的众多运营商之一。https://www.televia.com.mx
MX_VIAPASS 墨西哥通行卡。如需了解更多详情,请访问 https://www.viapass.com.mx/viapass/web_home.aspx
US_AL_FREEDOM_PASS AL, USA.
US_AK_ANTON_ANDERSON_TUNNEL_BOOK_OF_10_TICKETS 美国阿拉斯加州。
US_CA_FASTRAK 美国加利福尼亚州。
US_CA_FASTRAK_CAV_STICKER 指明司机除了拥有 DMV 签发的清洁空气车辆 (CAV) 贴纸外,还有任何 FasTrak 通行证。https://www.bayareafastrak.org/en/guide/doINeedFlex.shtml
US_CO_EXPRESSTOLL 美国科罗拉多州。
US_CO_GO_PASS 美国科罗拉多州。
US_DE_EZPASSDE 美国德国。
US_FL_BOB_SIKES_TOLL_BRIDGE_PASS 美国佛罗里达州。
US_FL_DUNES_COMMUNITY_DEVELOPMENT_DISTRICT_EXPRESSCARD FL, USA.
US_FL_EPASS FL, USA.
US_FL_GIBA_TOLL_PASS FL, USA.
US_FL_LEEWAY FL, USA.
US_FL_SUNPASS FL, USA.
US_FL_SUNPASS_PRO 美国佛罗里达州。
US_IL_EZPASSIL 美国伊利诺伊州。
US_IL_IPASS IL, USA.
US_IN_EZPASSIN 印度、美国。
US_KS_BESTPASS_HORIZON 美国堪萨斯州。
US_KS_KTAG 美国堪萨斯州。
US_KS_NATIONALPASS 美国堪萨斯州。
US_KS_PREPASS_ELITEPASS KS, USA.
US_LA_GEAUXPASS 美国洛杉矶。
US_LA_TOLL_TAG 美国洛杉矶。
US_MA_EZPASSMA MA, USA。
US_MD_EZPASSMD 美国马里兰州。
US_ME_EZPASSME 我,美国。
US_MI_AMBASSADOR_BRIDGE_PREMIER_COMMUTER_CARD 美国密歇根州。
US_MI_BCPASS MI, USA.
US_MI_GROSSE_ILE_TOLL_BRIDGE_PASS_TAG MI, USA.
US_MI_IQ_PROX_CARD

美国密歇根州。已弃用,因为此卡券类型已不存在。

US_MI_IQ_TAG 美国密歇根州。
US_MI_MACKINAC_BRIDGE_MAC_PASS MI, USA.
US_MI_NEXPRESS_TOLL 美国密歇根州。
US_MN_EZPASSMN 美国明尼苏达州。
US_NC_EZPASSNC 美国北卡罗来纳州。
US_NC_PEACH_PASS 美国北卡罗来纳州。
US_NC_QUICK_PASS 美国北卡罗来纳州。
US_NH_EZPASSNH 美国新罕布什尔州。
US_NJ_DOWNBEACH_EXPRESS_PASS 美国新泽西州。
US_NJ_EZPASSNJ 美国新泽西州。
US_NY_EXPRESSPASS 美国纽约州。
US_NY_EZPASSNY 美国纽约。
US_OH_EZPASSOH 美国俄亥俄州。
US_PA_EZPASSPA 美国宾夕法尼亚州。
US_RI_EZPASSRI 美国罗得岛州。
US_SC_PALPASS SC, USA.
US_TX_AVI_TAG 美国得克萨斯州。
US_TX_BANCPASS 美国得克萨斯州。
US_TX_DEL_RIO_PASS 美国得克萨斯州。
US_TX_EFAST_PASS 美国得克萨斯州。
US_TX_EAGLE_PASS_EXPRESS_CARD 美国得克萨斯州。
US_TX_EPTOLL 美国得克萨斯州。
US_TX_EZ_CROSS 美国得克萨斯州。
US_TX_EZTAG 美国得克萨斯州。
US_TX_FUEGO_TAG 美国得克萨斯州。
US_TX_LAREDO_TRADE_TAG 美国得克萨斯州。
US_TX_PLUSPASS 美国得克萨斯州。
US_TX_TOLLTAG 美国得克萨斯州。
US_TX_TXTAG 美国得克萨斯州。
US_TX_XPRESS_CARD 美国德克萨斯州。
US_UT_ADAMS_AVE_PARKWAY_EXPRESSCARD UT, USA.
US_VA_EZPASSVA 美国弗吉尼亚州。
US_WA_BREEZEBY 美国华盛顿州。
US_WA_GOOD_TO_GO 美国华盛顿州。
US_WV_EZPASSWV WV, USA.
US_WV_MEMORIAL_BRIDGE_TICKETS 美国西弗吉尼亚州。
US_WV_MOV_PASS 美国西弗吉尼亚州
US_WV_NEWELL_TOLL_BRIDGE_TICKET 美国西弗吉尼亚州。

单位

一组值,用于指定显示屏中使用的测量单位。

枚举
UNITS_UNSPECIFIED 未指定度量单位。默认值为从请求推断出的计量单位。
METRIC 公制度量单位。
IMPERIAL 英制。

VehicleEmissionType

一组值,用于描述车辆的排放类型。仅适用于云端硬盘出行方式。

枚举
VEHICLE_EMISSION_TYPE_UNSPECIFIED 未指定排放类型。默认为 GASOLINE。
GASOLINE 汽油/汽油燃料汽车。
ELECTRIC 电力驱动的车辆。
HYBRID 混合燃料(例如汽油 + 电动)汽车。

VehicleInfo

封装车辆信息,例如车辆排放类型。

字段
emission_type

VehicleEmissionType

描述车辆的排放类型。仅适用于 DRIVE RouteTravelMode

关键点

封装航点。航点用于标记路线的起点和终点,并包括路线沿途的中间停靠站。

字段
via

bool

将此航点标记为里程碑,而不是停止点。对于请求中的每个非经停点路径点,响应都会将一个条目附加到 legs 数组,以提供该行程相应路段上的经停点的详细信息。如果您希望路线经过此航点而不停靠,请将此值设为 true。经由路径点不会导致向 legs 数组添加条目,但会将旅程路线改为途经该路径点。您只能对中间航点设置此值。如果您在终点航点上设置此字段,则请求将失败。如果 ComputeRoutesRequest.optimize_waypoint_order 设为 true,则此字段不能设为 true;否则,请求将失败。

vehicle_stopover

bool

表示航点供车辆停靠,且意图是上车或下车。设置此值后,计算出的路线将不会包含不适合上车和下车的道路上的非 via 航点。此选项仅适用于 DRIVETWO_WHEELER 出行方式以及 location_typelocation 的情况。

side_of_road

bool

表示此航点的位置旨在让车辆优先停靠在道路的特定侧。设置此值后,路线将穿过相应位置,以便车辆在相应位置偏离道路中心的一侧停车。此选项仅适用于“DRIVE”和“TWO_WHEELER”出行方式。

联合字段 location_type。表示地理位置的不同方式。location_type 只能是下列其中一项:
location

Location

使用地理坐标指定的点,包括可选的航向。

place_id

string

与航点相关联的地图注点地点 ID。