Routes API 目前為預先發布版 (正式發布前)。正式發布前的產品和功能支援有限,對正式發布前的產品和功能所做的變更可能與其他正式發布前的版本不相容。「正式發布前產品」受《Google 地圖平台服務專屬條款》規範。詳情請參閱發布階段說明

設定環保路徑

透過集合功能整理內容 你可以依據偏好儲存及分類內容。

預設情況下,Routes API 會傳回預設路徑,代表不考慮燃料或能源效率的路線。啟用環保路徑時,您仍會在回應中收到預設路徑。此外,您還會獲得環保路線,可根據車輛的引擎類型顯示最省油或省電路線。

Routes API 會使用車輛的引擎類型和其他因素 (例如即時路況和道路狀況) 來選擇環保路徑。路線的燃油或能源效率越高,車輛的油耗和二氧化碳排放量就越低。

例如,在公路行駛中,柴油車的相對燃油效率一般來說是最大程度的。混合辦公與電動車通常在停靠城市駕駛與丘陵行駛環境中提供更高的效率,讓這些裝置在再利用的煞車中廣泛運用及從中受益。

API 傳回的環保路徑最佳化,可降低整條路線的燃油消耗。並估算路線的燃油消耗量,並可用來比較不同路徑的明確油耗量。

Google 地圖如何估算燃油效率

Routes API 會使用美國能源部國家可再生能源實驗室和從歐洲環境署提供的資料,估算燃油效率。計算時會納入影響油耗和能源消耗和二氧化碳排放量的因素,例如:

  • 你所在地區的車輛平均燃油或能源消耗量
  • 路線沿途的山坡陡峭程度
  • 走走停停的車流量模式
  • 道路類型 (例如地區道路或高速公路)

當 Routes API 的到達時間與預設路徑差不多,則會傳回最省油或節能路線。如果省油或節能量過少或大幅增加行車時間,API 會顯示路線之間的相對燃料或節能,方便您進行比較。

進一步瞭解環保路徑技術 (PDF)

必要條件

如要使用環保路徑,您可以要求計算路徑:

  • 您必須將 TRAFFIC_AWARE_OPTIMAL 指定為轉送偏好設定。在這個模式下,伺服器會更全面地搜尋道路網路,找出最佳路線。詳情請參閱設定品質與延遲時間

  • 您必須將 travelMode 設為 DRIVE。其他交通方式的環保路徑要求則會傳回錯誤。

  • 您必須在支援的地區設定起點路線控點的位置。否則 API 會傳回錯誤。

  • 路線不能包含中繼路線控點。

規劃環保路徑

如要提出計算環保路徑的要求,請在要求中設定下列屬性:

  • requestedReferenceRoutes 設為 FUEL_EFFICIENT

  • 使用 VehicleEmissionType 中定義的值為車輛指定 emissionTypeDIESELGASOLINEELECTRICHYBRID。預設值為 GASOLINE

此外,請設定回應欄位遮罩,以指定與環保路徑相關聯的回應屬性:

  • routes.routeLabels: 代表每條路線:

    • 在預設路徑中,routeLabels 陣列屬性包含 DEFAULT_ROUTE

    • 對於環保路徑,routeLabels 陣列屬性包含 FUEL_EFFICIENT

    • 對於任何替代路徑,routeLabels 陣列屬性包含 DEFAULT_ROUTE_ALTERNATE

  • routes.travelAdvisory.fuelConsumptionMicroliters:整條路線的預估燃油用量 (以微升為單位)。

    如果 emissionTypeHYBRID,API 會將電力和燃油消耗轉換成微升燃料。

    如果 emissionTypeELECTRIC,API 會將電力消耗轉換成微升燃料。

  • routes.routeToken: 可傳遞至 Navigation SDK 以擷取自訂路徑的路徑權杖。

環保要求範例

