Route (beta)

Route

google.maps.routes.Route

包含路线,该路线由一系列相连的路段组成,这些路段连接起点、终点和中间航点。

通过调用 const {Route} = await google.maps.importLibrary("routes") 进行访问。
请参阅 Maps JavaScript API 中的库

computeRoutes
computeRoutes(request)
参数: 
返回值:  Promise<{
  routes:Array<Route> optional,
  fallbackInfo:FallbackInfo optional,
  geocodingResults:GeocodingResults optional
}>
根据一组终点和中间航点返回主要路线以及可选的备选路线。

注意:此方法要求您通过设置 ComputeRoutesRequest.fields 属性在请求中指定响应字段掩码。该值是字段路径的列表。

例如:
  • 所有可用字段的字段掩码:fields: ['*']
  • 路线级时长、距离和路径的字段掩码:fields: ['durationMillis', 'distanceMeters', 'path']

不建议使用通配符响应字段掩码 fields: ['*'],因为:
  • 仅选择您需要的字段有助于我们的服务器节省计算周期,从而使我们能够以更低的延迟时间向您返回结果。
  • 仅选择生产作业中需要的字段可确保稳定的延迟时间性能。我们未来可能会添加更多响应字段,而这些新字段可能需要额外的计算时间。如果您选择所有字段,或者选择顶级的所有字段,则可能会遇到性能下降的问题,因为我们添加的任何新字段都会自动包含在响应中。
  • 仅选择所需的字段可减小响应大小,从而加快网络加载速度。
description
类型:  string optional
路线的说明。
distanceMeters
类型:  number optional
相应路线的行驶距离(以米为单位)。
durationMillis
类型:  number optional
导航路线所需的时间(以毫秒为单位)。如果您将 ComputeRoutesRequest.routingPreference 设置为 TRAFFIC_UNAWARE,则此值与 Route.staticDurationMillis 相同。如果您将 ComputeRoutesRequest.routingPreference 设置为 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,则系统会根据路况计算此值。

注意:如果时长超过 2^53 毫秒,则此值为 Number.POSITIVE_INFINITY
legs
类型:  Array<RouteLeg> optional
构成路线的若干路段(航点之间的路径段)。每段行程都对应于两个非 via 航点之间的旅程。

例如:
  • 没有中间航点的路线只有一段路程。
  • 包含一个非 via 中间航点的路线有两段路程。
  • 包含一个 via 中间航点的路线有一段路程。
路段的顺序与途经点的顺序一致,即从 originintermediates 再到 destination
localizedValues
类型:  RouteLocalizedValues optional
Route 的属性的文本表示形式。
optimizedIntermediateWaypointIndices
类型:  Array<number> optional
如果您将 ComputeRoutesRequest.optimizeWaypointOrder 设置为 true,此字段将包含优化后的中途经停点顺序。否则,此字段为空。索引从 0 开始,表示输入中提供的第一个中间途经点。

例如,如果您输入:
  • 来源:LA
  • 中间航点:达拉斯、班戈、凤凰城
  • 目的地:纽约
,而优化后的中间航点顺序为 Phoenix、Dallas、Bangor,则此字段将为 [2, 0, 1]
path
类型:  Array<LatLngAltitude> optional
路线的 LatLngAltitude 列表,可用于绘制路线多段线。可以通过设置 ComputeRoutesRequest.polylineQuality 来控制路径的粒度。
polylineDetails
类型:  PolylineDetails optional
包含有关路径沿途的详细信息。
routeLabels
类型:  Array<RouteLabel> optional
有助于识别路线特定属性或与其他路线进行比较的标签。
routeToken
类型:  string optional
一个不透明的令牌,可传递给 Navigation SDK 以在导航期间重建路线,并在重新规划路线时遵循创建路线时的原始意图。将此令牌视为不透明 blob。请勿跨请求比较其值,因为即使服务返回完全相同的路线,其值也可能会发生变化。

注意:routeToken 仅适用于将 ComputeRoutesRequest.routingPreference 设置为 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL 的请求。不支持包含 via 航点的请求。
speedPaths
类型:  Array<SpeedPath> optional
路线路径的各个部分及其对应的速度读数。若要填充此字段,必须将