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

有料道路や高速道路を使わないなど、使用しないルート対象物を指定するには、リクエストにルート修飾子を追加します。API は、これらの機能を必要としないルートの提供を試みます。

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

経路修飾子を指定しても、制限対象を含むルートが除外されるわけではありません。この修飾子を使用して、より優先度の高いルートにバイアスをかけることができます。回避オプションをリクエストしてもルートが変わらない理由はいくつかあります。たとえば、出発地から目的地までのルートが 1 つしかない場合、高速道路やフェリーを回避することはできません。あるいは、別のルートを使用すると、実際には移動時間が大幅に長くなります。

次の例は、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,
  }
}