computeRoutes メソッドは、レスポンスの一部として、ポリラインで表されるルートを返します。次の 2 種類のポリラインをリクエストできます。
- 基本的なポリライン(デフォルト): ルートを表しますが、ポリラインに交通情報が埋め込まれていません。基本的なポリラインを返すリクエストは、Routes Basic の料金で課金されます。Routes API の課金について
- 交通状況を考慮したポリライン。ルートに沿った交通状況に関する情報が含まれます。交通状況は、ポリラインの特定の区間に適用される速度カテゴリ(
NORMAL、SLOW、TRAFFIC_JAM)で表されます。交通状況を考慮したポリラインのリクエストは、Routes Preferred の料金で課金されます。Routes API の課金について - マルチモーダル ポリライン。交通機関の詳細と交通情報が含まれます。マルチモーダル ポリラインのリクエストは、Routes Preferred の料金で課金されます。Routes API の課金について
基本ポリライン(デフォルト)
ポリラインは Polyline オブジェクトで表され、パスは LatLngAltitude 座標の配列です。基本的なポリラインを返すには、fields プロパティを path に設定して computeRoutes メソッドを呼び出し、ルート インスタンスで createPolylines メソッドを呼び出して Polyline オブジェクトを取得します。
次の例は、基本的なポリラインをリクエストする方法を示しています。
// Define a basic routes request. const requestWithBasicPolyline = { origin: '155 Steuart St, San Francisco, CA 94105', destination: '450 Powell St, San Francisco, CA 94102', travelMode: 'WALKING', fields: ['path'], // Request path field to get a polyline. };
交通状況を考慮したポリライン
交通状況を考慮したポリラインをリクエストするには、リクエストに次のプロパティを追加します。
travelModeプロパティをDRIVINGに設定します。routingPreferenceプロパティをTRAFFIC_AWAREに設定します。extraComputationsプロパティをTRAFFIC_ON_POLYLINEに設定します。path、speedPaths、routeLabelsの各フィールドを指定します。
次の例は、交通状況を考慮したポリラインをリクエストする方法を示しています。
// Define a traffic aware routes request. const requestWithTraffic = { origin: '200 King St San Francisco, CA 94107', destination: 'Pier 41, San Francisco, CA 94133', travelMode: 'DRIVING', routingPreference: 'TRAFFIC_AWARE', extraComputations: ['TRAFFIC_ON_POLYLINE'], fields: ['speedPaths'], };
地図上にポリラインを表示する
地図上にポリラインを表示するには、ルート オブジェクトで createPolylines を呼び出し、setMap メソッドを使用してポリラインの地図を地図オブジェクトに設定します。地図オブジェクトは、地図上にポリラインを表示するために使用されます。
地図上にポリラインを表示する方法の例を次に示します。
// Call createPolylines to create polylines for the first route. mapPolylines = routes[0].createPolylines(); // Add polylines to the map. mapPolylines.forEach((polyline) => polyline.setMap(map));