Routes Data

Route class

class google.maps.routes.Route
library "routes"

內含路線,由一系列相連的道路路段組成,連接起點、終點和中途停靠點。

const {Route} = await google.maps.importLibrary("routes");
computeRoutes
computeRoutes(request)
參數:
傳回值: Promise<{
  routes:Array<Route> optional,
  fallbackInfo:FallbackInfo optional,
  geocodingResults:GeocodingResults optional
}>
指定一組終點和中途路線控點,傳回主要路線和選用的替代路線。

注意:使用這個方法時,您必須設定 ComputeRoutesRequest.fields 屬性,在要求中指定回應欄位遮罩。此值為欄位路徑清單。

例如:
  • 所有可用欄位的欄位遮罩:fields: ['*']
  • 路線層級時間、距離和路徑的欄位遮罩:fields: ['durationMillis', 'distanceMeters', 'path']

不建議使用萬用字元回應欄位遮罩fields: ['*'],原因如下:
  • 只選取需要的欄位,有助於伺服器節省運算週期,讓我們以較低的延遲時間將結果傳回給您。
  • 在正式版作業中只選取所需欄位,可確保延遲效能穩定。我們日後可能會新增更多回應欄位,而這些新欄位可能需要額外的運算時間。如果您選取所有欄位,或選取頂層的所有欄位,則系統會自動在回應中加入所有新增欄位,因此可能會導致效能下降。
  • 只選取您需要的欄位,可縮減回應大小,因此透過網路載入的速度會更快。
description
readonly
類型: string optional
路線說明。
distanceMeters
readonly
類型: number optional
路線的移動距離 (以公尺為單位)。
durationMillis
readonly
類型: number optional
導覽路線所需的時間長度 (以毫秒為單位)。如果將 ComputeRoutesRequest.routingPreference 設為 TRAFFIC_UNAWARE,這個值會與 Route.staticDurationMillis 相同。如果將 ComputeRoutesRequest.routingPreference 設為 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,系統會計算這個值,並將交通狀況納入考量。

注意:如果時間長度超過 2^53 毫秒,這個值會是 Number.POSITIVE_INFINITY
legs
readonly
類型: Array<RouteLeg> optional
路線是由多個路段 (路線控點之間的路線區段) 組成。每個路段都對應於兩個非 via 路線控點之間的行程。

例如:
  • 如果路線沒有中繼路線控點,就只有一個路段。
  • 如果路線包含一個非 via 的中途路線控點,則會有兩個路段。
  • 如果路線包含一個 via 中間路線控點,則會有一段路程。
路線段的順序與路線控點的順序相符,即從 originintermediates 再到 destination
localizedValues
readonly
類型: RouteLocalizedValues optional
Route 屬性的文字表示法。
optimizedIntermediateWaypointIndices
readonly
類型: Array<number> optional
如果將 ComputeRoutesRequest.optimizeWaypointOrder 設為 true,這個欄位會包含中途路線控點的最佳化順序。否則這個欄位會空白。輸入內容中第一個中途航點的索引為 0。

舉例來說,如果輸入:
  • 來源:LA
  • 中繼路線控點:達拉斯、班戈、鳳凰城
  • 目的地:紐約
,最佳化的中途航點順序為鳳凰城、達拉斯、班戈,則這個欄位會是 [2, 0, 1]
path
readonly
類型: Array<LatLngAltitude> optional
路線的 LatLngAltitude 清單,可用於繪製路線折線。您可以設定 ComputeRoutesRequest.polylineQuality,控制路徑的精細程度。
polylineDetails
readonly
類型: PolylineDetails optional
內含路徑詳細資料的相關資訊。
routeLabels
readonly
類型: Array<RouteLabel> optional
路線的標籤,可用於識別特定屬性,或與其他屬性比較。
routeToken
readonly
類型: string optional
不透明權杖,可傳遞至 Navigation SDK,在導航期間重建路線,並在重新規劃路線時,遵守建立路線時的原始意圖。請將這個權杖視為不透明的 Blob。請勿比較不同要求中的值,因為即使服務傳回完全相同的路線,這個值也可能會變更。

注意:只有將 ComputeRoutesRequest.routingPreference 設為 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL 的要求,才能使用 routeToken。如果要求有 via 路線控點,則不支援這項功能。
speedPaths
readonly
類型: Array<SpeedPath> optional
路線路徑的區段分組,以及對應的速讀。如要填入這個欄位,ComputeRoutesRequest.routingPreference 必須設為 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,且 ComputeRoutesRequest.extraComputations 必須包含 TRAFFIC_ON_POLYLINE
staticDurationMillis
readonly
類型: number optional
不考慮路況的路線行車時間。

注意:如果時間超過 2^53 毫秒,這個值就會是 Number.POSITIVE_INFINITY
travelAdvisory
readonly
類型: RouteTravelAdvisory optional
路線的其他資訊。
viewport
readonly
類型: LatLngBounds optional
路線的可視區域定界框。
warnings
readonly
類型: Array<string> optional
顯示路線時要顯示的警告陣列。
Alphacreate3DPolylines
create3DPolylines([options])
參數:
根據路線的可用資料,為路線建立 3D 聚合線。
createPolylines
createPolylines([options])
參數:
傳回值: Array<Polyline>
根據可用資料建立路線的折線。

多模態折線:
  • 需求條件:
  • 為每個多模式路線區隔建立折線。系統會根據路段的交通方式和大眾運輸路線資料 (如有) 設定折線樣式。您可以傳遞選項,根據交通方式和大眾運輸路線變更折線樣式。

