回避するルート機能を指定する

有料道路や高速道路を避けるなど、避けたいルート機能を指定するには、リクエストにルート修飾子を追加します。次に、API はこれらの機能を必要としないルートを提供しようとします。

リクエストで routeModifiers プロパティ(RouteModifiers 型)を使用します。avoidTollsavoidHighwaysavoidFerriesavoidIndoor を指定できます。

ルート修飾子を指定しても、制限対象の機能を含むルートが必ずしも除外されるわけではありません。API は、修飾子を使用して、より有利なルートに結果をバイアスします。回避オプションをリクエストしてもルートが変わらない理由はいくつかあります。たとえば、出発地から目的地への唯一のルートで、高速道路やフェリーを避けることができない場合です。または、代替ルートによって実際に所要時間が大幅に長くなる場合もあります。

次の例は、computeRoutes メソッド(REST)のリクエスト本文でルート修飾子を設定する方法を示しています。このオプションは、ComputeRoutes メソッド(gRPC)に指定することもできます。この例では、有料道路と高速道路を避けるように指定します。

{
  "origin":{
    "location":{
      "latLng":{
        "latitude":37.419734,
        "longitude":-122.0827784
      }
    }
  },
  "destination":{
    "location":{
      "latLng":{
        "latitude":37.417670,
        "longitude":-122.079595
      }
    }
  },
  "routeModifiers": {
    "avoidTolls": true,
    "avoidHighways": true,
  }
}