高度リクエスト
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 の標準と同様に、パラメータはアンパサンド(&
)文字を使用して区切ります。各パラメータと有効な値のリストを次に示します。
すべてのリクエスト
key
- (必須)申請の API キー。このキーでアプリケーションを識別し、割り当てを管理します。 キーの取得方法を確認する。
位置リクエスト
locations
(必須)は、高度データを返す地球上の地点を定義します。このパラメータは、1 つの地点をコンマで区切った {latitude,longitude} のペア(例:「40.714728,-73.998672」)か、配列またはエンコードしたポリラインで渡される複数の緯度と経度のペアのいずれかを取ります。上限は 512 ポイントです 指定しています詳しくは 後述のロケーションの指定をご覧ください。
サンプリングされたパスリクエスト
path
(必須)は、高度データを返す地球上のパスを定義します。このパラメータでは、1 つ以上の 地表に沿ったパスを定義する、より順序付けされた {latitude,longitude} ペア あります。このパラメータは、samples
と組み合わせて使用する必要があります。 パラメータを使用します。このパラメータには 512 ポイントの上限があります。詳細については、後述のパスの指定をご覧ください。samples
(必須)は、サンプル数を指定します。 高度データを返すパス上の点を返します。samples
パラメータは、指定されたpath
を、パス上に等間隔で並ぶ順序付きの点のセットに分割します。
ロケーションの指定
位置のリクエストは、locations
パラメータを使用して指定します。このパラメータは、緯度と経度の値として渡された特定の位置の標高リクエストを指定します。
locations
パラメータは、
引数:
- 単一の座標:
locations=40.714728,-73.998672
- パイプ(「
|
」)で区切られた座標の配列 文字:locations=40.714728,-73.998672|-34.397,150.644
-
エンコード済み
ポリライン アルゴリズム:
locations=enc:gfo}EtohhU
緯度と経度の座標の文字列は、コンマ区切りのテキスト文字列内の数字で定義されます。たとえば、「40.714728,-73.998672」は有効な locations
値です。緯度と経度
経度の値は有効な場所に対応している必要があります
表示されます緯度は、次の範囲の値を取ることができます。
-90
と 90
ですが、経度値には
-180
~180
の任意の値。「
緯度または経度の値が無効である場合、リクエストは拒否されます
不承認となります。
URL の作成が適切に行われている場合は、配列やエンコードされたポリライン内で座標を最大 512 個渡しても構いません。複数の座標を渡すと、返されるデータの精度が
1 つの座標のデータをリクエストする場合よりも解像度が低くなる可能性があります。
「locations」または「path」パラメータで 512 個を超えるポイントまたは座標を指定すると、INVALID_REQUEST
レスポンスが返されます。
パスの指定
ルートのサンプリングのリクエストは path
パラメータと samples
パラメータを使用して指定されます。これらのパラメータは指定された間隔でルート上の標高データを取得するリクエストを指定します。locations
パラメータを使用する位置リクエストと同様に、path
パラメータは緯度と経度の値のセットを指定します。ただし 位置リクエストとは異なり
path
は頂点の順序付きセットを指定します。ルート上のリクエストは頂点の標高データのみが返されるのではなく、指定された samples
の数に基づいてルートの端から端まで(始点と終点を含めて)サンプリングされます。
path
パラメータには次のいずれかを指定できます。
引数:
- 2 つ以上のカンマ区切り座標のテキスト文字列の配列
パイプ(「
|
」)で区切って指定します 文字:path=40.714728,-73.998672|-34.397,150.644
-
エンコード済み
ポリライン アルゴリズム:
path=enc:gfo}EtohhUxD@bAxJmGF
緯度と経度の座標の文字列は、コンマ区切りのテキスト文字列内の数字で定義されます。たとえば、「40.714728,-73.998672|-34.397, 150.644」は有効な path
値です。緯度と経度の値は地表の有効な地点に対応する必要があります。緯度は、次の範囲の値を取ることができます。
-90
と 90
ですが、経度値には
-180
~180
の任意の値。緯度または経度に無効な値を指定した場合は、不適切なリクエストとして拒否されます。
配列またはエンコード形式で最大 512 個の座標を渡すことができます
有効な URL を作成します。ただし複数の座標を渡すと、1 つの座標に対するデータをリクエストしたときよりも、返されるデータの精度が落ち、低解像度になることがあるので注意してください。ポイントまたは座標が 512 を超える
'locations'または「path」INVALID_REQUEST
レスポンスを返します。
高度リクエストのレスポンス
高度サービスは、有効なリクエストごとに高度を返します。 リクエスト URL 内で示された形式で指定します。
ElevationResponse
Field | Required | Type | Description |
---|---|---|---|
| required | Array<ElevationResult> | See ElevationResult for more information. |
| required | ElevationStatus | See ElevationStatus for more information. |
| optional | string |
When the service returns a status code other than |
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
Field | Required | Type | Description |
---|---|---|---|
| required | number | The elevation of the location in meters. |
| required | LatLngLiteral | 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. |
| optional | number | 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.
Field | Required | Type | Description |
---|---|---|---|
| required | number | Latitude in decimal degrees |
| required | number | 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>