高度リクエストと高度レスポンス

高度リクエスト

Elevation API リクエストは、URL 文字列として構成されます。API は、地球上の場所の高度データを返します。位置情報を指定 次の 2 つの方法のいずれかで行うことができます

  • 1 つ以上の locations のセットとして。
  • path に沿った一連の連結点。

どちらの方法でも、緯度と経度の座標を使用して 位置またはパス頂点を指定します。このドキュメントでは、Terraform が Elevation API の URL と使用可能なパラメータ

Elevation API が単一地点のクエリに対してデータを返す 実現されています。複数のロケーションが関係するバッチクエリ 特に地域が複数の地域に分散している場合、データの精度が低下することがあります データがある程度平滑化されるため、分割されます。

Elevation API リクエストの形式は次のとおりです。

https://maps.googleapis.com/maps/api/elevation/outputFormat?parameters

ここで、outputFormat には次のいずれかの値を指定できます。

  • json(推奨): 出力が JavaScript Object Notation(JSON)または
  • xml は、出力が XML で、 <ElevationResponse> ノード。

: URL は 適切にエンコードされている すべてのウェブサービスで 16,384 文字に制限されています。 URL を作成する際は、この制限に注意してください。ブラウザによって サーバーの URL 文字数制限も異なる場合があります。

API キーを使用するリクエストには HTTPS が必要です。

リクエスト パラメータ

Elevation API へのリクエストではさまざまなパラメータが使用される 個別の場所に対するリクエストか 順序付けされたパスです。不連続な場所の場合、高度をリクエストすると返されます。 リクエストで渡された特定の場所に関するデータパスの場合は 代わりに、高度リクエストは指定されたパスに沿ってサンプリングされます。

すべての URL の標準と同様に、パラメータは区切られます。 (アンパサンド(&amp;)文字を使用して計算)パラメータのリスト 指定可能な値を以下に示します。

すべてのリクエスト

  • key - (必須)申請の API キー。このキーでアプリケーションを識別し、割り当てを管理します。 キーの取得方法を確認する。

位置リクエスト

  • locations(必須)は、サービスのロケーションを定義します。 高度データを返す地球。このパラメータは カンマで区切った {latitude,longitude} のペアで指定 (例: 「40.714728,-73.998672」)または複数の緯度と経度のペア 配列またはエンコードされたポリラインとして渡されます。上限は 512 ポイントです 指定しています詳しくは 後述のロケーションの指定をご覧ください。

サンプリングされたパスリクエスト

  • path(必須)は、地球上のパスを定義します。 高度データを返します。このパラメータでは、1 つ以上の 地表に沿ったパスを定義する、より順序付けされた {latitude,longitude} ペア あります。このパラメータは、samples と組み合わせて使用する必要があります。 パラメータを使用します。上限は 512 ポイントです パラメータを指定します。詳しくは 後述のパスの指定をご覧ください。
  • samples(必須)は、サンプル数を指定します。 高度データを返すパス上の点を返します。「 samples パラメータは、指定された path を除算します。 点群へと分割されます。

ロケーションの指定

位置リクエストは、 高度リクエストを示す locations パラメータ 引数として渡された 緯度と経度の値。

locations パラメータは、 引数:

緯度と経度の座標の文字列は、数値と カンマで区切られたテキスト文字列の中にあります。例: 「40.714728,-73.998672」 有効な locations 値です。緯度と経度 経度の値は有効な場所に対応している必要があります 表示されます緯度は、次の範囲の値を取ることができます。 -9090 ですが、経度値には -180180 の任意の値。「 緯度または経度の値が無効である場合、リクエストは拒否されます 不承認となります。

配列またはエンコード形式で最大 512 個の座標を渡すことができます 有効な URL を作成します。 複数の座標を渡すと、返されるデータの精度が 1 つの座標のデータをリクエストする場合よりも解像度が低くなる可能性があります。 「locations」内のポイントまたは座標が 512 個を超えているまたは「path」各パラメータは INVALID_REQUEST レスポンス。

パスの指定