車流量折線:
整體折線:
  • 需求條件:
  • 為整條路線建立單一折線,並套用預設樣式。您可以傳遞選項,根據路線的交通方式變更折線樣式。如要進一步自訂,請使用 Route.pathRouteLeg.path 直接建立折線。
AlphacreatePopover
createPopover()
參數:
傳回值: Promise<PopoverElement>
根據路徑的可用資料建立路徑的彈出式視窗,並以適合在地圖上註解路徑的方式設定。目前會使用 Route.localizedValuesRoute.path (如有)。
createWaypointAdvancedMarkers
createWaypointAdvancedMarkers([options])
為每個途中的路線控點建立標記,並依序標示為「A」、「B」、「C」等。標記已套用預設樣式。您可以傳遞選項,根據標記索引或對應 RouteLeg 的屬性變更標記樣式。如果路線沒有路段,WaypointMarkerDetails.leg 參數就會未定義。

必須在 ComputeRoutesRequest.fields 中要求 "legs" 欄位,才能納入中途停靠點。
繼承: toJSON

ComputeRoutesRequest 介面

介面 google.maps.routes.ComputeRoutesRequest

要求路線。

destination
路線目的地。以字串形式傳遞的值可以是地址、Plus Code 或地點資源名稱。計算路線時不會考量海拔高度值。
fields
類型: Iterable<string>
要擷取的欄位集合。為所有欄位指定 ["*"]
origin
路線的起點。以字串形式傳遞的值可以是地址、plus code 或 Place 資源名稱。計算路線時不會考量海拔高度值。
arrivalTime
選填
類型: Date optional
抵達時間。

注意:只有在 ComputeRoutesRequest.travelMode 設為 TRANSIT 時才能設定。你可以指定 ComputeRoutesRequest.departureTimeComputeRoutesRequest.arrivalTime,但不能同時指定兩者。大眾運輸行程最多可設為過去 7 天或未來 100 天。
computeAlternativeRoutes
選填
類型: boolean optional
指定是否要計算路線以外的替代路線。如果要求有中繼路線控點,系統不會傳回替代路線。
departureTime
選填
類型: Date optional
出發時間。如未設定這個值,系統會預設為您提出要求的時間。

注意:只有在 ComputeRoutesRequest.travelMode 設為 TRANSIT 時,才能指定過去的時間。大眾運輸行程最多可查詢過去 7 天或未來 100 天的行程。
extraComputations
選填
可用於完成要求的額外運算清單。

注意:這些額外運算可能會在回應中傳回額外欄位。這些額外欄位也必須在 ComputeRoutesRequest.fields 中指定,才能在回應中傳回。
intermediates
選填
類型: Iterable<Waypoint> optional
路線上的一組路線控點 (不含終點),可停靠或經過。最多支援 25 個中繼路線控點。
internalUsageAttributionIds
選填
類型: Iterable<string> optional
用來將呼叫歸因於特定套件或 OSS 程式庫的 ID。
language
選填
類型: string optional
BCP-47 語言代碼,例如「en-US」或「sr-Latn」。詳情請參閱「Unicode 語言代碼」。如需支援的語言清單,請參閱「語言支援」。如果未提供這個值,系統會根據 Google Maps JavaScript API 本地化設定推斷語言。否則系統會根據來源位置推斷語言。
optimizeWaypointOrder
選填
類型: boolean optional
如果設為 true,服務會重新排序指定的中間路線控點,盡量降低路線的整體費用。如果任何中繼路線控點是途經路線控點,要求就會失敗。在回覆中使用 Route.optimizedIntermediateWaypointIndices 尋找新的排序方式。如果 ComputeRoutesRequest.fields 中未要求 "optimizedIntermediateWaypointIndices",要求就會失敗。如果設為 false,回應中的 Route.optimizedIntermediateWaypointIndices 會留空。
polylineQuality
選填
類型: PolylineQuality optional
指定折線品質的偏好設定。
region
選填
類型: string optional
區碼,指定為 ccTLD (「頂層網域」) 的兩位字元值。詳情請參閱「國家代碼頂層網域」。如果未提供這個值,系統會根據 Google Maps JavaScript API 的本地化設定推斷區域。否則,系統會根據來源位置推斷區域。
requestedReferenceRoutes
選填
類型: Iterable<ReferenceRoute> optional
除了預設路線外,還指定要在要求中計算哪些參考路線。參考路線是指路線計算目標與預設路線不同的路線。舉例來說,FUEL_EFFICIENT參考路線計算會考量各種參數,產生最佳燃油效率路線。使用這項功能時,請在產生的路線中尋找 Route.routeLabels
routeModifiers
選填
類型: RouteModifiers optional
一組要滿足的條件,會影響路線的計算方式。舉例來說,您可以指定要避開的項目,例如收費路段或高速公路。
routingPreference
選填
類型: RoutingPreference optional
指定如何計算路線。伺服器會嘗試使用所選的轉送偏好設定計算路徑。如果路由偏好設定導致錯誤或延遲時間過長,系統會傳回錯誤。只有在 ComputeRoutesRequest.travelModeDRIVINGTWO_WHEELER 時,才能指定這個選項,否則要求會失敗。
trafficModel
選填
類型: TrafficModel optional
指定計算交通時間時要採用的假設。這項設定會影響 Route.durationMillisRouteLeg.durationMillis 的值,其中包含根據歷來平均值預估的交通時間。ComputeRoutesRequest.trafficModel 僅適用於將 ComputeRoutesRequest.routingPreference 設為 TRAFFIC_AWARE_OPTIMAL,並將 ComputeRoutesRequest.travelMode 設為 DRIVING 的要求。預設值為 BEST_GUESS
transitPreference
選填
類型: TransitPreference optional
指定偏好設定,影響為 TRANSIT 路線傳回的路線。

