Route

経路をカプセル化します。経路は、始点、終点、中間の地点を結ぶ、連結された一連の道路セグメントで構成されます。

JSON 表現
{
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  },
  "optimizedIntermediateWaypointIndex": [
    integer
  ]
}
フィールド
legs[]

object (RouteLeg)

ルートを構成する区間(地点間の経路セグメント)の集まり。各区間は、via でない 2 つのウェイポイント間のルートに対応します。たとえば、中間地点のないルートは 1 区間のみです。via 以外の中間地点が 1 つ含まれているルートには、2 つの区間があります。via の中間地点が 1 つあるルートには 1 つの区間があります。区間の順序は、originintermediatesdestination のウェイポイントの順序と同じです。

distanceMeters

integer

ルートの移動距離(メートル単位)。

duration

string (Duration format)

ルートの移動に必要な時間の長さ。routingPreferenceTRAFFIC_UNAWARE に設定した場合、この値は staticDuration と同じになります。routingPreferenceTRAFFIC_AWARE または TRAFFIC_AWARE_OPTIMAL に設定した場合、この値は交通状況を考慮して計算されます。

s」で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

staticDuration

string (Duration format)

交通状況を考慮しないルートの移動時間。

s」で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

polyline

object (Polyline)

ルート全体のポリライン。このポリラインは、すべての legs を組み合わせたポリラインになります。

description

string

ルートの説明。

warnings[]

string

ルートの表示時に表示される警告の配列。

viewport

object (Viewport)

ポリラインのビューポート境界ボックス。

travelAdvisory

object (RouteTravelAdvisory)

ルートに関する追加情報です。

optimizedIntermediateWaypointIndex[]

integer

ComputeRoutesRequest.optimize_waypoint_order が true に設定されている場合、このフィールドには中間地点の最適化された順序が含まれます。それ以外の場合、このフィールドは空です。たとえば、出発地が LA、中間地域がダラス、バンゴー、フェニックス、目的地がニューヨーク、最適化された中間地点の順序がフェニックス、ダラス、バンガーであるとします。このフィールドには値 [2, 0, 1] が含まれます。最初の中間地点のインデックスは 0 から始まります。

RouteLeg

via でない地点間のセグメントをカプセル化します。

JSON 表現
{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}
フィールド
distanceMeters

integer

ルート区間の移動距離(メートル単位)。

duration

string (Duration format)

区間をナビゲートするのに必要な時間の長さ。route_preferenceTRAFFIC_UNAWARE に設定されている場合、この値は staticDuration と同じです。route_preferenceTRAFFIC_AWARE または TRAFFIC_AWARE_OPTIMAL の場合、この値は交通状況を考慮して計算されます。

s」で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

staticDuration

string (Duration format)

交通状況を考慮せずに計算された、この区間の移動時間。

s」で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

polyline

object (Polyline)

この区間の全体的なポリライン。これには各 step のポリラインも含まれます。

startLocation

object (Location)

この区間の始点。これは指定された origin とは異なる場合があります。たとえば、指定された origin が道路の近くにない場合、これは道路上の地点です。

endLocation

object (Location)

この区間の終点。これは指定された destination とは異なる場合があります。たとえば、指定された destination が道路の近くにない場合、これは道路上の地点です。

steps[]

object (RouteLegStep)

この区間内のセグメントを示すステップの配列。各ステップは 1 つのナビゲーション指示を表します。

travelAdvisory

object (RouteLegTravelAdvisory)

ルート区間の可能性のあるトラフィック ゾーン制限など、ユーザーに知らせる必要がある追加情報をカプセル化します。

ポリライン

エンコードされたポリラインをカプセル化します。

JSON 表現
{

  // Union field polyline_type can be only one of the following:
  "encodedPolyline": string,
  "geoJsonLinestring": {
    object
  }
  // End of list of possible types for union field polyline_type.
}
フィールド
共用体フィールド polyline_type。ポリラインのタイプをカプセル化します。デフォルトは encoded_polyline です。polyline_type は次のいずれかになります。
encodedPolyline

string

ポリライン エンコード アルゴリズムを使用したポリラインの文字列エンコード

geoJsonLinestring

object (Struct format)

GeoJSON LineString 形式を使用してポリラインを指定します。

RouteLegStep

RouteLeg のセグメントをカプセル化します。ステップは 1 つのナビゲーション指示に対応します。ルート区間はステップで構成されます。

JSON 表現
{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  },
  "travelAdvisory": {
    object (RouteLegStepTravelAdvisory)
  }
}
フィールド
distanceMeters

integer

このステップの移動距離(メートル単位)。状況によっては、このフィールドに値が表示されないこともあります。

staticDuration

string (Duration format)

交通状況を考慮せずにこのステップを通過する移動時間。状況によっては、このフィールドに値が表示されないこともあります。

s」で終わる小数 9 桁までの秒単位の期間。例: "3.5s"

polyline

object (Polyline)

このステップに関連付けられたポリライン。

startLocation

object (Location)

このステップの開始場所。

endLocation

object (Location)

このステップの終了場所。

navigationInstruction

object (NavigationInstruction)

ナビゲーションの説明。

travelAdvisory

object (RouteLegStepTravelAdvisory)

区間のステップで考えられるトラフィック ゾーン制限など、ユーザーに知らせる必要がある追加情報をカプセル化します。

RouteLegStepTravelAdvisory

区間のステップで考えられるトラフィック ゾーン制限など、ユーザーに知らせる必要がある追加情報をカプセル化します。

JSON 表現
{
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
フィールド
speedReadingIntervals[]

object (SpeedReadingInterval)

トラフィック密度の詳細を示す速度読み取り間隔。ルーティング設定が TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL の場合に適用されます。この間隔は、RouteLegStep のポリライン全体をオーバーラップせずにカバーします。指定した区間の始点は、前の区間の終点と同じになります。

例:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).

RouteLegTravelAdvisory

ルート区間の可能性のあるトラフィック ゾーン制限など、ユーザーに知らせる必要がある追加情報をカプセル化します。

JSON 表現
{
  "tollInfo": {
    object (TollInfo)
  },
  "speedReadingIntervals": [
    {
      object (SpeedReadingInterval)
    }
  ]
}
フィールド
tollInfo

object (TollInfo)

特定の RouteLeg の有料道路の情報をカプセル化します。このフィールドは、RouteLeg に有料道路がある場合にのみ入力されます。このフィールドが設定されていても、estimatedPrice サブフィールドに値が設定されていない場合、道路には通行料金が含まれていると想定されますが、見積もり料金はわかりません。このフィールドが存在しない場合、RouteLeg には有料道路がありません。

speedReadingIntervals[]

object (SpeedReadingInterval)

トラフィック密度の詳細を示す速度読み取り間隔。ルーティング設定が TRAFFIC_AWARETRAFFIC_AWARE_OPTIMAL の場合に適用されます。この間隔は、RouteLg のポリライン全体をオーバーラップすることなくカバーします。指定した区間の始点は、前の区間の終点と同じになります。

例:

polyline: A ---- B ---- C ---- D ---- E ---- F ---- G
speedReadingIntervals: [A,C), [C,D), [D,G).