下列程式碼顯示了環保路徑的要求。在此範例中,您可以使用回應欄位遮罩,傳回與環保路徑相關聯的回應屬性以及 routes.distanceMetersroutes.duration 屬性:

curl -X POST -H 'content-type: application/json' -d '{
  "origin": {
    "location": {
      "latLng": {
        "latitude": 41.76904801292959,
        "longitude": -72.67374935684933
      }
    }
  },
  "destination": {
    "location": {
      "latLng": {
        "latitude": 41.823042361105024,
        "longitude": -71.40933143059424
      }
    }
  },
  "routeModifiers": {
    "vehicleInfo": {
      "emissionType": "GASOLINE"
    }
  },
  "travelMode":"DRIVE",
  "routingPreference": "TRAFFIC_AWARE_OPTIMAL",
  "requestedReferenceRoutes": ["FUEL_EFFICIENT"]
}' 
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' 
-H 'X-Goog-FieldMask: routes.distanceMeters,routes.duration,routes.routeLabels,routes.travelAdvisory.fuelConsumptionMicroliters,routes.routeToken' 
'https://routes.googleapis.com/directions/v2:computeRoutes'

環保回應範例

上述運算路徑呼叫會產生包含兩個路徑的 JSON 回應:

{
    "routes": [
        {
            "distanceMeters": 138939,
            "duration": "5412s",
            "travelAdvisory": {
                "fuelConsumptionMicroliters": "10960841"
            },
            "routeToken": "CoYJCpoIC…0n9S1cu",
            "routeLabels": [
                "DEFAULT_ROUTE"
            ]
        },
        {
            "distanceMeters": 116887,
            "duration": "5631s",
            "travelAdvisory": {
                "fuelConsumptionMicroliters": "9302109"
            },
            "routeToken": "CuEHCu0G…xqm",
            "routeLabels": [
                "FUEL_EFFICIENT"
            ]
        }
    ]
}

如果預設路徑和環保路徑相同,routeLabels 屬性會同時包含 DEFAULT_ROUTEFUEL_EFFICIENT:

{
  "routes": [
    {
      "distanceMeters": 45875,
      "duration": "2655s",
      "travelAdvisory": {
        "fuelConsumptionMicroliters": "1926791"
      },
      "routeToken": "CvcDCos…6I40",
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ]
    }
  ]
}

支援的地區

Google 地圖平台團隊不斷致力於改善 API 服務的國際涵蓋率。下列清單顯示各國家/地區的最新環保詳細資料,依國家/地區提供:

  • 阿爾巴尼亞 (AL)
  • 奧地利 (AT)
  • 比利時 (BE)
  • 波士尼亞與赫塞哥維納 (BA)
  • 保加利亞 (BG)
  • 加拿大 (CA)
  • 克羅埃西亞 (HR)
  • 賽普勒斯 (CY)
  • 捷克 (CZ)
  • 丹麥 (DK)
  • 愛沙尼亞 (EE)
  • 芬蘭 (FI)
  • 法國 (FR)
  • 德國 (DE)
  • 希臘 (GR)
  • 匈牙利 (HU)
  • 冰島 (IS)
  • 愛爾蘭 (IE)
  • 義大利 (IT)
  • 科索沃 (XK)
  • 拉脫維亞 (LV)
  • 列支敦斯登 (LI)
  • 立陶宛 (LT)
  • 盧森堡 (LU)
  • 馬爾他 (MT)
  • 蒙特內哥羅 (ME)
  • 荷蘭 (NL)
  • 北馬其頓 (MK)
  • 挪威 (NO)
  • 波蘭 (PL)
  • 葡萄牙 (PT)
  • 羅馬尼亞 (RO)
  • 塞爾維亞 (RS)
  • 斯洛伐克 (SK)
  • 斯洛維尼亞 (SI)
  • 西班牙 (ES)
  • 瑞典 (SE)
  • 瑞士 (CH)
  • 土耳其 (TR)
  • 英國 (GB)
  • 美國 (US)