注意:只有在 ComputeRoutesRequest.travelMode 設為 TRANSIT 時,才能指定這項設定。
travelMode
選填
類型: TravelMode optional
指定交通方式。
units
選填
類型: UnitSystem optional
指定顯示欄位的測量單位,例如導覽指示。路線、路段、步距和時間長度所用的度量單位不會受到這個值影響。如未提供這個值,系統會根據來源位置推論顯示單位。

ComputeRoutesExtraComputation 常數

常數 google.maps.routes.ComputeRoutesExtraComputation
程式庫 "routes"

完成要求時要執行的額外運算。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 ComputeRoutesExtraComputationString 型別定義。

const {ComputeRoutesExtraComputation} = await google.maps.importLibrary("routes");
FLYOVER_INFO_ON_POLYLINE 路線的飛越資訊。詳情請參閱網路服務說明文件
FUEL_CONSUMPTION 路線的預估燃料耗量。詳情請參閱網路服務說明文件
HTML_FORMATTED_NAVIGATION_INSTRUCTIONS 詳情請參閱網路服務說明文件
NARROW_ROAD_INFO_ON_POLYLINE 路線的狹窄道路資訊。詳情請參閱網路服務說明文件
TOLLS 路線的收費資訊。詳情請參閱網路服務說明文件
TRAFFIC_ON_POLYLINE 路線的車流量監測折線。詳情請參閱網路服務說明文件

DirectionalLocationLiteral 介面

介面 google.maps.routes.DirectionalLocationLiteral 會擴充 LatLngAltitudeLiteral

為方便起見,系統接受物件常值,取代 DirectionalLocation 例項。Maps JS API 遇到這些常值時,會將其轉換為 DirectionalLocation

heading
選填
類型: number optional
與車流方向相關聯的羅盤航向。航向值可以是 0 到 360 的數字,其中 0 表示正北方的航向,90 表示正東方的航向,依此類推。這個欄位只能用於 DRIVINGTWO_WHEELER ComputeRoutesRequest.travelMode
已繼承: altitudelatlng

DirectionalLocation class

class google.maps.routes.DirectionalLocation extends LatLngAltitude implements DirectionalLocationLiteral
library "routes"

封裝地理點和選填的標題。

const {DirectionalLocation} = await google.maps.importLibrary("routes");
繼承: LatLngAltitude
heading
readonly
類型: number optional
與車流方向相關聯的羅盤航向。航向值可以是 0 到 360 的數字,其中 0 表示正北方的航向,90 表示正東方的航向,依此類推。這個欄位只能用於 DRIVINGTWO_WHEELER ComputeRoutesRequest.travelMode
已繼承: altitudelatlng
toJSON
toJSON([key])
參數:
  • key: string optional
轉換為純物件。
繼承: equals

FallbackInfo class

class google.maps.routes.FallbackInfo
library "routes"

說明系統在 Route.computeRoutes 回覆中採用備用結果的原因和方式。如果設定這個欄位,表示伺服器使用與偏好模式不同的路由模式做為備援。

const {FallbackInfo} = await google.maps.importLibrary("routes");
reason
readonly
類型: FallbackReason optional
系統改用備用回覆而非原始回覆的原因。只有在觸發備援模式並傳回備援回應時,才會填入這個欄位。
routingMode
readonly
類型: FallbackRoutingMode optional
用於回應的轉送模式。如果觸發了備援,模式可能與原始用戶端要求中設定的轉送偏好設定不同。
繼承: toJSON

FallbackReason 常數

常數 google.maps.routes.FallbackReason
程式庫 "routes"

使用備用回覆的原因。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 FallbackReasonString 型別定義。

const {FallbackReason} = await google.maps.importLibrary("routes");
LATENCY_EXCEEDED 我們無法及時以偏好的路線模式完成計算,但已透過替代模式計算出結果。詳情請參閱網路服務說明文件
SERVER_ERROR 使用偏好的路徑模式計算路徑時發生伺服器錯誤,但我們已使用替代模式計算出結果。詳情請參閱網路服務說明文件

FallbackRoutingMode 常數

常數 google.maps.routes.FallbackRoutingMode
程式庫 "routes"

用於傳回備用回應的實際路由模式。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 FallbackRoutingModeString 型別定義。

const {FallbackRoutingMode} = await google.maps.importLibrary("routes");
TRAFFIC_AWARE 詳情請參閱網路服務說明文件
TRAFFIC_UNAWARE 詳情請參閱網路服務說明文件

GeocodedWaypoint 類別

class google.maps.routes.GeocodedWaypoint
library "routes"

用做路線控點的地點地理編碼。僅適用於地址路線控點。包含地理編碼結果的詳細資料,用於判斷地址的地理編碼結果。

const {GeocodedWaypoint} = await google.maps.importLibrary("routes");
geocoderStatus
readonly
類型: RPCStatus optional
表示地理編碼作業產生的狀態碼。
intermediateWaypointRequestIndex
readonly
類型: number optional
要求中對應中途停靠點的索引。只有在對應路線控點是中繼路線控點時,才會填入這個欄位。
partialMatch
readonly
類型: boolean
指出地理編碼器沒有傳回與原始要求完全相符的結果,但可以比對部分要求的地址。建議您比對原始要求,檢查是否有拼寫錯誤和/或不完整的地址。
placeId
readonly
類型: string
這筆結果的地點 ID。
types
readonly
類型: Array<string>
結果類型,以零或多個類型標記的形式呈現。如需支援的類型,請參閱 https://developers.google.com/maps/documentation/geocoding/requests-geocoding#Types
繼承: toJSON

