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,否則所有訊息都會顯示為 OK。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 個。
  • 如果將 route_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

如果將 optimizeWaypointOrder 設為 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

ComputeRoute 會回應回應訊息。

欄位
routes[]

Route

在您指定 compute_alternatives_routes 時,此陣列會包含計算路線的陣列 (最多三個),如果未指定 compute_alternatives_routes,則只會包含一個路線。如果這個陣列包含多個項目,則第一項是最建議的路線。如果陣列空白,表示找不到路線。

fallback_info

FallbackInfo

在某些情況下,如果伺服器無法根據所有輸入偏好設定計算路徑結果,可能會改用其他計算方式。使用備用模式時,這個欄位會包含備用回應的詳細資訊。否則,這個欄位未設定。

CustomRoute

封裝根據客戶指定的路線目標計算的自訂路線。CustomRoute 包含路線和路線符記,可傳遞至 NavSDK,以重建自訂路線,用於逐向導航。

欄位
route

Route

這條路徑認為輸入路徑目標「最佳」。

token

string

可傳遞至 NavSDK 的具網路安全性的 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_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 用於表示街道名稱變更。
欄位
maneuver

Maneuver

封裝目前步驟的導航指示 (例如左轉、併入或直行)。這個欄位會決定要顯示哪個圖示。

instructions

string

操作說明。

折線

封裝編碼折線。

欄位
聯集欄位 polyline_type。封裝折線類型。預設為 encoded_polyline。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 中繼路線控點的路線只有一個路段。路段的順序會符合從 originintermediatesdestination 的路線控點順序。

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,這個欄位會包含最佳化後的中繼路線控點順序,否則這個欄位會是空白。舉例來說,假設輸入內容為 Origin:LA;中級:達拉斯、邦格爾、鳳凰城;目的地:紐約;最佳化的中繼路線控點順序為:鳳凰城、達拉斯、孟加。這個欄位就會包含 [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 中針對起點/目的地組合計算出的路線資訊。此原型可以串流至用戶端。

欄位
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

搭乘領有執照的計程車前往部分區域的指定計程車車道。

TAXI 模式是一項實驗功能。如果客戶要求在無法取得計程車車道資料的城市中規劃 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 等點 (以 0 為基底的索引),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 印度,HP 州/省車牌豁免。
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 阿拉巴馬州
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 美國佛羅裡達州
US_FL_EPASS 美國佛羅裡達州
US_FL_GIBA_TOLL_PASS 美國佛羅裡達州
US_FL_LEEWAY 美國佛羅裡達州
US_FL_SUNPASS 美國佛羅裡達州
US_FL_SUNPASS_PRO 美國佛羅裡達州
US_IL_EZPASSIL 美國伊利諾州
US_IL_IPASS 美國伊利諾州。
US_IN_EZPASSIN 美國印第安納州
US_KS_BESTPASS_HORIZON 美國堪薩斯州。
US_KS_KTAG 美國堪薩斯州。
US_KS_NATIONALPASS 美國堪薩斯州。
US_KS_PREPASS_ELITEPASS 美國堪薩斯州。
US_LA_GEAUXPASS 美國洛杉磯
US_LA_TOLL_TAG 美國洛杉磯
US_MA_EZPASSMA 美國麻薩諸塞州
US_MD_EZPASSMD 美國馬里蘭州。
US_ME_EZPASSME 美國緬因州
US_MI_AMBASSADOR_BRIDGE_PREMIER_COMMUTER_CARD 美國密西根州
US_MI_BCPASS 美國密西根州。
US_MI_GROSSE_ILE_TOLL_BRIDGE_PASS_TAG 美國密西根州。
US_MI_IQ_PROX_CARD

美國密西根州已淘汰,因為此票證類型已不存在。

US_MI_IQ_TAG 美國密西根州
US_MI_MACKINAC_BRIDGE_MAC_PASS 美國密西根州。
US_MI_NEXPRESS_TOLL 美國密西根州。
US_MN_EZPASSMN MN、美國。
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 美國南卡羅來納州。
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 美國猶他州
US_VA_EZPASSVA 美國維吉尼亞州
US_WA_BREEZEBY 美國華盛頓州。
US_WA_GOOD_TO_GO 美國華盛頓州
US_WV_EZPASSWV 美國西維吉尼亞州
US_WV_MEMORIAL_BRIDGE_TICKETS 美國西維吉尼亞州。
US_WV_MOV_PASS WV, USA
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

與路標相關聯的 POI 地點 ID。