以上で完了です。

開発を始めるには、デベロッパー ドキュメント をご覧下さい。

Google Maps Roads API をアクティベートする

まず初めに Google Developers Console で次の作業を行います。

  1. プロジェクトを作成または選択する
  2. Google Maps Roads API をアクティベートする
  3. 適切なキーを作成する
続ける

最も近い道路

Google Maps Roads API は最大で 100 個の独立した座標を取り、各地点の最も近い道路上の区間を返します。 渡す地点は、連続したパス上の地点である必要はありません。

連続した GPS 地点を扱う場合は、Snap to Roads を使用します。

リクエスト

最も近い道路へのスナップのリクエストは HTTPS で送信する必要があり、その形式は次のとおりです。

https://roads.googleapis.com/v1/nearestRoads?parameters&key=YOUR_API_KEY

パラメータの使用方法

必須パラメータ

  • points - 緯度と経度のペアのリスト。 緯度と経度の値は、コンマで区切ります。 座標はパイプ文字「|」で区切ります。 例: points=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796
  • key - アプリケーションの API キー。 アプリケーションは、Google Maps Roads API にリクエストを送信するたびに API キーをリクエストに含め、送信元を明らかにする必要があります。

詳細については、キーの取得をご覧ください。

レスポンス

Google Maps Roads API は、有効なリクエストごとにリクエスト URL 内で指定した形式でレスポンスを返します。 Snap to Roads のレスポンスには、次の要素が存在する可能性があります。

snappedPoints - スナップされた地点の配列です。 各地点は次のフィールドから構成されます。

* `location` - `latitude` と `longitude` の値を含みます。
* `originalIndex` - 元のリクエスト内の対応する値を示す整数です。

リクエストの各地点は、次のようにレスポンスで最大 2 つの区間にマッピングされます。

    * 付近に道路がない場合、区間は返されません。
    * 最も近い道路が一方通行の場合、1 つの区間が返されます。
    * 最も近い道路が双方向通行の場合、2 つの区間が返されます。
* `placeId` - プレイスの一意の識別子です。 Google Maps Roads API が返すプレイス ID は、すべて道路上の区間に対応するものです。

  [Place ID] は、[Google Places API][places] や [Google Maps JavaScript API][javascript-places] などの Google の他の API で使用できます。

たとえば、Google Maps Roads API から返されるスナップされた地点の道路の名前を取得する必要がある場合は、placeIdGoogle Places APIGoogle Maps Geocoding API に渡すことができます。

Google Maps Roads API では、placeId を速度制限リクエストに渡すことによって、その道路上の区間における速度制限を求めることができます。

リクエストの例

次のリクエストは、指定した座標のリストに基づいて、道路上の区間のセットを返します。

リクエスト

https://roads.googleapis.com/v1/nearestRoads?points=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796&key=YOUR_API_KEY

レスポンス

{
  "snappedPoints": [
    {
      "location": {
        "latitude": 60.170877918672588,
        "longitude": 24.942699821922421
      },
      "originalIndex": 0,
      "placeId": "ChIJNX9BrM0LkkYRIM-cQg265e8"
    },
    {
      "location": {
        "latitude": 60.170876898776406,
        "longitude": 24.942699912064771
      },
      "originalIndex": 1,
      "placeId": "ChIJNX9BrM0LkkYRIM-cQg265e8"
    },
    {
      "location": {
        "latitude": 60.170874902634374,
        "longitude": 24.942700088491474
      },
      "originalIndex": 2,
      "placeId": "ChIJNX9BrM0LkkYRIM-cQg265e8"
    }
  ]
}

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。