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

有料道路や高速道路を使わないなど、利用したくないルート対象物を指定するには、リクエストにルート修飾子を追加します。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,
  }
}