GeocodingResults class

class google.maps.routes.GeocodingResults
library "routes"

包含起點、目的地和中繼路線控點的 GeocodedWaypoint。只有地址航點會填入這項資料。

const {GeocodingResults} = await google.maps.importLibrary("routes");
destination
readonly
類型: GeocodedWaypoint optional
目的地的地理編碼路線控點。
intermediates
readonly
類型: Array<GeocodedWaypoint> optional
中間地理編碼路線控點的清單,每個路線控點都包含索引欄位,對應於要求中指定路線控點順序的以零為準位置。
origin
readonly
類型: GeocodedWaypoint optional
出發地的經過地理編碼路線控點。
繼承: toJSON

MultiModalSegment class

class google.maps.routes.MultiModalSegment
library "routes"

提供路線RouteLeg.steps中多種交通方式路段的摘要資訊。多模態區隔是指一或多個連續的 RouteLegStep,具有相同的 TravelMode

const {MultiModalSegment} = await google.maps.importLibrary("routes");
instructions
readonly
類型: string optional
如何瀏覽這個多模態區隔的說明。
maneuver
readonly
類型: string optional
這個步驟要執行的導航動作。如需可能值的清單,請參閱動作一節。
stepEndIndex
readonly
類型: number
對應的 RouteLegStep 索引,表示多模態區隔的結尾。
stepStartIndex
readonly
類型: number
多模態區段的開頭對應 RouteLegStep 索引。
travelMode
readonly
類型: TravelMode optional
這個多模式路段使用的交通方式。
繼承: toJSON

PolylineDetailInfo class

class google.maps.routes.PolylineDetailInfo
library "routes"

封裝折線路段的道路特徵相關資訊。

const {PolylineDetailInfo} = await google.maps.importLibrary("routes");
endIndex
readonly
類型: number optional
折線中這項道路特徵的結束索引。
presence
readonly
類型: RoadFeatureState optional
表示折線沿線是否有道路特徵。
startIndex
readonly
類型: number optional
這項道路特徵在折線中的起始索引。
繼承: toJSON

PolylineDetails class

class google.maps.routes.PolylineDetails
library "routes"

與折線的指定索引或連續線段對應的詳細資料。假設折線的點為 P_0、P_1、...、P_N (從零開始的索引),則 PolylineDetails 會說明指定間隔的道路特徵。

const {PolylineDetails} = await google.maps.importLibrary("routes");
flyoverInfo
readonly
折線沿途的立體空照圖詳細資料。
narrowRoadInfo
readonly
折線上的狹窄道路詳細資料。
繼承: toJSON

PolylineQuality 常數

常數 google.maps.routes.PolylineQuality
程式庫 "routes"

這組值用於指定折線的品質。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 PolylineQualityString 型別定義。

const {PolylineQuality} = await google.maps.importLibrary("routes");
HIGH_QUALITY 指定高品質的折線,這類折線是由比 OVERVIEW 更多的點組成,但會增加回應大小。詳情請參閱網路服務說明文件
OVERVIEW 指定概覽折線,這條折線是由少量點組成。詳情請參閱網路服務說明文件

ReferenceRoute 常數

常數 google.maps.routes.ReferenceRoute
程式庫 "routes"

ComputeRoutesRequest 中支援的參考路線。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 ReferenceRouteString 型別定義。

const {ReferenceRoute} = await google.maps.importLibrary("routes");
FUEL_EFFICIENT 省油路線。詳情請參閱網路服務說明文件
SHORTER_DISTANCE 路徑的行車距離較短。詳情請參閱網路服務說明文件

RoadFeatureState constants

常數 google.maps.routes.RoadFeatureState
程式庫 "routes"

封裝沿著折線路段的道路特徵狀態。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 RoadFeatureStateString 型別定義。

const {RoadFeatureState} = await google.maps.importLibrary("routes");
DOES_NOT_EXIST 道路特徵不存在。詳情請參閱網路服務說明文件
EXISTS 道路特徵存在。詳情請參閱網路服務說明文件

RouteLabel 常數

常數 google.maps.routes.RouteLabel
程式庫 "routes"

詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 RouteLabelString 型別定義。

const {RouteLabel} = await google.maps.importLibrary("routes");
DEFAULT_ROUTE 系統為路線計算作業傳回的預設「最佳」路線。詳情請參閱網路服務說明文件
DEFAULT_ROUTE_ALTERNATE 替代預設的「最佳」路線。詳情請參閱網路服務說明文件
FUEL_EFFICIENT 省油路線。詳情請參閱網路服務說明文件
SHORTER_DISTANCE 路線的行車距離較短。詳情請參閱網路服務說明文件

RouteLeg class

class google.maps.routes.RouteLeg
library "routes"

包含非 via 路線控點之間的區段。

const {RouteLeg} = await google.maps.importLibrary("routes");
distanceMeters
readonly
類型: number
路線段的行車距離 (以公尺為單位)。
durationMillis
readonly
類型: number optional
導覽路線路段所需的時間長度 (以毫秒為單位)。如果將 ComputeRoutesRequest.routingPreference 設為 TRAFFIC_UNAWARE,這個值會與 staticDurationMillis 相同。如果將 ComputeRoutesRequest.routingPreference 設為 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,系統會考量交通狀況來計算這個值。

