大型車輛路線

大型車輛路線規劃是一組屬性,可讓您指定實體尺寸、重量和拖車數量,為大型車輛最佳化車隊路線。API 會使用這些屬性計算可行路徑,避開受限道路、低矮橋樑或有重量限制的路線。

有了大型車輛路線規劃功能,您就能解決重型和大型車輛的車隊物流難題,例如:

  • 避開道路危險:生成路線規劃,引導車輛避開低淨空高度、有重量限制的道路和其他實體危險。
  • 指定詳細車輛資訊:將精確的尺寸、總重量、車軸數量和拖車設定納入整個車隊的路線規劃。
  • 提升車隊整體規劃:為整個卡車車隊制定有效率的路線計畫,同時確保所有指派作業都符合實體道路限制。

限制

開始前,請務必瞭解下列限制和規定。

  • 適用地區:大型車輛路線規劃功能僅適用於美國本土 48 州
  • 駕駛人建議和安全:駕駛人不得完全依賴此 API 傳回的路線,確保安全或合法。系統無法保證路線適合車輛,因此駕駛人可能會遇到低矮橋梁或禁止大型車輛通行的道路等危險情況。
  • 盡量符合限制的路線:在某些情況下,API 無法找到完全符合旅遊限制的路線。而是傳回「盡力處理」的路線,這條路線可能仍會經過管制區域。
  • 不支援的功能:大型車輛路線規劃不支援下列功能:
    • 卡車通行費
    • 速限
    • 放射性有害物質的路線
  • 帳單:Google 會統一對所有 optimizeTours 要求收費,無論要求是否設定大型車輛路線規劃屬性。
  • 長途路線:長途卡車路線 (500 公里以上) 需要的運算時間比短途路線長,且可能傳回品質較低的路線資料。為確保路線品質,請限制貨件、車輛起點和車輛終點之間的距離。如果需要長路線,請延長要求期限,以減少發生 DEADLINE_EXCEEDED 錯誤的機率。

屬性

如要使用大型車輛路線規劃屬性,必須設定車輛的實際尺寸,並將路線規劃模式設為「卡車」。

下表列出頂層屬性,可用於設定大型車輛路線規劃:

屬性 類型 規定 說明
travelMode 字串 必填 指定車輛的行車模式。如要啟用大型車輛路線規劃屬性,請將這個值設為 TRUCK
routeModifiers 物件 必填 包含路徑專屬設定,包括 vehicleInfo

vehicleInfo

vehicleInfo 物件包含車輛的實體規格。在 routeModifiers 屬性中定義這個物件。如果將 travelMode 設為 TRUCK,就必須提供 vehicleInfo 物件

下表列出 vehicleInfo 物件中可用的屬性:

屬性 類型 規定 說明
totalHeightMm 整數 必填 以公釐為單位指定車輛總高度。這個值必須是正整數。
totalWidthMm 整數 必填 以公釐為單位指定車輛總寬度。這個值必須是正整數。
totalWeightKg 整數 必填 指定車輛總重量 (以公斤為單位)。這個值必須是正整數。
totalLengthMm 整數 必填 指定車輛總長度 (以毫米為單位)。這個值必須是正整數。
trailerInfo 陣列 選用 包含預告片規格陣列,包括 lengthMm 屬性,可指定每部預告片的長度 (以毫米為單位)。
totalAxleCount 整數 必填 指定車輛的車軸總數。這個值必須是大於或等於 2 的整數。

範例

本節將介紹兩種範例:

程式碼範例

以下範例顯示用於大型車輛路線規劃的屬性結構:

"vehicles": [
  {
    "travelMode": "TRUCK",
    "routeModifiers": {
      "vehicleInfo": {
        "totalHeightMm": TOTAL_HEIGHT_MM,
        "totalWidthMm": TOTAL_WIDTH_MM,
        "totalWeightKg": TOTAL_WEIGHT_KG,
        "totalLengthMm": TOTAL_LENGTH_MM,
        "trailerInfo": [
          {
            "lengthMm": TRAILER_LENGTH_MM
          }
        ],
        "totalAxleCount": TOTAL_AXLE_COUNT
      }
    }
  }
]

要求範例

下列範例顯示基本 optimizeTours 要求結構,其中包含大型車輛路線規劃:

{
  "model": {
    "shipments": [
      {
        "pickups": [
          {
            "arrivalLocation": {
              "latitude": 40.953523,
              "longitude": -72.2277846
            }
          }
        ],
        "deliveries": [
          {
            "arrivalLocation": {
              "latitude": 40.9546673,
              "longitude": -72.2580151
            }
          }
        ]
      }
    ],
    "vehicles": [
      {
        "travelMode": "TRUCK",
        "routeModifiers": {
          "vehicleInfo": {
            "totalHeightMm": 4000,
            "totalWidthMm": 2500,
            "totalWeightKg": 9000,
            "totalLengthMm": 20000,
            "trailerInfo": [
              {
                "lengthMm": 15000
              }
            ],
            "totalAxleCount": 5
          }
        },
        "costPerKilometer": 1.0
      }
    ]
  }
}