ルートのレスポンスを確認する

Routes API がルートを計算するときに、指定したウェイポイントと構成パラメータを入力として使用します。その後、API がレスポンスを返し、 default ルートと 1 つ以上の代替ルートが格納されています。

レスポンスには、さまざまなタイプのルートやその他のデータを含めることができます。 指定する必要があります。

レスポンスに含めるには このドキュメントをご覧ください
車両のエンジンの種類に応じた、燃料またはエネルギー効率の最もよいルート。 環境に優しいルートを設定する
最大 3 つの代替ルート 代替ルートをリクエストする
ルート全体、ルートの各区間および各ステップのポリライン あります。 ルートのポリラインをリクエストする
通行料金の割引を考慮した推定通行料金 運転手や車両で利用可能なパスなどです。 通行料金を計算する
言語コードと測定単位(ヤードポンド法、またはヤードポンド法)別のローカライズされたレスポンス できます。 ローカライズした値をリクエストする
ナビゲーション手順を HTML テキスト文字列としてフォーマットするには、HTML_FORMATTED_NAVIGATION_INSTRUCTIONSextraComputations 追加の計算

入力オプションの一覧については、使用可能なルート オプションをご覧ください。 および リクエスト本文

このレスポンスを使用して、お客様に情報を提供し、 選択する必要があります。

フィールド マスクについて

ルートを計算するメソッドを呼び出すときは、 マスク。レスポンスで返されるフィールドを定義します。返されるフィールドのデフォルト リストはありません。このリストを省略すると、メソッドはエラーを返します。

このドキュメントの例では、レスポンス オブジェクト全体を 考慮する必要があります本番環境では、次のようなレスポンスが返されます。 フィールド マスクで明示的に指定したフィールドのみを含めます。

詳しくは、返される情報を選択するをご覧ください。

著作権の表示について

検索結果をユーザーに表示するときは、次の著作権表示を含める必要があります。

Powered by Google, ©YEAR Google

例:

Powered by Google, ©2023 Google

ルート、区間、ステップについて

Routes API から返されるレスポンスを確認する前に、 ルートを構成する構成要素を理解している必要があります

ルート、区間、ステップ。

レスポンスには、次の各ルート コンポーネントに関する情報が含まれる場合があります。

  • 経路: 出発地の地点から任意の地点までのルート全体 中間地点、目的地の地点です。経路は 1 つの経路と または複数の legs を含む。

  • 区間: ルートの 1 つのウェイポイントから次のウェイポイントまでの経路。各区間は 1 つ以上の独立したステップで構成されています。

    ルートには、各ウェイポイントから次のウェイポイントへの経路の区間が個別に含まれます。たとえば、ルートに出発地のウェイポイントが 1 つと目的地のウェイポイントが 1 つ含まれている場合、そのルートには 1 つの区間が含まれます。各 出発地と目的地の後にルートに追加するウェイポイント API によって別の区間が追加されます。

    API では、パススルー中間ウェイポイントの区間は追加されません。対象 たとえば、出発地のウェイポイント、通過地点、 中間地点があり、目的地の地点には、 地点を通過します。詳細情報 詳細情報については、以下をご覧ください。 通過地点を定義する

  • ステップ: ルートの区間に沿った 1 つの手順。ステップは、 ルートの原子単位ですたとえば、1 つのステップが「メインで左折する」と示すことができます。 Street''.

回答の内容