注意:如果時間長度超過 2^53 毫秒,這個值會是 Number.POSITIVE_INFINITY
endLocation
readonly
類型: DirectionalLocation optional
這個路段的終點。這個地點可能與 ComputeRoutesRequest.destination 不同。舉例來說,如果 ComputeRoutesRequest.destination 不在道路附近,這個地點就是道路上的某個點。
localizedValues
readonly
類型: RouteLegLocalizedValues optional
RouteLeg 屬性的文字表示法。
path
readonly
路線路段的 LatLngAltitude 清單,可用於繪製路線路段折線。您可以設定 ComputeRoutesRequest.polylineQuality,控制路徑的精細程度。
speedPaths
readonly
類型: Array<SpeedPath>
路線路段路徑的分組,以及對應的讀取速度。如要填入這個欄位,ComputeRoutesRequest.routingPreference 必須設為 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL,且 ComputeRoutesRequest.extraComputations 必須包含 TRAFFIC_ON_POLYLINE
startLocation
readonly
類型: DirectionalLocation optional
這個路段的起點。這個地點可能與 ComputeRoutesRequest.origin 不同。舉例來說,如果 ComputeRoutesRequest.origin 附近沒有道路,這個地點就是道路上的某個點。
staticDurationMillis
readonly
類型: number optional
在不考慮交通狀況的情況下,路段的行車時間。

注意:如果時間超過 2^53 毫秒,這個值會是 Number.POSITIVE_INFINITY
steps
readonly
類型: Array<RouteLegStep>
這個路段中的區隔步驟陣列。每個步驟代表一項導航指示。
stepsOverview
readonly
類型: StepsOverview optional
RouteLeg 步驟的總覽資訊。這個欄位只會填入 TRANSIT 路線。
travelAdvisory
readonly
類型: RouteLegTravelAdvisory optional
包含應告知使用者的額外資訊,例如路線路段上可能的交通區域限制。
繼承: toJSON

RouteLegLocalizedValues class

class google.maps.routes.RouteLegLocalizedValues
library "routes"

RouteLeg 的文字表示法。

const {RouteLegLocalizedValues} = await google.maps.importLibrary("routes");
distance
readonly
類型: string optional
路線段的行駛距離,採文字形式。
distanceLanguage
readonly
類型: string optional
距離文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier
duration
readonly
類型: string optional
以文字形式表示的預估時間,並根據查詢地區進行本地化。系統會將交通狀況納入考量。
durationLanguage
readonly
類型: string optional
時長文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier
staticDuration
readonly
類型: string optional
以文字形式表示的預估時間,未將路況納入考量。
staticDurationLanguage
readonly
類型: string optional
靜態時間長度文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。
繼承: toJSON

RouteLegStep class

class google.maps.routes.RouteLegStep
library "routes"

包含 RouteLeg 的路段。一個步驟對應一項導航指示。路線路段由多個步驟組成。

const {RouteLegStep} = await google.maps.importLibrary("routes");
distanceMeters
readonly
類型: number
這個步驟的移動距離 (以公尺為單位)。
endLocation
readonly
類型: DirectionalLocation optional
這個步驟的終點。
instructions
readonly
類型: string optional
如何完成這個步驟。
localizedValues
readonly
類型: RouteLegStepLocalizedValues optional
RouteLegStep 屬性的文字表示法。
maneuver
readonly
類型: string optional
這個步驟要執行的導航動作。如需可能值的清單,請參閱動作一節。
path
readonly
路段步驟的 LatLngAltitude 清單,可用於繪製路段步驟折線。您可以設定 ComputeRoutesRequest.polylineQuality 控制路徑的精細度。如要填入這個欄位,必須在 ComputeRoutesRequest.fields 中要求 "path" 欄位。
startLocation
readonly
類型: DirectionalLocation optional
這個步驟的起點。
staticDurationMillis
readonly
類型: number optional
在不考慮交通狀況的情況下,完成這個步驟所需的時間。

注意:如果時間超過 2^53 毫秒,這個值會是 Number.POSITIVE_INFINITY
transitDetails
readonly
類型: TransitDetails optional
如果交通方式為 TRANSIT,系統會顯示這個步驟的詳細資料。
travelMode
readonly
類型: TravelMode optional
這個步驟使用的交通方式。
繼承: toJSON

RouteLegStepLocalizedValues 類別

class google.maps.routes.RouteLegStepLocalizedValues
library "routes"

RouteLegStep 屬性的文字表示法。

const {RouteLegStepLocalizedValues} = await google.maps.importLibrary("routes");
distance
readonly
類型: string optional
以文字形式表示路線路段步驟的行車距離。
distanceLanguage
readonly
類型: string optional
距離文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier
staticDuration
readonly
類型: string optional
以文字形式表示的預估時間,未將路況納入考量。
staticDurationLanguage
readonly
類型: string optional
靜態時間長度文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier
繼承: toJSON

RouteLegTravelAdvisory class

class google.maps.routes.RouteLegTravelAdvisory
library "routes"

內含使用者應在 RouteLeg 中瞭解的其他資訊。

const {RouteLegTravelAdvisory} = await google.maps.importLibrary("routes");
speedReadingIntervals
readonly
類型: Array<SpeedReadingInterval> optional
詳細說明車流密度的速讀間隔。適用於 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL ComputeRoutesRequest.routingPreference。間隔涵蓋 RouteLeg 的整條折線,不會重疊。指定間隔的起點與前一個間隔的終點相同。

示例:
 polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G)
tollInfo
readonly
類型: TollInfo optional
包含特定 RouteLeg 的過路費資訊。只有在 RouteLeg 預計會產生過路費時,才會填入這個欄位。如果設定這個欄位,但未填入 TollInfo.estimatedPrices,則表示路線路段包含過路費,但預估價格不明。如果這個欄位空白,則表示 RouteLeg 沒有過路費。
繼承: toJSON