サンプリングされたパスリクエストは、path を使用して示されます。 および samples パラメータは、高度データのリクエストを示します。 一定の間隔で走行します。 locations パラメータ。path パラメータでは、 緯度と経度の値のセットです。ただし 位置リクエストとは異なり path は頂点の順序付きセットを指定します。リピーター 頂点の高度データのみが使用され、パスのリクエストは パスの長さ: samples の数に基づく 指定(エンドポイントを含む)されます。

path パラメータには次のいずれかを指定できます。 引数:

緯度と経度の座標の文字列は、数値と カンマで区切られたテキスト文字列の中にあります。たとえば "40.714728,-73.998672|-34.397, 150.644"は、 path の値。緯度と経度の値が対応している必要があります 地上の有効な場所に移動できます。緯度は、次の範囲の値を取ることができます。 -9090 ですが、経度値には -180180 の任意の値。「 緯度または経度の値が無効である場合、リクエストは拒否されます 不承認となります。

配列またはエンコード形式で最大 512 個の座標を渡すことができます 有効な URL を作成します。複数の関数を 場合、返されるデータの精度は、 単一の座標のデータをリクエストする場合です。ポイントまたは座標が 512 を超える 'locations'または「path」INVALID_REQUEST レスポンスを返します。

高度リクエストのレスポンス

高度サービスは、有効なリクエストごとに高度を返します。 リクエスト URL 内で示された形式で指定します。

ElevationResponse

FieldRequiredTypeDescription
required Array<ElevationResult> See ElevationResult for more information.
requiredElevationStatus See ElevationStatus for more information.
optionalstring

When the service returns a status code other than OK, there may be an additional error_message field within the response object. This field contains more detailed information about thereasons behind the given status code. This field is not always returned, and its content is subject to change.

ElevationStatus

Status codes returned by service.

  • OK indicating the API request was successful.
  • DATA_NOT_AVAILABLE indicating that there's no available data for the input locations.
  • INVALID_REQUEST indicating the API request was malformed.
  • OVER_DAILY_LIMIT indicating any of the following:
    • The API key is missing or invalid.
    • Billing has not been enabled on your account.
    • A self-imposed usage cap has been exceeded.
    • The provided method of payment is no longer valid (for example, a credit card has expired).
  • OVER_QUERY_LIMIT indicating the requestor has exceeded quota.
  • REQUEST_DENIED indicating the API did not complete the request.
  • UNKNOWN_ERROR indicating an unknown error.

ステータス コードが OK 以外の場合、追加の 高度レスポンス オブジェクト内の error_message フィールド。このフィールドには 特定のステータス コードの詳しい理由を確認できます。

レスポンスには、次の要素を含む results 配列が含まれます。

ElevationResult

FieldRequiredTypeDescription
requirednumber

The elevation of the location in meters.

requiredLatLngLiteral

A location element of the position for which elevation data is being computed. Note that for path requests, the set of location elements will contain the sampled points along the path.

See LatLngLiteral for more information.

optionalnumber

The value indicating the maximum distance between data points from which the elevation was interpolated, in meters. This property will be missing if the resolution is not known. Note that elevation data becomes more coarse (larger resolution values) when multiple points are passed. To obtain the most accurate elevation value for a point, it should be queried independently.

location オブジェクトには次の要素があります。

LatLngLiteral

An object describing a specific location with Latitude and Longitude in decimal degrees.

FieldRequiredTypeDescription
requirednumber

Latitude in decimal degrees

requirednumber

Longitude in decimal degrees

位置標高の例

次の例ではデンバーの高度をリクエストしています コロラド州「マイルハイ シティ」を JSON 形式で記述します。

URL

https://maps.googleapis.com/maps/api/elevation/json
  ?locations=39.7391536%2C-104.9847034
  &key=YOUR_API_KEY

cURL

curl -L -X GET 'https://maps.googleapis.com/maps/api/elevation/json?locations=39.7391536%2C-104.9847034&key=YOUR_API_KEY'

JSON

{
  "results":
    [
      {
        "elevation": 1608.637939453125,
        "location": { "lat": 39.7391536, "lng": -104.9847034 },
        "resolution": 4.771975994110107,
      },
    ],
  "status": "OK",
}

