Spatial - Get Buffer
使用 取得, FeatureCollection
其中每個功能都是輸入對應索引功能的緩衝區。
Get Buffer
API 是 HTTP GET
要求,會傳回 ,FeatureCollection
其中每個功能都是輸入對應索引功能周圍的緩衝區。 根據輸入中提供的距離而定,緩衝區可能位於外部或所提供功能內部。 FeatureCollection 輸入中每個 Feature 必須提供一個距離,或者如果只提供一個距離,則該距離會套用至集合中的每個 Feature。 幾何的正 (或負) 緩衝區定義為Minkowski總和 (或幾何的差) ,而半徑圓圈等於緩衝區距離的絕對值。 緩衝區 API 一律會傳回多邊形結果。 線條和點的負或零距離緩衝區一律是空的多邊形。 輸入功能是由使用 數據登錄 API 上傳的 GeoJSON 檔案所提供,並由唯一 udid 參考。 GeoJSON 檔案可能包含 Point、MultiPoint、Polygon、MultiPolygon、LineString 和 MultiLineString 的集合。 如果提供 GeometryCollection,將會忽略。
若要測試此 API,您可以從 Post Buffer API 範例上傳範例數據, (要求本文,而不使用資料登錄服務) 距離陣列,並將下列範例要求中的 取代{udid}
為udid
建立數據登錄時所使用的 。 如需詳細資訊,請參閱 如何建立數據登錄。
GET https://{geography}.atlas.microsoft.com/spatial/buffer/json?api-version=2022-08-01&udid={udid}&distances={distances}
URI 參數
名稱 | 位於 | 必要 | 類型 | Description |
---|---|---|---|---|
format
|
path | True |
所需的回應格式。 僅支援 |
|
geography
|
path | True |
string |
Azure 地圖服務帳戶的位置。 有效值為 (美國東部、美國中西部、美國西部 2) 和歐盟 (北歐、西歐) 。 要求中提供 時 |
api-version
|
query | True |
string |
Azure 地圖服務 API 的版本號碼。 |
distances
|
query | True |
string |
每個特徵 (一個距離清單,或所有功能) 的距離清單,以分號分隔。 例如,12.34;-56.78。 正距離會在特徵外部產生緩衝區,而負距離則會產生特徵內的緩衝區。 如果負距離大於幾何本身,則會傳回空的多邊形。 |
udid
|
query | True |
string |
建立 數據登錄 以上傳有效 GeoJSON FeatureCollection 物件時所使用的唯一標識符。 如需詳細資訊,請參閱 RFC 7946 。 所有特徵的屬性都應該包含 |
要求標頭
名稱 | 必要 | 類型 | Description |
---|---|---|---|
x-ms-client-id |
string |
指定哪個帳戶與 Microsoft Entra ID 安全性模型搭配使用。 它代表 Azure 地圖服務帳戶的唯一標識碼,而且可以從 Azure 地圖服務管理平面帳戶 API 擷取。 若要在 Azure 地圖服務中使用 Microsoft 專案標識碼安全性,請參閱下列 文章 以取得指引。 |
回應
名稱 | 類型 | Description |
---|---|---|
200 OK |
確定 |
|
Other Status Codes |
發生意外錯誤。 |
安全性
AADToken
這些是 Microsoft Entra OAuth 2.0 流程。 與 Azure 角色型存取控制 配對時,可用來控制 Azure 地圖服務 REST API 的存取。 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 可讓您針對多個使用案例設定應用程式。
- 如需Microsoft身分識別平臺的詳細資訊,請參閱 Microsoft身分識別平臺概觀。
類型:
oauth2
Flow:
implicit
授權 URL:
https://login.microsoftonline.com/common/oauth2/authorize
範圍
名稱 | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API 透過 Azure 管理平面建立 Azure 地圖服務資源 時所佈建的共用密鑰。
使用此金鑰時,任何應用程式都會獲得存取所有 REST API 的授權。 換句話說,這些目前可視為發行帳戶的主要密鑰。
對於公開的應用程式,我們建議使用 Azure 地圖服務 REST API 的伺服器對伺服器存取,以便安全地儲存此密鑰。
類型:
apiKey
位於:
header
SAS Token
這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 地圖服務資源 上的列出 SAS 作業建立的共用存取簽章令牌。
使用此令牌時,任何應用程式都有權使用 Azure 角色型訪問控制進行存取,並更精細地控制到期、速率和區域 (特定令牌的使用) 。 換句話說,SAS 令牌可用來允許應用程式以比共用密鑰更安全的方式來控制存取。
對於公開的應用程式,我們建議在 地圖帳戶資源 上設定允許的來源特定清單,以限制轉譯濫用,並定期更新 SAS 令牌。
類型:
apiKey
位於:
header
範例
GetBuffer
範例要求
GET https://us.atlas.microsoft.com/spatial/buffer/json?api-version=2022-08-01&udid=f6495f62-94f8-0ec2-c252-45626f82fcb2&distances=176.3
範例回覆
{
"summary": {
"udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2",
"information": "1 feature processed in user data"
},
"result": {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {
"geometryId": "ExampleId",
"bufferDist": 176.3
},
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-111.92483859605078,
33.5362475
],
[
-111.92487510409389,
33.53587682761772
],
[
-111.92498322523961,
33.535520399967204
],
[
-111.92515880445296,
33.535191914363196
],
[
-111.92539509432322,
33.53490399432323
],
[
-111.92568301436319,
33.53466770445297
],
[
-111.9260114999672,
33.53449212523963
],
[
-111.9263679276177,
33.5343840040939
],
[
-111.9267386,
33.534347496050785
],
[
-111.92710927238228,
33.5343840040939
],
[
-111.92746570003278,
33.53449212523963
],
[
-111.9277941856368,
33.53466770445297
],
[
-111.92808210567676,
33.53490399432323
],
[
-111.92831839554702,
33.535191914363196
],
[
-111.92849397476037,
33.535520399967204
],
[
-111.9286020959061,
33.53587682761772
],
[
-111.92863860394921,
33.5362475
],
[
-111.9286020959061,
33.53661817238228
],
[
-111.92849397476037,
33.5369746000328
],
[
-111.92831839554702,
33.53730308563681
],
[
-111.92808210567676,
33.537591005676774
],
[
-111.9277941856368,
33.53782729554703
],
[
-111.92746570003278,
33.53800287476037
],
[
-111.92710927238228,
33.5381109959061
],
[
-111.9267386,
33.53814750394922
],
[
-111.9263679276177,
33.5381109959061
],
[
-111.9260114999672,
33.53800287476037
],
[
-111.92568301436319,
33.53782729554703
],
[
-111.92539509432322,
33.537591005676774
],
[
-111.92515880445296,
33.53730308563681
],
[
-111.92498322523961,
33.5369746000328
],
[
-111.92487510409389,
33.53661817238228
],
[
-111.92483859605078,
33.5362475
]
]
]
}
}
]
}
}
定義
名稱 | Description |
---|---|
Buffer |
此物件會從成功的空間緩衝區呼叫傳回。 |
Buffer |
|
Error |
資源管理錯誤其他資訊。 |
Error |
錯誤詳細數據。 |
Error |
錯誤回應 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Geo |
有效的 |
Json |
所需的回應格式。 僅支援 |
BufferResult
此物件會從成功的空間緩衝區呼叫傳回。
名稱 | 類型 | Description |
---|---|---|
result |
輸入緩衝區的FeatureCollection。 |
|
summary |
BufferSummary
名稱 | 類型 | Description |
---|---|---|
information |
string |
通話期間所發生狀況的相關信息。 |
udid |
string |
如果有的話,用戶數據的 udid |
ErrorAdditionalInfo
資源管理錯誤其他資訊。
名稱 | 類型 | Description |
---|---|---|
info |
object |
其他資訊。 |
type |
string |
其他信息類型。 |
ErrorDetail
錯誤詳細數據。
名稱 | 類型 | Description |
---|---|---|
additionalInfo |
錯誤其他資訊。 |
|
code |
string |
錯誤碼。 |
details |
錯誤詳細資料。 |
|
message |
string |
錯誤訊息。 |
target |
string |
錯誤目標。 |
ErrorResponse
錯誤回應
名稱 | 類型 | Description |
---|---|---|
error |
錯誤物件。 |
GeoJsonFeature
有效的 GeoJSON Feature
物件類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
featureType |
string |
功能的類型。 值取決於目前功能所屬的數據模型。 某些數據模型可能會有空的值。 |
geometry | GeoJsonGeometry: |
有效的 |
id |
string |
功能的標識碼。 |
type |
string:
Feature |
指定 |
GeoJsonFeatureCollection
有效的 GeoJSON FeatureCollection
物件類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
features |
包含有效 |
|
type |
string:
Feature |
指定 |
GeoJsonGeometry
有效的 GeoJSON
geometry 物件。 此類型必須是七個有效 GeoJSON 幾何類型的其中一個 -Point、MultiPoint、LineString、MultiLineString、Polygon、MultiPolygon 和 GeometryCollection。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
type |
Geo |
指定 |
GeoJsonGeometryCollection
有效的 GeoJSON GeometryCollection
物件類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
geometries | GeoJsonGeometry[]: |
包含有效 |
type |
string:
Geometry |
指定 |
GeoJsonLineString
有效的 GeoJSON LineString
幾何類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
coordinates |
number[] |
幾何的 |
type |
string:
Line |
指定 |
GeoJsonMultiLineString
有效的 GeoJSON MultiLineString
幾何類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
coordinates |
number[] |
幾何的 |
type |
string:
Multi |
指定 |
GeoJsonMultiPoint
有效的 GeoJSON MultiPoint
幾何類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
coordinates |
number[] |
幾何的 |
type |
string:
Multi |
指定 |
GeoJsonMultiPolygon
有效的 GeoJSON MultiPolygon
物件類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
coordinates |
number[] |
包含有效 |
type |
string:
Multi |
指定 |
GeoJsonPoint
有效的 GeoJSON Point
幾何類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
coordinates |
number[] |
|
type |
string:
Point |
指定 |
GeoJsonPolygon
有效的 GeoJSON Polygon
幾何類型。 如需詳細資訊,請參閱 RFC 7946 。
名稱 | 類型 | Description |
---|---|---|
coordinates |
number[] |
|
type |
string:
Polygon |
指定 |
JsonFormat
所需的回應格式。 僅支援 json
格式。
名稱 | 類型 | Description |
---|---|---|
json |
string |