RouteLocalizedValues class

class google.maps.routes.RouteLocalizedValues
library "routes"

Route 屬性的文字表示法。

const {RouteLocalizedValues} = await google.maps.importLibrary("routes");
distance
readonly
類型: string optional
以文字形式表示路線的行駛距離。
distanceLanguage
readonly
類型: string optional
距離文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier
duration
readonly
類型: string optional
以文字形式表示的時長,並根據查詢區域進行本地化。考量路況。注意:如果未要求提供流量資訊,這個值會與 staticDuration 的值相同。
durationLanguage
readonly
類型: string optional
時長文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱 http://www.unicode.org/reports/tr35/#Unicode_locale_identifier
staticDuration
readonly
類型: string optional
以文字形式表示的預估時間,未將路況納入考量。
staticDurationLanguage
readonly
類型: string optional
靜態時間長度文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。
transitFare
readonly
類型: string optional
以文字形式表示的大眾運輸票價。
transitFareLanguage
readonly
類型: string optional
大眾運輸票價文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。
繼承: toJSON

RouteModifiers 介面

介面 google.maps.routes.RouteModifiers

封裝一組選用條件,用於計算路徑時。

avoidFerries
選填
類型: boolean optional
設為 true 時,系統會盡量避開渡輪,優先選擇不含渡輪的路線。僅適用於 DRIVINGTWO_WHEELER TravelMode
avoidHighways
選填
類型: boolean optional
設為 true 時,系統會盡量避開高速公路,優先選擇不含高速公路的路徑。僅適用於 DRIVINGTWO_WHEELER TravelMode
avoidIndoor
選填
類型: boolean optional
設為 true 時,系統會盡量避免室內導航,優先選擇不含室內導航的路線。僅適用於 WALKING TravelMode
avoidTolls
選填
類型: boolean optional
設為 true 時,系統會盡量避開收費道路,優先選擇不含收費道路的路線。僅適用於 DRIVINGTWO_WHEELER TravelMode
tollPasses
選填
類型: Iterable<string> optional
封裝有關收費通行卡的資訊。如果提供收費通行卡,API 會嘗試傳回通行卡價格。如果未提供收費通行卡,API 會將收費通行卡視為不明,並嘗試傳回現金價格。僅適用於 DRIVINGTWO_WHEELER TravelMode。如需有效值清單,請參閱「TollPass」。
vehicleInfo
選填
類型: VehicleInfo optional
指定車輛資訊。

RoutePolyline3DOptions 介面

介面 google.maps.routes.RoutePolyline3DOptions

建立路線 3D 折線的選項。

colorScheme
選填
類型: ColorScheme optional
用於 3D 折線的色彩配置。如果指定為 FOLLOW_SYSTEM,且地圖 colorScheme 也為 FOLLOW_SYSTEM,系統會以與地圖相同的深色/淺色模式繪製折線。如未指定,AlphaRoute.create3DPolylines 會嘗試使用地圖的 colorScheme,或改回系統預設值。
polylineOptions
選填
自訂 3D 折線樣式的選項。

RoutePolylineDetails 介面

介面 google.maps.routes.RoutePolylineDetails

與折線對應的路徑區段詳細資料,可用於自訂折線樣式。

speed
選填
類型: Speed optional
對應這條折線的路段速度讀數。僅適用於提供路況資訊的路線。
transitDetails
選填
類型: TransitDetails optional
與這條折線對應的路段大眾運輸詳細資料。只有包含大眾運輸資訊的路線才會填入這項資料。
travelMode
選填
類型: TravelMode optional
與這條折線對應的路段交通方式。如為流量折線,則會留空。

RoutePolylineOptions interface

介面 google.maps.routes.RoutePolylineOptions

建立路徑折線的選項。

colorScheme
選填
類型: ColorScheme optional
用於折線的色彩配置。如果指定為 FOLLOW_SYSTEM,且地圖 colorScheme 也為 FOLLOW_SYSTEM,系統會以與地圖相同的深色/淺色模式繪製折線。如果未指定,Route.createPolylines 會嘗試使用地圖的 colorScheme,或改用系統預設值。
polylineOptions
選填
自訂折線樣式的選項。可以是套用至路線所有折線的 PolylineOptions 物件,也可以是採用預設 PolylineOptionsRoutePolylineDetails,並傳回要套用至該折線的 PolylineOptions 的函式。

RouteTravelAdvisory class

class google.maps.routes.RouteTravelAdvisory
library "routes"

內含使用者應在 Route 中瞭解的其他資訊。

const {RouteTravelAdvisory} = await google.maps.importLibrary("routes");
fuelConsumptionMicroliters
readonly
類型: number optional
預測的燃料消耗量 (以微升為單位)。

注意:如果燃料消耗量超過 2^53 微升,這個值會是 Number.POSITIVE_INFINITY
routeRestrictionsPartiallyIgnored
readonly
類型: boolean optional
Route可能設有不適合所要求交通方式或路線修飾符的限制。
speedReadingIntervals
readonly
類型: Array<SpeedReadingInterval> optional
詳細說明車流密度的速讀間隔。適用於 TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL ComputeRoutesRequest.routingPreference。間隔涵蓋 Route 的整條折線,不會重疊。指定間隔的起點與前一個間隔的終點相同。

示例:
 polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G)