XML

<ElevationResponse>
 <status>OK</status>
 <result>
  <location>
   <lat>39.7391536</lat>
   <lng>-104.9847034</lng>
  </location>
  <elevation>1608.6379395</elevation>
  <resolution>4.7719760</resolution>
 </result>
</ElevationResponse>

次の例は複数のレスポンス(例: デンバー、コロラド州、 カリフォルニア州デスバレー)。

このリクエストでは、JSON output フラグを使用しています。

URL

https://maps.googleapis.com/maps/api/elevation/json
  ?locations=39.7391536%2C-104.9847034%7C36.455556%2C-116.866667
  &key=YOUR_API_KEY

cURL

curl -L -X GET 'https://maps.googleapis.com/maps/api/elevation/json?locations=39.7391536%2C-104.9847034%7C36.455556%2C-116.866667&key=YOUR_API_KEY'

このリクエストでは、XML の output フラグを使用しています。

https://maps.googleapis.com/maps/api/elevation/xml?locations=39.7391536,-104.9847034|36.455556,-116.866667&key=YOUR_API_KEY

以下のタブを選択すると、JSON と XML のレスポンスの例が表示されます。

JSON

{
  "results":
    [
      {
        "elevation": 1608.637939453125,
        "location": { "lat": 39.7391536, "lng": -104.9847034 },
        "resolution": 4.771975994110107,
      },
      {
        "elevation": -52.79492568969727,
        "location": { "lat": 36.455556, "lng": -116.866667 },
        "resolution": 19.08790397644043,
      },
    ],
  "status": "OK",
}

XML

<ElevationResponse>
 <status>OK</status>
 <result>
  <location>
   <lat>39.7391536</lat>
   <lng>-104.9847034</lng>
  </location>
  <elevation>1608.6379395</elevation>
  <resolution>4.7719760</resolution>
 </result>
 <result>
  <location>
   <lat>36.4555560</lat>
   <lng>-116.8666670</lng>
  </location>
  <elevation>-52.7949257</elevation>
  <resolution>19.0879040</resolution>
 </result>
</ElevationResponse>

次の例では、直線上の高度データをリクエストしています カリフォルニア州のホイットニー山からカリフォルニア州バッドウォーターまでのpath、 米国本土で最も低いポイントです。3 つの入力が必要です。 samples。これにより、2 つのエンドポイントと あります。

URL

https://maps.googleapis.com/maps/api/elevation/json
  ?path=36.578581%2C-118.291994%7C36.23998%2C-116.83171
  &samples=3
  &key=YOUR_API_KEY

cURL

curl -L -X GET 'https://maps.googleapis.com/maps/api/elevation/json?path=36.578581%2C-118.291994%7C36.23998%2C-116.83171&samples=3&key=YOUR_API_KEY'

JSON

{
  "results":
    [
      {
        "elevation": 4411.94189453125,
        "location": { "lat": 36.578581, "lng": -118.291994 },
        "resolution": 19.08790397644043,
      },
      {
        "elevation": 1372.8359375,
        "location": { "lat": 36.41150289067028, "lng": -117.5602607523847 },
        "resolution": 9.543951988220215,
      },
      {
        "elevation": -84.51690673828125,
        "location": { "lat": 36.23998, "lng": -116.83171 },
        "resolution": 9.543951988220215,
      },
    ],
  "status": "OK",
}

XML

<ElevationResponse>
 <status>OK</status>
 <result>
  <location>
   <lat>36.5785810</lat>
   <lng>-118.2919940</lng>
  </location>
  <elevation>4411.9418945</elevation>
  <resolution>19.0879040</resolution>
 </result>
 <result>
  <location>
   <lat>36.4115029</lat>
   <lng>-117.5602608</lng>
  </location>
  <elevation>1372.8359375</elevation>
  <resolution>9.5439520</resolution>
 </result>
 <result>
  <location>
   <lat>36.2399800</lat>
   <lng>-116.8317100</lng>
  </location>
  <elevation>-84.5169067</elevation>
  <resolution>9.5439520</resolution>
 </result>
</ElevationResponse>