DistanceMatrixService class
google.maps.DistanceMatrixService
class
計算多個起點與目的地之間距離的服務。
撥打 const {DistanceMatrixService} = await google.maps.importLibrary("routes")
即可存取。
請參閱「Maps JavaScript API 中的程式庫」。
建構函式 | |
---|---|
DistanceMatrixService |
DistanceMatrixService() 參數:無
建立 DistanceMatrixService 的新執行個體,將距離矩陣查詢傳送至 Google 伺服器。 |
方法 | |
---|---|
getDistanceMatrix |
getDistanceMatrix(request[, callback]) 參數:
提出距離矩陣要求。 |
DistanceMatrixRequest interface
google.maps.DistanceMatrixRequest
介面
DistanceMatrixService
傳送的距離矩陣查詢,內含起點和目的地位置的陣列,以及計算指標的各種選項。
屬性 | |
---|---|
destinations |
類型:
Array<string|LatLng|LatLngLiteral|Place> 陣列,內含目的地地址字串、 LatLng 或 Place 物件,用來計算距離和時間。必填。 |
origins |
類型:
Array<string|LatLng|LatLngLiteral|Place> 陣列,內含起點地址字串、 LatLng 或 Place 物件,用來計算距離和時間。必填。 |
travelMode |
類型:
TravelMode 要求的路線類型。必填。 |
avoidFerries optional |
類型:
boolean optional 如果設為 true ,距離矩陣服務會盡可能避開渡輪。選填。 |
avoidHighways optional |
類型:
boolean optional 如果設為 true ,距離矩陣服務會盡可能避開高速公路。選填。 |
avoidTolls optional |
類型:
boolean optional 如果為 true ,則指示距離矩陣服務盡可能避開收費路段。選填。 |
drivingOptions optional |
類型:
DrivingOptions optional 這些設定僅適用於 travelMode 為 DRIVING 的要求。這個物件不會影響其他交通方式。 |
language optional |
類型:
string optional 盡可能以指定語言傳回結果的語言 ID。請參閱支援語言清單。 |
region optional |
類型:
string optional 用於地理編碼要求自訂調整的區域代碼。區碼接受 ccTLD (「頂層網域」) 的兩位字元值。多數 ccTLD 代碼與 ISO 3166-1 代碼相同,只有少數例外。舉例來說,英國的 ccTLD 是「uk」( .co.uk ),而 ISO 3166-1 代碼是「gb」(技術上是指「大不列顛及北愛爾蘭聯合王國」實體)。 |
transitOptions optional |
類型:
TransitOptions optional 這些設定僅適用於 travelMode 為 TRANSIT 的要求。這個物件不會影響其他交通方式。 |
unitSystem optional |
類型:
UnitSystem optional 顯示距離時使用的常用單位系統。選用,預設為公制。 |
DistanceMatrixResponse interface
google.maps.DistanceMatrixResponse
介面
DistanceMatrixService
要求的相關回應,包含格式化的起點和目的地地址,以及一系列 DistanceMatrixResponseRow
,每個對應一個起點地址。
屬性 | |
---|---|
destinationAddresses |
類型:
Array<string> 格式化的目的地地址。 |
originAddresses |
類型:
Array<string> 格式化的起點地址。 |
rows |
對應至起點地址的矩陣列。 |
DistanceMatrixResponseRow 介面
google.maps.DistanceMatrixResponseRow
介面
DistanceMatrixService
要求的其中一列回應,由一連串 DistanceMatrixResponseElement
組成,每個 DistanceMatrixResponseElement
對應一個目的地地址。
屬性 | |
---|---|
elements |
對應目的地地址的列元素。 |
DistanceMatrixResponseElement 介面
google.maps.DistanceMatrixResponseElement
介面
DistanceMatrixService
要求的回應單一元素,包含從一個起點到一個目的地的時間和距離。
屬性 | |
---|---|
distance |
類型:
Distance 此起點與目的地對組之間的距離。因為距離不明,這個屬性可能未定義。 |
duration |
類型:
Duration 此起點與目的地對組的期間。因為期間不明,這個屬性可能未定義。 |
duration_in_traffic |
類型:
Duration 這個起點和目的地組合的所需時間,並考量 trafficModel 屬性所指出的路況。這項屬性可能為 undefined ,因為時間長度可能不明。只有在提出要求時定義 drivingOptions ,Premium 方案客戶才能使用這項功能。 |
fare |
類型:
TransitFare 這組起點和目的地的總車資。僅適用於大眾運輸要求。 |
status |
此特定起點與目的地對組的狀態。 |
DistanceMatrixStatus 常數
google.maps.DistanceMatrixStatus
常數
距離矩陣要求完成後,DistanceMatrixService
傳回的要求一般頂層狀態。您可以依值指定這些項目,也可以使用常數名稱。例如 'OK'
或 google.maps.DistanceMatrixStatus.OK
。
撥打 const {DistanceMatrixStatus} = await google.maps.importLibrary("routes")
即可存取。
請參閱「Maps JavaScript API 中的程式庫」。
常數 | |
---|---|
INVALID_REQUEST |
提供的要求無效。 |
MAX_DIMENSIONS_EXCEEDED |
該要求包含超過 25 個起點,或超過 25 個目的地。 |
MAX_ELEMENTS_EXCEEDED |
起點與目的地的乘積超出每項查詢的限制。 |
OK |
回應包含有效的結果。 |
OVER_QUERY_LIMIT |
在允許的時段內要求了過多的元素。如果稍後再試一次,要求應該就會成功。 |
REQUEST_DENIED |
服務拒絕您的網頁使用距離矩陣服務。 |
UNKNOWN_ERROR |
伺服器發生錯誤,無法處理距離矩陣要求。如果您再試一次,該要求可能會成功。 |
DistanceMatrixElementStatus 常數
google.maps.DistanceMatrixElementStatus
常數
距離矩陣要求完成後,DistanceMatrixService
會傳回特定出發地-目的地配對的元素層級狀態。這些值會指定為字串,例如 'OK'
。
撥打 const {DistanceMatrixElementStatus} = await google.maps.importLibrary("routes")
即可存取。
請參閱「Maps JavaScript API 中的程式庫」。
常數 | |
---|---|
NOT_FOUND |
此起點和/或目的地對組不可進行地理編碼。 |
OK |
回應包含有效的結果。 |
ZERO_RESULTS |
在起點和目的地之間找不到路線。 |