tollInfo
readonly
類型: TollInfo optional
包含 Route 的收費資訊。只有在 Route 預計會收取通行費時,這個欄位才會填入資料。如果這個欄位已設定,但 TollInfo.estimatedPrices 未填入資料,則表示路線會收取通行費,但預估價格不明。如果這個欄位空白,則表示 Route 不會收取通行費。
transitFare
readonly
類型: Money optional
如果存在,則包含這個 Route 的總車資或票價。這個屬性只會針對 TRANSIT ComputeRoutesRequest.travelMode 傳回,且僅適用於所有大眾運輸步驟皆有車資資訊的路線。
繼承: toJSON

RoutingPreference 常數

常數 google.maps.routes.RoutingPreference
程式庫 "routes"

一組值,用於指定計算路線時要考量的因素。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 RoutingPreferenceString 型別定義。

const {RoutingPreference} = await google.maps.importLibrary("routes");
TRAFFIC_AWARE 計算路線時會考量即時路況。詳情請參閱網路服務說明文件
TRAFFIC_AWARE_OPTIMAL 計算路線時會考量即時路況,但不套用大部分的效能最佳化設定。詳情請參閱網路服務說明文件
TRAFFIC_UNAWARE 計算路線時不會考量即時路況。詳情請參閱網路服務說明文件

速度 常數

常數 google.maps.routes.Speed
程式庫 "routes"

根據交通資訊分類的折線速度。詳情請參閱Web 服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 SpeedString 型別定義。

const {Speed} = await google.maps.importLibrary("routes");
NORMAL 車速正常,沒有交通延誤。詳情請參閱網路服務說明文件
SLOW 偵測到速度變慢,流量中等。詳情請參閱網路服務說明文件
TRAFFIC_JAM 車流堵塞。詳情請參閱網路服務說明文件

SpeedPath 介面

介面 google.maps.routes.SpeedPath

將路徑間隔的 LatLngAltitude 與該間隔的速讀速度分組。

path
這條速度路徑涵蓋的路徑。
speed
選填
類型: Speed optional
路徑的速讀。

SpeedReadingInterval class

class google.maps.routes.SpeedReadingInterval
library "routes"

折線或路徑上連續路段的車流密度指標。假設路徑包含 P_0、P_1、...、P_N 等點 (從零開始的索引),SpeedReadingInterval 說明間隔的交通密度。

const {SpeedReadingInterval} = await google.maps.importLibrary("routes");
endPolylinePointIndex
readonly
類型: number optional
折線中這個間隔的結尾索引。
speed
readonly
類型: Speed optional
這個時間間隔內的車速。
startPolylinePointIndex
readonly
類型: number optional
折線中這個間隔的起始索引。

StepsOverview class

class google.maps.routes.StepsOverview
library "routes"

提供 RouteLeg.steps 清單的總覽資訊。

const {StepsOverview} = await google.maps.importLibrary("routes");
multiModalSegments
readonly
RouteLeg.steps不同多模態區隔的摘要資訊。
繼承: toJSON

TollInfo class

class google.maps.routes.TollInfo
library "routes"

封裝 RouteRouteLeg 的收費資訊。

const {TollInfo} = await google.maps.importLibrary("routes");
estimatedPrices
readonly
類型: Array<Money> optional
對應 RouteRouteLeg 的通行費金額。這份清單包含通行費站預計收取的每種貨幣金額。一般來說,如果路線的通行費只以一種貨幣計價,這份清單只會包含一個項目。如果是國際行程,這份清單可能會包含多個項目,反映以不同貨幣計價的通行費。如果預計會收取通行費,但預估價格不明,這個欄位可能會是空陣列。
繼承: toJSON

TransitAgency class

class google.maps.routes.TransitAgency
library "routes"

運輸公司的相關資訊。

const {TransitAgency} = await google.maps.importLibrary("routes");
name
readonly
類型: string optional
這間運輸公司的名稱。
phoneNumber
readonly
類型: string optional
運輸公司特定地區格式的電話號碼。
url
readonly
類型: URL optional
運輸公司的網址。
繼承: toJSON

TransitDetails class

class google.maps.routes.TransitDetails
library "routes"

路線中轉乘步驟的其他資訊。

const {TransitDetails} = await google.maps.importLibrary("routes");
arrivalStop
readonly
類型: TransitStop optional
步驟的抵達站點資訊。
arrivalTime
readonly
類型: Date optional
步驟的預計到達時間。
departureStop
readonly
類型: TransitStop optional
步驟的起點站資訊。
departureTime
readonly
類型: Date optional
該步驟的預計出發時間。
headsign
readonly
類型: string optional
指定這條路線的行進方向,如交通工具或出發站上所標示的方向。方向通常是終點站。
headwayMillis
readonly
類型: number optional
指定從目前同一站點出發的預計間隔時間 (以毫秒為單位)。舉例來說,如果班距值為 600,000,則表示如果錯過上一班公車,下一班預計要等 10 分鐘。

注意:如果班距超過 2^53 毫秒,這個值就是 Number.POSITIVE_INFINITY
stopCount
readonly
類型: number
從出發站到抵達站的停靠站數量。這項計數包含抵達站,但不包含出發站。舉例來說,如果路線是從 A 站出發,途經 B 站和 C 站,最後抵達 D 站,則 stopCount 為 3。
transitLine
readonly
類型: TransitLine optional
這個步驟中使用的大眾運輸路線相關資訊。
tripShortText
readonly
類型: string optional
顯示在時刻表和看板上的文字,可供乘客識別大眾運輸行程。這段文字可識別服務日內的特定行程。舉例來說,Amtrak 列車在平日下午 3 點 10 分從加州聖荷西出發前往加州沙加緬度,這班列車的 tripShortText 為「538」。
繼承: toJSON