JSON オブジェクト (API レスポンスを表す)には、次のトップレベル プロパティが含まれています。

  • routes: 型の要素の配列 Routeroutes 配列には、API から返されたルートごとに 1 つの要素が含まれます。 配列には最大 5 つの要素(デフォルト ルート、 環境に優しいルートと最大 3 つの代替ルートがあります。

  • geocodingResults: 型の要素の配列 GeocodingResults。 リクエストに含まれるすべての場所(出発地、目的地、中間) 「address string」または「Plus code」として指定した waypoint API がプレイス ID ルックアップを行いますこの配列の各要素には、場所に対応するプレイス ID が含まれます。リクエスト内の位置情報がプレイス ID または緯度と経度の座標として指定されている場合、その位置情報は含まれません。場所 ID または緯度と経度を使用してすべてのビジネス拠点を指定した場合 指定された場合、この配列は提供されません。

  • fallbackInfo(型) FallbackInfo. API ですべての入力プロパティからルートを計算できない場合は、 別の計算方法にフォールバックする可能性があります。フォールバック モードが使用されている場合、このフィールドにはフォールバック レスポンスに関する詳細情報が含まれます。それ以外の場合、このフィールドは設定されません。

レスポンスの形式は次のとおりです。

{
  // The routes array.
  "routes": [
    {
      object (Route)
    }
  ],
  // The place ID lookup results.
  "geocodingResults": [
    {
      object (GeocodedWaypoint)
    }
  ],
  // The fallback property.
  "fallbackInfo": {
    object (FallbackInfo)
  }
}

routes 配列を解読する

レスポンスには routes 配列が含まれます。各配列要素の型は Route です。各配列要素は出発地から目的地までのルート全体を表します。「 API は常に、デフォルト ルートと呼ばれる少なくとも 1 つのルートを返します。

追加のルートをリクエストできます。環境に優しいルートをリクエストする場合、配列にはデフォルトのルートと環境に優しいルートの 2 つの要素を含めることができます。または、リクエストで computeAlternativeRoutestrue に設定して、レスポンスに最大 3 つの代替ルートを追加します。

配列内の各ルートは routeLabels 配列プロパティで識別されます。

説明
DEFAULT_ROUTE デフォルト ルートを指定します。
FUEL_EFFICIENT 環境に優しいルートを識別する。
DEFAULT_ROUTE_ALTERNATE 代替ルートを指定します。

legs 配列には、ルートの各区間の定義が格納されます。残りのプロパティ(distanceMetersdurationpolyline, など)には、ルート全体に関する情報が含まれます。

{
  "routeLabels": [
    enum (RouteLabel)
  ],
  "legs": [
    {
      object (RouteLeg)
    }
  ],
  "distanceMeters": integer,
  "duration": string,
  "routeLabels": [string],
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "description": string,
  "warnings": [
    string
  ],
  "viewport": {
    object (Viewport)
  },
  "travelAdvisory": {
    object (RouteTravelAdvisory)
  }
  "routeToken": string
}

現在の運転状況やその他の要因により、デフォルト ルートと 環境に優しいルートは同じでもかまいませんこの例では、routeLabels 配列です。 DEFAULT_ROUTEFUEL_EFFICIENT の両方のラベルが含まれています。

{
  "routes": [
    {
      "routeLabels": [
        "DEFAULT_ROUTE",
        "FUEL_EFFICIENT"
      ],
     
    }
  ]
}

legs 配列を理解する

レスポンスの各 route には legs 配列が含まれ、各 legs 配列 要素は次の型です。 RouteLeg。 配列の各区間は、あるウェイポイントから次のウェイポイントまでのパスを定義します 表示されます。ルートには必ず 1 つ以上の区間が含まれます。

legs プロパティには、steps 配列内の区間の各ステップの定義が含まれます。残りのプロパティ(distanceMetersdurationpolyline には区間に関する情報が含まれています。

{
  "distanceMeters": integer,
  "duration": string,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "steps": [
    {
      object (RouteLegStep)
    }
  ],
  "travelAdvisory": {
    object (RouteLegTravelAdvisory)
  }
}

ステップ配列を理解する

レスポンスの各区間には steps 配列が含まれます。各 steps 配列要素は RouteLegStep 型です。ステップは、1 つの区間に沿った 1 つの指示に対応します。区間には常に 必要ありません。

steps 配列の各要素には、ステップの手順を含む NavigationInstruction 型の navigationInstruction プロパティが含まれています。例:

"navigationInstruction": {
  "maneuver": "TURN_LEFT",
  "instructions": "Turn left toward Frontage Rd"
}

instructions には、ステップに関する追加情報が含まれている場合があります。次に例を示します。

"navigationInstruction": {
  "maneuver": "TURN_SLIGHT_LEFT",
  "instructions": "Slight left (signs for I-90 W/Worcester)nParts of this road may be closed at certain times or days"
}

ステップの残りのプロパティには、distanceMetersdurationpolyline など、ステップに関する情報が記述されます。

{
  "distanceMeters": integer,
  "staticDuration": string,
  "polyline": {
    object (Polyline)
  },
  "startLocation": {
    object (Location)
  },
  "endLocation": {
    object (Location)
  },
  "navigationInstruction": {
    object (NavigationInstruction)
  }
}

ステップの手順の言語を指定します

この API は、優先言語を考慮しながら、必要に応じてユーザーが読み取れるスクリプトに書き換えたローカル言語でルート情報を返します。住所コンポーネントはすべて同じ言語で返されます。

  • languageCode パラメータを使用して、 リクエストを サポートされている言語のリストの中から、 言語をご覧ください。サポートされる言語は頻繁に更新されるため、このリストがすべてのサポート言語を網羅しているとは限りません。

  • 指定した言語で名前を使用できない場合は、API で 最も近いものを選択します

  • 指定した言語は、その言語が入力している検索結果にも API が返す選択と、返された順序。「~通り」を表す略語や特定の言語だけで有効な同義語など、ジオコーダによる略語の解釈は言語によって異なります。たとえば、ハンガリー語では utca と tér は「通り」を表す同義語です。

geocodingResults 配列について

リクエスト内のすべての場所(出発地、目的地、中間ウェイポイント)が住所文字列または plus code として指定されている場合、API は対応するプレイス ID を持つ最も関連性の高い場所を見つけようとします。各要素の geocodingResults 配列に placeID フィールドが含まれる (場所 ID として地域を含む)と、場所を指定する type フィールド (street_addresspremiseairport など)。

geocodingResults 配列には、次の 3 つのフィールドが含まれています。

  • origin: 住所の文字列またはプラスコードとして指定された場合、出発地のプレイス ID。それ以外の場合、このフィールドはレスポンスから除外されます。

  • destination: 住所文字列またはプラスコードとして指定された場合、目的地のプレイス ID。それ以外の場合、このフィールドは レスポンスが返されます。

  • intermediates: 中間のプレイス ID を含む配列 住所文字列または Plus Code として指定されたウェイポイント。「 地点 ID または緯度を使用して、中間地点の 経度座標がある場合、レスポンスでは省略されます。こちらの レスポンスの intermediateWaypointRequestIndex プロパティを使用して、 リクエスト内のどの中間地点がプレイス ID の 返されます。

で確認できます。
"geocodingResults": {
    "origin": {
        "geocoderStatus": {},
        "type": [
             enum (Type)
        ],
        "placeId": string
    },
    "destination": {
        "geocoderStatus": {},
        "type": [
            enum (Type)
        ],
        "placeId": string
    },
    "intermediates": [
        {
            "geocoderStatus": {},
            "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        },
        {
           "geocoderStatus": {},
           "intermediateWaypointRequestIndex": integer,
            "type": [
                enum (Type)
            ],
            "placeId": string
        }
    ]
}

ローカライズされたレスポンス値について

ローカライズされたレスポンス値は追加のレスポンス フィールドです。 返されるパラメータ値のローカライズされたテキスト。ルートの所要時間、距離、単位系(メートル法またはヤードポンド法)にはローカライズされたテキストが使用されます。リクエスト ローカライズされた値を指定できます。言語と地域を指定するか、 API から推測された値を使用することもできます。詳しくは、 LocalizedValues

たとえば、ドイツ語(de)とインペリアル語の言語コードを指定すると、 単位に対して、distanceMeters の値は 49889.7 になります。 ローカライズされたテキストも用意されており ドイツ語や 「31 Meile」を使用します

ローカライズされた値の例を次に示します。

{ "localized_values":
  {
    "distance": { "text": "31,0 Meile/n" },
    "duration": { "text": 38 Minuten}.
    "static_duration": { "text": 36 Minuten}.
  }
}

言語または単位系を指定しない場合、API は言語を推測します。 次のように指定します。

  • ComputeRoutes メソッドは、出発地のウェイポイントから位置と距離の単位を推測します。米国でのルーティングリクエストの場合 API は en-US 言語と IMPERIAL 単位を推定します。
  • ComputeRouteMatrix メソッドのデフォルトは「en-US」言語 指標があります。