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

選用設定。指定交通方式。目前僅支援雲端硬碟。

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」。詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier。如需支援的語言清單,請參閱語言支援。如果未提供這個值,系統會根據路線要求的位置推測顯示語言。

units

Units

選用設定。為顯示欄位指定測量單位。包括 NavigationInstruction 中的 instruction 欄位。用於路線、路段、步數距離以及所需時間的測量單位不受此值影響。如果未提供這個值,系統就會根據要求位置推斷顯示單位。

ComputeCustomRoutesResponse

ComputeCustomRoutes 回應訊息。

欄位
routes[]

CustomRoute

輸入路徑目標的「最佳」路徑。

fastest_route

CustomRoute

最快的參考路線。

shortest_route

CustomRoute

最短參考路徑。

fallback_info

FallbackInfo

自訂路線的備用資訊。

FallbackInfo

封裝 ComputeCustomRoutes 的備用資訊。ComputeCustomRoutes 可執行兩種備用項:

  1. 如果無法使用客戶要求的 route_preference 計算路線,會改回其他轉送模式。在這個示例中,備用_routing_mode 和 route_mode_fallback_reason 用於通訊所使用的備用轉送模式及備用原因。

  2. 如果無法為客戶指定的路徑目標計算「最佳」路徑,則可能會改採其他目標。使用 backup_route_objective 來傳達備用路徑目標。

欄位
routing_mode

FallbackRoutingMode

用於回應的轉送模式。如果觸發備用廣告,模式可能與原始用戶端要求中設定的轉送偏好設定不同。

routing_mode_reason

FallbackReason

使用備用回應 (而非原始回應) 的原因。只有在觸發備用模式並傳回備用回應時,系統才會填入這個欄位。

route_objective

FallbackRouteObjective

用於回應的路線目標。如果觸發備用廣告,目標可能與原始用戶端要求中提供的路徑目標不同。

FallbackRouteObjective

用於回應的路徑目標。

列舉
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」。詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier。如需支援的語言清單,請參閱語言支援。如果未提供這個值,系統會根據路線要求的位置推測顯示語言。

units

Units

選用設定。為顯示欄位指定測量單位。包括 NavigationInstruction 中的 instruction 欄位。用於路線、路段、步數距離以及所需時間的測量單位不受此值影響。如果未提供這個值,系統就會根據要求位置推斷顯示單位。

optimize_waypoint_order

bool

如果將 optWaypointOrder 設為 true,系統會在此時重新訂購指定的中繼路線控點,盡可能降低路線的整體成本。如有任何中繼路線控點透過路線控點,要求就會失敗。使用 ComputeRoutesResponse.Routes.optimized_intermediate_waypoint_index 找出新的排序方式。如未在 X-Goog-FieldMask 標頭中要求 route.optimized_intermediate_waypoint_index,要求會失敗,如果將 optWaypointOrder 設為 false,則 ComputeRoutesResponse.optimized_intermediate_waypoint_index 會留空。

ComputeRoutesResponse

ComputeRoute 回應訊息。

欄位
routes[]

Route

在指定 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 在圓環處向右轉。
欄位
maneuver

Maneuver

封裝目前步驟的導航指示 (例如,向左、合併、直線等)。這個欄位會決定要顯示的圖示。

instructions

string

這個步驟的操作說明。

Polyline

封裝編碼的折線。