TransitLine 類別

class google.maps.routes.TransitLine
library "routes"

大眾運輸路線的相關資訊。

const {TransitLine} = await google.maps.importLibrary("routes");
agencies
readonly
類型: Array<TransitAgency>
營運這條大眾運輸路線的運輸公司。
color
readonly
類型: string optional
這條路線常用的顏色,以十六進位表示。
iconURL
readonly
類型: URL optional
這條路線相關圖示的網址。
name
readonly
類型: string optional
這條大眾運輸路線的全名,例如「8 Avenue Local」。
shortName
readonly
類型: string optional
這條大眾運輸路線的簡稱。通常是路線編號,例如「M7」或「355」。
textColor
readonly
類型: string optional
這條路線的標誌上常用的文字顏色,以十六進制表示。
url
readonly
類型: URL optional
這條大眾運輸路線的網址 (由運輸公司提供)。
vehicle
readonly
類型: TransitVehicle optional
這條大眾運輸路線使用的交通工具類型。
繼承: toJSON

TransitPreference 介面

介面 google.maps.routes.TransitPreference

影響傳回路線的 TRANSIT 路線偏好設定。

allowedTransitModes
選填
類型: Iterable<TransitMode> optional
取得 TRANSIT 路線時要使用的一組交通方式。預設為所有支援的交通方式。
routingPreference
選填
類型: TransitRoutePreference optional
指定後會影響傳回的 TRANSIT 路線。

TransitStop class

class google.maps.routes.TransitStop
library "routes"

大眾運輸站牌的相關資訊。

const {TransitStop} = await google.maps.importLibrary("routes");
location
readonly
類型: DirectionalLocation optional
停靠站的位置 (以經緯度座標表示) 和選填的航向。
name
readonly
類型: string optional
大眾運輸停靠站的名稱。
繼承: toJSON

TransitVehicle class

class google.maps.routes.TransitVehicle
library "routes"

大眾運輸路線使用的車輛相關資訊。

const {TransitVehicle} = await google.maps.importLibrary("routes");
iconURL
readonly
類型: URL optional
與此車輛類型相關聯的圖示網址。
localIconURL
readonly
類型: URL optional
此交通工具類型相關圖示的網址 (根據本地交通標誌)。
name
readonly
類型: string optional
這輛車的名稱 (大寫)。
nameLanguage
readonly
類型: string optional
車輛名稱文字的 BCP-47 語言代碼,例如「en-US」或「sr-Latn」。

詳情請參閱:https://www.unicode.org/reports/tr35/#Unicode_locale_identifier
vehicleType
readonly
類型: string optional
繼承: toJSON

VehicleEmissionType 常數

常數 google.maps.routes.VehicleEmissionType
程式庫 "routes"

一組描述車輛排放類型的數值。詳情請參閱網路服務說明文件

這些常數也可做為字串使用。在 TypeScript 中,字串常值是由 VehicleEmissionTypeString 型別定義。

const {VehicleEmissionType} = await google.maps.importLibrary("routes");
DIESEL 柴油車。詳情請參閱網路服務說明文件
ELECTRIC 電動車。詳情請參閱網路服務說明文件
GASOLINE 汽油車。詳情請參閱網路服務說明文件
HYBRID 混合動力車輛 (例如汽油 + 電動)。詳情請參閱網路服務說明文件

VehicleInfo 介面

介面 google.maps.routes.VehicleInfo

包含車輛資訊,例如車輛排放類型。

emissionType
選填
類型: VehicleEmissionType optional
說明車輛的排放類型。僅適用於DRIVING 交通方式。

Waypoint 介面

介面 google.maps.routes.Waypoint

代表路線中的途經點。

location
航點位置。字串可以是地址、Plus Code 或地點資源名稱。
sideOfRoad
選填
類型: boolean optional
表示這個路線控點的位置偏好車輛停靠在道路的特定一側。設定這個值後,路線會經過該位置,讓車輛停靠在道路中心偏向該位置的一側。這個選項僅適用於 DRIVINGTWO_WHEELER ComputeRoutesRequest.travelMode
vehicleStopover
選填
類型: boolean optional
指出路線控點是供車輛停靠,目的是接送乘客。設定這個值後,計算出的路線就不會包含不適合接送乘客的道路上的非 via 路線控點。這個選項僅適用於 DRIVINGTWO_WHEELER ComputeRoutesRequest.travelMode,且 Waypoint.location 不是 stringPlace
via
選填
類型: boolean optional
將這個路線控點標示為里程碑,而非停靠點。對於 ComputeRoutesRequest 中的每個非 via 路線控點,Route.computeRoutes 會在 Route.legs 陣列中附加項目,提供該段行程停靠點的詳細資料。

如要讓路線經過這個路線控點但不停靠,請將這個值設為 true。途經路線控點不會導致項目新增至 Route.legs 陣列,但會讓行程經過該路線控點。

附註:
  • 您只能對中繼路線控點設定這個值。如果您在終端路線控點上設定這個欄位,要求就會失敗。
  • 如果 ComputeRoutesRequest.optimizeWaypointOrder 設為 true,這個欄位就不能設為 true,否則要求會失敗。

WaypointMarkerDetails interface

介面 google.maps.routes.WaypointMarkerDetails

可用於自訂標記樣式的路線控點詳細資料。

index
類型: number
標記的索引。
totalMarkers
類型: number
路線中的標記總數。
leg
選填
類型: RouteLeg optional
標記所屬的路線段。如果路線沒有路線段,則為空白。