Spatial - Get Closest Point
ベース ポイントと特定のターゲット ポイントセットの間の最も近いポイントを取得するには、 を使用します。
API はGet Closest Point
、ユーザーがアップロードしたデータ セットudid
内のベース ポイントと特定のポイント セットの間の最も近いポイントである HTTP GET
要求です。 ターゲット ポイントのセットは、 データ レジストリ サービスを使用してアップロードされ、一意の udid によって参照される GeoJSON ファイルによって提供されます。 GeoJSON ファイルに含まれるのは、Point ジオメトリのコレクションのみです。 MultiPoint またはその他のジオメトリが指定されている場合、無視されます。 許容されるポイントの最大数は 100,000 です。 このアルゴリズムでは、ルーティングやトラフィックは考慮されません。 返される情報には、最も近いポイントの緯度、経度、最も近いポイントからの距離 (メートル単位) が含まれます。
この API をテストするには、データ レジストリ サービスを使用して Post Closest Point API の例 (要求本文) からサンプル データをアップロードし、以下のサンプル要求の を{udid}
データ レジストリの作成時に使用される udid
に置き換えます。 詳細については、「データ レジストリの作成方法」を参照してください。
GET https://{geography}.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&udid={udid}&lat={lat}&lon={lon}
GET https://{geography}.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&udid={udid}&lat={lat}&lon={lon}&numberOfClosestPoints={numberOfClosestPoints}
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
format
|
path | True |
応答の目的の形式。 サポートされているのは |
|
geography
|
path | True |
string |
Azure Maps アカウントの場所。 有効な値は、us (米国東部、米国中西部、米国西部 2) と eu (北ヨーロッパ、西ヨーロッパ) です。 このパラメーターは、 が要求で指定されている場合 |
api-version
|
query | True |
string |
Azure Maps API のバージョン番号。 |
lat
|
query | True |
number |
渡される場所の緯度。 例: 48.36。 |
lon
|
query | True |
number |
渡される場所の経度。 例: -124.63。 |
udid
|
query | True |
string |
有効な GeoJSON FeatureCollection オブジェクトをアップロードするために データ レジストリ を作成するときに使用される一意の ID。 詳細については、 RFC 7946 を参照してください。 フィーチャのすべてのプロパティに を含める |
number
|
query |
integer |
応答から予想される最も近いポイントの数。 既定値: 1、最小: 1、最大: 50 |
要求ヘッダー
名前 | 必須 | 型 | 説明 |
---|---|---|---|
x-ms-client-id |
string |
Microsoft Entra ID セキュリティ モデルと組み合わせて使用するアカウントを指定します。 これは Azure Maps アカウントの一意の ID を表し、Azure Maps 管理プレーン アカウント API から取得できます。 Azure Maps で Microsoft Entra ID セキュリティを使用するには、ガイダンスについては、次 の記事を 参照してください。 |
応答
名前 | 型 | 説明 |
---|---|---|
200 OK |
OK |
|
Other Status Codes |
予期しないエラーが発生しました。 |
セキュリティ
AADToken
これらは Microsoft Entra OAuth 2.0 フローです。 Azure ロールベースのアクセス制御と組み合わせて使用すると、Azure Maps REST API へのアクセスを制御できます。 Azure ロールベースのアクセス制御は、1 つ以上の Azure Maps リソース アカウントまたはサブリソースへのアクセスを指定するために使用されます。 ユーザー、グループ、またはサービス プリンシパルには、組み込みのロールまたは Azure Maps REST API への 1 つ以上のアクセス許可で構成されたカスタム ロールを使用してアクセス権を付与できます。
シナリオを実装するには、 認証の概念を表示することをお勧めします。 要約すると、このセキュリティ定義は、特定の API とスコープに対するアクセス制御が可能なオブジェクトを使用してアプリケーションをモデル化するためのソリューションを提供します。
メモ
- このセキュリティ定義 では 、 ヘッダーを使用して、
x-ms-client-id
アプリケーションがアクセスを要求している Azure Maps リソースを示す必要があります。 これは、 Maps 管理 API から取得できます。
は Authorization URL
、Azure パブリック クラウド インスタンスに固有です。 ソブリン クラウドには、一意の承認 URL と Microsoft Entra ID 構成があります。
* Azure ロールベースのアクセス制御は、Azure portal、PowerShell、CLI、Azure SDK、または REST API を使用して Azure 管理プレーン から構成されます。
* Azure Maps Web SDK を使用すると、複数のユース ケースでアプリケーションを構成ベースで設定できます。
- Microsoft ID プラットフォームの詳細については、「 Microsoft ID プラットフォームの概要」を参照してください。
型:
oauth2
フロー:
implicit
Authorization URL (承認 URL):
https://login.microsoftonline.com/common/oauth2/authorize
スコープ
名前 | 説明 |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
これは、Azure portal、PowerShell、CLI、Azure SDK、または REST API を使用して Azure 管理プレーンを使用して Azure Maps リソース を作成するときにプロビジョニングされる共有キーです。
このキーを使用すると、すべてのアプリケーションがすべての REST API にアクセスすることが許可されます。 つまり、これらは現在、発行先のアカウントのマスター キーとして扱うことができます。
公開されているアプリケーションの場合、このキーを安全に格納できる Azure Maps REST API のサーバー間アクセスを使用することをお勧めします。
型:
apiKey
/:
header
SAS Token
これは、Azure portal、PowerShell、CLI、Azure SDK、または REST API を介して Azure 管理プレーンを介して、Azure Maps リソース の List SAS 操作から作成される共有アクセス署名トークンです。
このトークンを使用すると、すべてのアプリケーションが Azure ロールベースのアクセス制御を使用してアクセスし、特定のトークンに使用される有効期限、レート、およびリージョンに対するきめ細かい制御が許可されます。 言い換えると、SAS トークンを使用して、アプリケーションが共有キーよりもセキュリティで保護された方法でアクセスを制御できます。
公開されているアプリケーションの場合、 Map アカウント リソース で許可される配信元の特定のリストを構成して、レンダリングの不正使用を制限し、SAS トークンを定期的に更新することをお勧めします。
型:
apiKey
/:
header
例
GetClosestPoint
要求のサンプル
GET https://us.atlas.microsoft.com/spatial/closestPoint/json?api-version=2022-08-01&udid=f6495f62-94f8-0ec2-c252-45626f82fcb2&lat=47.622942&lon=-122.316456
応答のサンプル
{
"summary": {
"sourcePoint": {
"lat": 47.622942,
"lon": -122.316456
},
"udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2",
"information": "10 points processed in user data"
},
"result": [
{
"distanceInMeters": 1587492.66,
"position": {
"lat": 40.51615340677395,
"lon": -105.02860293715861
},
"geometryId": "1001"
}
]
}
定義
名前 | 説明 |
---|---|
Closest |
最も近いポイントの結果エントリ オブジェクト |
Closest |
このオブジェクトは、成功した空間最近接ポイント呼び出しから返されます |
Closest |
最も近いポイントの概要オブジェクト |
Error |
リソース管理エラーの追加情報。 |
Error |
エラーの詳細。 |
Error |
エラー応答 |
Json |
応答の目的の形式。 サポートされているのは |
Lat |
短い名前 'lat' & 'lon' を使用して緯度と経度として表される場所。 |
ClosestPoint
最も近いポイントの結果エントリ オブジェクト
名前 | 型 | 説明 |
---|---|---|
distanceInMeters |
number |
ソース ポイントから最も近いポイントまでの距離 (メートル単位) |
geometryId |
string |
一意の ID はジオメトリを識別します |
position |
短い名前 'lat' & 'lon' を使用して緯度と経度として表される場所。 |
ClosestPointResponse
このオブジェクトは、成功した空間最近接ポイント呼び出しから返されます
名前 | 型 | 説明 |
---|---|---|
result |
最も近いポイントの結果配列 |
|
summary |
最も近いポイントの概要オブジェクト |
ClosestPointSummary
最も近いポイントの概要オブジェクト
名前 | 型 | 説明 |
---|---|---|
information |
string |
情報の処理 |
sourcePoint |
短い名前 'lat' & 'lon' を使用して緯度と経度として表される場所。 |
|
udid |
string |
アップロードされたコンテンツの一意のデータ ID (udid) |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
名前 | 型 | 説明 |
---|---|---|
info |
object |
追加情報。 |
type |
string |
追加情報の種類。 |
ErrorDetail
エラーの詳細。
名前 | 型 | 説明 |
---|---|---|
additionalInfo |
エラーの追加情報。 |
|
code |
string |
エラー コード。 |
details |
エラーの詳細です。 |
|
message |
string |
エラー メッセージ。 |
target |
string |
エラーのターゲット。 |
ErrorResponse
エラー応答
名前 | 型 | 説明 |
---|---|---|
error |
error オブジェクト。 |
JsonFormat
応答の目的の形式。 サポートされているのは json
形式のみです。
名前 | 型 | 説明 |
---|---|---|
json |
string |
LatLongPairAbbreviated
短い名前 'lat' & 'lon' を使用して緯度と経度として表される場所。
名前 | 型 | 説明 |
---|---|---|
lat |
number |
Latitude プロパティ |
lon |
number |
Longitude プロパティ |