共用方式為


geo_point_buffer()

適用於:✅Microsoft網狀架構Azure 數據✅總管 Azure 監視器✅Microsoft Sentinel

計算多邊形,其中包含地球上點指定半徑內的所有點。

語法

geo_point_buffer(經度,緯度,半徑容錯, )

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
經度 real ✔️ 地理空間座標經度值以度為單位。 有效值為實數,且範圍 [-180, +180]。
緯度 real ✔️ 地理空間座標緯度值以度為單位。 有效值為實數,且範圍 [-90, +90]。
半徑 real ✔️ 以公尺為單位的緩衝區半徑。 有效值必須是正數。
tolerance real 定義以公尺為單位的容錯,以決定多邊形可以偏離理想半徑多少。 如果未指定,則會使用預設值 10 。 容錯應不低於半徑的0.0001%。 指定大於半徑的容錯,會將容錯降低到半徑下方的最大可能值。

傳回

輸入點周圍的多邊形。 如果座標或半徑或容錯無效,查詢會產生 Null 結果。

注意

範例

下列查詢會計算 [-115.1745008278,36.1497251277] 坐標的多邊形,半徑為 20 公里。

print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
緩衝區
{“type”: “Polygon”,“coordinates”: [ ... ]}

下列查詢會計算每個點周圍的緩衝區,並統一結果

datatable(longitude:real, latitude:real, radius:real)
[
    real(-80.3212217992616), 25.268683367546604, 5000,
    real(-80.81717403605833), 24.82658441221962, 3000
]
| project buffer = geo_point_buffer(longitude, latitude, radius)
| summarize polygons = make_list(buffer)
| project result = geo_union_polygons_array(polygons)
result
{“type”: “MultiPolygon”,“coordinates”: [ ... ]}

下列範例會傳回 true,因為點無效。

print result = isnull(geo_point_buffer(200, 1,0.1))
result
True

下列範例會傳回 true,因為半徑無效。

print result = isnull(geo_point_buffer(10, 10, -1))
result
True