Spatial - Get Great Circle Distance

使用 來判斷球體表面兩點之間的最短距離。

Get Great Circle Distance API 是 HTTP GET 要求,會傳回圓球表面兩點之間的大圓或最短距離,以沿著球體表面測量。 這與計算球體內部的直線不同。 這個方法可藉由計算機場之間的最短距離,來估計飛機的旅行距離很有説明。

GET https://{geography}.atlas.microsoft.com/spatial/greatCircleDistance/json?api-version=2022-08-01&query={query}

URI 參數

名稱 位於 必要 類型 Description
format
path True

JsonFormat

所需的回應格式。 僅支援 json 格式。

geography
path True

string

Azure 地圖服務 帳戶的位置。 有效值為 (美國東部、美國中西部、美國西部 2) 和歐盟 (北歐、西歐) 。 在要求中提供 時 udid ,需要此參數。 例如,如果 Azure 地圖服務 帳戶位於美國東部,則只會接受我們地理位置的要求。

api-version
query True

string

Azure 地圖服務 API 的版本號碼。

query
query True

string

計算距離的座標,以冒號分隔。 需要兩個座標。 第一個是來源點座標,最後一個是目標點座標。 例如,47.622942,122.316456:57.673988,127.121513

要求標頭

名稱 必要 類型 Description
x-ms-client-id

string

指定哪一個帳戶用於搭配 Microsoft Entra ID 安全性模型使用。 它代表 Azure 地圖服務 帳戶的唯一標識符,可以從 Azure 地圖服務 管理平面帳戶 API 擷取。 若要在 Azure 地圖服務 中使用 Microsoft Entra ID 安全性,請參閱下列文章以取得指引。

回應

名稱 類型 Description
200 OK

GreatCircleDistanceResult

確定

Other Status Codes

ErrorResponse

發生意外錯誤。

安全性

AADToken

這些是 Microsoft Entra OAuth 2.0 流程。 與 Azure 角色型存取控制配對時,可用來控制對 REST API 的存取 Azure 地圖服務。 Azure 角色型訪問控制可用來指定一或多個 Azure 地圖服務 資源帳戶或子資源的存取權。 任何使用者、群組或服務主體都可以透過內建角色或由一或多個許可權組成的自定義角色來授與存取權,以 Azure 地圖服務 REST API。

若要實作案例,建議您檢視 驗證概念。 總而言之,此安全性定義提供一個解決方案,可透過能夠針對特定 API 和範圍進行存取控制的物件,將應用程式模型化 () 。

備註

  • 此安全性定義需要使用x-ms-client-id 標頭來指出應用程式要求存取權 Azure 地圖服務 資源。 這可以從 地圖服務管理 API 取得。

Authorization URL專屬於 Azure 公用雲端實例。 主權雲端具有唯一的授權 URL 和 Microsoft Entra ID 設定。 * 透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 管理平面設定 Azure 角色型存取控制。 * Azure 地圖服務 Web SDK 的使用方式允許針對多個使用案例設定應用程式的組態型設定。

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

名稱 Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

這是透過 Azure 管理平面透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API 建立 Azure 地圖服務 資源時所佈建的共用密鑰。

使用此金鑰時,任何應用程式都會獲得存取所有 REST API 的授權。 換句話說,這些目前可視為發行帳戶的主要密鑰。

對於公開的應用程式,我們建議使用可安全地儲存此密鑰之 Azure 地圖服務 REST API 的伺服器對伺服器存取。

Type: apiKey
In: header

SAS Token

這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 地圖服務 資源上的列出 SAS 作業建立共用存取簽章令牌。

使用此令牌時,任何應用程式都有權使用 Azure 角色型訪問控制進行存取,並精細控制到期、速率和區域 (特定令牌的使用) 。 換句話說,SAS 令牌可用來允許應用程式以比共用密鑰更安全的方式控制存取。

對於公開的應用程式,我們建議在 地圖帳戶資源 上設定允許的來源特定清單,以限制轉譯濫用,並定期更新 SAS 令牌。

Type: apiKey
In: header

範例

GetGreatCircleDistance

Sample Request

GET https://us.atlas.microsoft.com/spatial/greatCircleDistance/json?api-version=2022-08-01&query=47.622942,-122.316456:47.610378,-122.200676

Sample Response

{
  "summary": {
    "sourcePoint": {
      "lat": 47.622942,
      "lon": -122.316456
    },
    "targetPoint": {
      "lat": 47.610378,
      "lon": -122.200676
    }
  },
  "result": {
    "distanceInMeters": 8797.62
  }
}

定義

名稱 Description
ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

GreatCircleDistanceResult

此物件是從成功的 Great Circle Distance 呼叫傳回

GreatCircleDistanceSummary

Summary 物件

JsonFormat

所需的回應格式。 僅支援 json 格式。

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

Result

Polygon 結果物件中的點

ErrorAdditionalInfo

資源管理錯誤其他資訊。

名稱 類型 Description
info

object

其他資訊。

type

string

其他信息類型。

ErrorDetail

錯誤詳細數據。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤其他資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳細資料。

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

error 物件。

GreatCircleDistanceResult

此物件是從成功的 Great Circle Distance 呼叫傳回

名稱 類型 Description
result

Result

Result 物件

summary

GreatCircleDistanceSummary

Summary 物件

GreatCircleDistanceSummary

Summary 物件

名稱 類型 Description
sourcePoint

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

targetPoint

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

JsonFormat

所需的回應格式。 僅支援 json 格式。

名稱 類型 Description
json

string

JavaScript 物件表示法數據交換格式

LatLongPairAbbreviated

以緯度和經度表示的位置,使用簡短名稱 『lat』 & 『lon』。

名稱 類型 Description
lat

number

Latitude 屬性

lon

number

經度屬性

Result

Polygon 結果物件中的點

名稱 類型 Description
intersectingGeometries

string[]

Geometries 陣列

pointInPolygons

boolean

Polygons 中的 Point 屬性