Roads API は、特定の道路に掲示されている制限速度を返します。 セグメントです制限速度が可変の道路セグメントの場合、 そのセグメントの速度制限が返されます
Roads API から返される制限速度データの精度 保証できません。提供される速度制限データはリアルタイムのものではなく、 推定される、不正確、不完全、または古い対応範囲の詳細を見る 制限速度データを利用できる地域を確認してください。
リクエスト
制限速度のリクエストは HTTPS で送信する必要があります。リクエストの形式は次のとおりです。
https://roads.googleapis.com/v1/speedLimits?parameters&key=YOUR_API_KEY
パラメータの使用
必須パラメータ
path
パラメータまたはplaceId
パラメータ。path
- 最大 100 個の緯度と経度のペアのリスト。 あります。緯度と経度の値はカンマで区切る必要があります。 緯度と経度のペアはパイプ文字「|」で区切る必要があります。path
パラメータを指定すると、API はまず 車両が走行する可能性が最も高い道路ですsnapToRoads
リクエストなど)を使用して、その URL に対する速度制限を 選択しますAPI にパスをスナップしたくない場合は、 以下で説明するように、placeId
パラメータを渡す必要があります。次の例をご覧ください。 3 つの緯度と経度のペアを含むpath
パラメータを示しています。path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796
。placeId
- 1 つ以上の道路セグメントを表すプレイス ID。 各プレイス ID が、異なるタイプではなく道路セグメントを参照していることを確認してください あります。それぞれ最大 100 個のプレイス ID を渡すことができます。 リクエストできます。API では、指定されたプレイス ID では道路のスナップは行われません。 レスポンスには、リクエストの各プレイス ID の速度制限が含まれます。snapToRoads
リクエストまたはnearestRoads
リクエストを送信できます。 関連するプレイス ID を見つけて、それをspeedLimits
リクエスト。次の例は、トレーニング データに基づく 2 つのプレイス ID を持つplaceId
パラメータ:placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU
key
- アプリケーションの API キー。お客様の リクエストを送信するたびに、自身を識別する必要があります。 Roads API。各リクエストに API キーを含めます。 キーの取得方法を確認する。
オプション パラメータ
units
- 制限速度(キロメートルまたはマイル)を返すかどうか できます。KPH
またはMPH
に設定できます。デフォルトはKPH
です。
レスポンス
speedLimits
レスポンスには、次の要素が含まれる場合があります。
speedLimits
- 道路のメタデータの配列。各要素は 次のフィールドがあります。 <ph type="x-smartling-placeholder">- </ph>
placeId
- 場所の一意の識別子。すべてのプレイス ID が返されます Roads API によって、道路セグメントに対応します。speedLimit
- 該当する道路セグメントの制限速度。units
-KPH
またはMPH
を返します。
snappedPoints
- スナップされたポイントの配列。この配列は存在します リクエストにpath
パラメータが含まれている場合のみ表示されます。各ポイントは 次のフィールドがあります。 <ph type="x-smartling-placeholder">- </ph>
location
-latitude
とlongitude
の値が含まれます。originalIndex
- 対応する値を示す整数 あります。リクエストの各値は、各要素に対応する スナップされた値を返します。これらの値は0
からインデックス付けされるため、originalIndex
が4
のポイントは、5 番目のスナップされた値になります。path
パラメータに渡される緯度/経度。placeId
- 場所の一意の識別子。すべてのプレイス ID が返されます Roads API によって、道路セグメントに対応します。placeId
を速度制限リクエストで渡すことで、 その道路セグメントの速度制限
warning_message
- ユーザーに表示される警告を含む文字列。
パスを使用したリクエストの例
このリクエストは、に最も近い道路セグメントごとに速度制限を取得します。 ヴァスコ ダ ガマを横断するパスにある指定された緯度と経度のペア ポルトガルのリスボンにある橋です。
リクエスト
https://roads.googleapis.com/v1/speedLimits?path=38.75807927603043,-9.03741754643809|38.6896537,-9.1770515|41.1399289,-8.6094075&key=YOUR_API_KEY
レスポンス
{ speedLimits: [ { placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE", speedLimit: 105, units: "KPH" }, { placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU", speedLimit: 70, units: "KPH" }, { placeId: "ChIJJ4vQRudkJA0RpednU70A-5M", speedLimit: 55, units: "KPH" } ], snappedPoints: [ { location: { latitude: 38.75807927603043, longitude: -9.037417546438084 }, originalIndex: 0, placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE" }, { location: { latitude: 38.689653701836896, longitude: -9.177051486847693 }, originalIndex: 1, placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU" }, { location: { latitude: 41.13993011767777, longitude: -8.609400794783655 }, originalIndex: 2, placeId: "ChIJJ4vQRudkJA0RpednU70A-5M" } ], warningMessage: "Input path is too sparse. You should provide a path where consecutive points are closer to each other. Refer to the 'path' parameter in Google Roads API documentation." }
上記のレスポンスには、ポイントのスパース性に関する警告メッセージがあります。もし
任意の地点で最も近い道路セグメントの速度制限をリクエストしている
取得したプレイス ID で speedLimits
を呼び出す必要があります。
nearestRoads
エンドポイントを使用します。
プレイス ID を使用したリクエストの例
緯度と経度のペアを使用する代わりに、各地の ID のプレイス ID を
あります以下を使用して道路セグメントのプレイス ID を取得することをおすすめします。
snapToRoads
リクエストまたは nearestRoads
リクエスト。プレイス ID を渡すと、API は
は、各プレイス ID で表される道路セグメントの速度制限を返します。「
API は、提供されたプレイス ID に道路スナップを適用しません。
次の例では、一部の道路セグメントについて制限速度をリクエストしています ポルトガルのリスボンにあるヴァスコ ダ ガマ橋を渡ります。
リクエスト
https://roads.googleapis.com/v1/speedLimits?placeId=ChIJX12duJAwGQ0Ra0d4Oi4jOGE&placeId=ChIJLQcticc0GQ0RoiNZJVa5GxU&placeId=ChIJJ4vQRudkJA0RpednU70A-5M&key=YOUR_API_KEY
レスポンス
{ "speedLimits": [ { placeId: "ChIJX12duJAwGQ0Ra0d4Oi4jOGE", speedLimit: 105, units: "KPH" }, { placeId: "ChIJLQcticc0GQ0RoiNZJVa5GxU", speedLimit: 70, units: "KPH" }, { placeId: "ChIJJ4vQRudkJA0RpednU70A-5M", speedLimit: 55, units: "KPH" } ] }
使用に関する推奨事項
Speed Limit サービスの呼び出し数を最小限に抑えるために、 アセットの場所を 5 ~ 15 分間隔でサンプリングする(正確な アセットの移動速度によって異なります)。アセットが 静止しているので、単一の場所サンプルで十分です(事前に 。
全体的なレイテンシを最小限に抑えるため、モバイル アセットの場所を受け取るたびに API を呼び出すのではなく、ある程度データが蓄積されたら制限速度サービスを呼び出すことをおすすめします。
一部またはすべての速度制限がないのはなぜですか?
speedLimits
が見つからない最も一般的な原因は、速度制限のリクエストです
道路セグメント以外の場所を表します
上の例では、ヴァスコ ダ ガマ橋を使って概念を説明します。
この橋は、リオテホ川に架かる E90 道路を支えています。橋
のプレイス ID は「ChIJUzt97ZEwGQ0RM1JzQfqoDtU」です。最初の道路セグメント
は、E90 道路の一部であり、プレイス ID が
ChIJX12duJAwGQ0Ra0d4Oi4jOGE。このリクエスト例では、
プレイス ID をブリッジのプレイス ID に置き換えると、レスポンスには
speedLimits
配列に 2 つの制限速度があります。これは、橋のプレイス ID が
個々の道路セグメントを指すものではありませんさらに、
プレイス ID が道路セグメント用である場合、レスポンスには何も含まれません。
制限します。
プレイス ID を使用して制限速度リクエストを行う場合は、
道路セグメントを指し、異なる種類の場所を指すものではありません。場所 ID:
個々の道路セグメントは snapToRoads
を使用して取得することをおすすめします
または nearestRoads
リクエストで、どちらのリクエストも複数のプレイス ID を返すことができます。
できます。