欄位
聯集欄位 polyline_type。封裝折線的類型。預設為 coded_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;中級:達拉斯、班格爾、鳳凰城;目的地:紐約;而最佳化的中繼路線控點順序為:鳳凰城、達拉斯、Bangor。然後在這個欄位中填入值 [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

減速讀取間隔,細查流量密度。適用於 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL 轉送偏好設定。間隔涵蓋 RouteLegStep 的整個折線,且未重疊。指定間隔的起點與前一個間隔的終點相同。

示例:

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

RouteLegTravelAdvisory

封裝使用者應知道的其他資訊,例如路線路段可能的路況限制等。

欄位
toll_info

TollInfo

封裝特定 RouteLeg 的收費資訊。只有當我們預期 RouteLeg 上有收費站時,才會填入此欄位。如果已設定這個欄位,但未填入估價_price 子欄位,則表示道路包含收費路段,但系統無法預估價格。如果這個欄位不存在,表示 RouteLeg 上並無收費。

speed_reading_intervals[]

SpeedReadingInterval

減速讀取間隔,細查流量密度。適用於 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL 轉送偏好設定。間隔涵蓋 RouteLg 的整個折線,且未重疊。指定間隔的起點與前一個間隔的終點相同。

示例:

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

指定是否要在合理情況下避開收費路段。系統會優先選擇不含收費路段的路線。僅適用於 DRIVETWO_WHEELER 交通方式。

avoid_highways

bool

指定是否要在合理情況下避開高速公路。系統會優先選擇不含高速公路的路線。僅適用於 DRIVETWO_WHEELER 交通方式。

avoid_ferries

bool

指定是否要在合理情況下避免渡輪。優先考量不含渡輪行駛的路線。僅適用於 DRIVETWO_WHEELER 交通方式。

avoid_indoor

bool

指定是否要避免在合理情況下前往室內。優先考量不含室內導航的路徑。僅適用於 WALK 交通方式。

vehicle_info

VehicleInfo

指定車輛資訊,

toll_passes[]

TollPass

封裝收費票證的相關資訊。如果提供通行費票證,API 會嘗試傳回票證價格。如未提供通行費票證,API 會將通行費視為未知,並嘗試傳回現金價格。僅適用於「Drive」和「TWO_WHEELER」交通模式。

RouteObjective

封裝要由 ComputeCustomRoutes 進行最佳化的目標。

欄位
rate_card

RateCard

RateCard 目標。

RateCard

封裝 RateCard 路徑目標。

欄位
cost_per_minute

MonetaryCost

選用設定。每分鐘費用。

cost_per_km

MonetaryCost

選用設定。每公里費用。

include_tolls

bool

選用設定。是否要在整體費用中納入過路費。

MonetaryCost

列出價目表中所使用的費用。

欄位
value

double

必要欄位。從要求所推測的當地幣別的費用值。

RouteTravelAdvisory

扼要列出使用者應知道的其他資訊,例如可能的交通區域限制等。

欄位
toll_info

TollInfo

封裝路線上的收費資訊。系統預期路線上會有收費路段時,才會填入這個欄位。如果已設定這個欄位,但未填入估價_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 路線,而該城市沒有計程車車道資料,則會傳回雲端硬碟路線。

RoutingPreference

一組值,用於指定計算路線時要考量的因素。

列舉
ROUTING_PREFERENCE_UNSPECIFIED 未指定轉送偏好設定。預設為 TRAFFIC_AWARE
TRAFFIC_UNAWARE 計算路線時,不會將路況納入考量。適合在不受路況影響的情況下使用。使用這個值會產生最短延遲時間。
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

對應 Route 或 RouteLeg 的通行費金額。這份清單包含收費站預期要收取的各項貨幣金額。一般來說,這份清單只會針對以一種貨幣計算收費站的路線,只會包含一個項目。如果是國際旅遊,這份清單可能包含多個項目,以反映不同貨幣的通行費。

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 州牌照豁免。
MX_TAG_IAVE 墨西哥通行費。
MX_TAG_TELEVIA 墨西哥通行費公司。在墨西哥市營運的眾多公司之一。詳情請參閱 https://www.televia.com.mx
MX_VIAPASS 墨西哥通行費。詳情請參閱 https://www.viapass.com.mx/viapass/web_home.aspx
US_AL_FREEDOM_PASS AL,美國
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 KS (美國)
US_KS_KTAG KS (美國)
US_KS_NATIONALPASS KS (美國)
US_KS_PREPASS_ELITEPASS KS (美國)
US_LA_GEAUXPASS 美國洛杉磯。
US_LA_TOLL_TAG 美國洛杉磯。
US_MA_EZPASSMA 美國麻薩諸塞州
US_MD_EZPASSMD 美國馬裡蘭州
US_ME_EZPASSME ME,美國。
US_MI_AMBASSADOR_BRIDGE_PREMIER_COMMUTER_CARD 美國密西根州
US_MI_GROSSE_ILE_TOLL_BRIDGE_PASS_TAG 美國密西根州
US_MI_IQ_PROX_CARD 美國密西根州
US_MI_MACKINAC_BRIDGE_MAC_PASS 美國密西根州
US_MI_NEXPRESS_TOLL 美國密西根州
US_MN_EZPASSMN MN,美國
US_NC_EZPASSNC NC、NC.
US_NC_PEACH_PASS NC、NC.
US_NC_QUICK_PASS NC、NC.
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_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_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 VA, USA。
US_WA_BREEZEBY 美國華盛頓州
US_WA_GOOD_TO_GO 美國華盛頓州
US_WV_EZPASSWV WV,美國
US_WV_MEMORIAL_BRIDGE_TICKETS WV,美國
US_WV_NEWELL_TOLL_BRIDGE_TICKET WV,美國

單位

一組值,用於指定螢幕使用的測量單位。

列舉
UNITS_UNSPECIFIED 未指定測量單位。預設值為從要求推測得出的測量單位。
METRIC 測量指標。
IMPERIAL 英制 (英文) 測量單位。

VehicleEmissionType

說明車輛排放類型的一組值。僅適用於雲端硬碟交通方式。

列舉
VEHICLE_EMISSION_TYPE_UNSPECIFIED 未指定排放類型。預設為 GASOLINE。
GASOLINE 汽油/汽油燃料車輛。
ELECTRIC 電動車。
HYBRID 混合燃料 (例如汽油 + 電動) 交通工具。

VehicleInfo

封裝車輛資訊,例如車牌最後一字元。

欄位
emission_type

VehicleEmissionType

說明車輛排放類型。僅適用於雲端硬碟交通方式。

途經點

封裝路線控點。路線控點會同時標出路線的起點和終點,以及路線沿途的中繼站。

欄位
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」時才能使用這個選項。

聯集欄位 location_type。呈現某個地點的不同方式。location_type 只能是下列其中一項:
location

Location

使用地理座標 (包括選用方向) 指定的點。

place_id

string

與路線控點相關聯的搜尋點地點 ID。