共用方式為


geo_point_in_circle()

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

計算地理空間座標是否位於地球上的圓形內。

語法

geo_point_in_circle(, p_longitude, p_latitude pc_longitude, pc_latitude c_radius, )

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
p_longitude real ✔️ 地理空間座標經度值以度為單位。 有效值為實數,且範圍 [-180, +180]。
p_latitude real ✔️ 地理空間座標緯度值以度為單位。 有效值為實數,且範圍 [-90, +90]。
pc_longitude real ✔️ 圓形中心地理空間座標經度值,以度為單位。 有效值為實數,且範圍 [-180, +180]。
pc_latitude real ✔️ 圓形中心地理空間座標緯度值以度為單位。 有效值為實數,且範圍 [-90, +90]。
c_radius real ✔️ 圓形半徑以公尺為單位。 有效值必須是正數。

傳回

指出地理空間座標是否在圓形內。 如果座標或圓形無效,查詢會產生 Null 結果。

注意

  • 地理空間座標會解譯為 WGS-84 座標參考系統所代表。
  • 用來測量地球上距離的 地緣日期 是球體。
  • 圓形是地球上的球形蓋。 上限的半徑會沿著球體表面測量。

範例

下列範例會尋找下列圓形所定義區域中的所有位置:半徑為 18 公里,中心位於 [-122.317404,47.609119] 坐標。

位於西雅圖 18 公里以內的地圖螢幕快照。

datatable(longitude:real, latitude:real, place:string)
[
    real(-122.317404), 47.609119, 'Seattle',                   // In circle 
    real(-123.497688), 47.458098, 'Olympic National Forest',   // In exterior of circle  
    real(-122.201741), 47.677084, 'Kirkland',                  // In circle
    real(-122.443663), 47.247092, 'Tacoma',                    // In exterior of circle
    real(-122.121975), 47.671345, 'Redmond',                   // In circle
]
| where geo_point_in_circle(longitude, latitude, -122.317404, 47.609119, 18000)
| project place

輸出

地點
西雅圖
Kirkland
雷蒙市

下列範例會尋找奧蘭多的風暴事件。 事件會依奧蘭多座標的 100 公里進行篩選,並依事件類型和哈希匯總。

StormEvents
| project BeginLon, BeginLat, EventType
| where geo_point_in_circle(BeginLon, BeginLat, real(-81.3891), 28.5346, 1000 * 100)
| summarize count() by EventType, hash = geo_point_to_s2cell(BeginLon, BeginLat)
| project geo_s2cell_to_central_point(hash), EventType, count_
| render piechart with (kind=map) // map pie rendering available in Kusto Explorer desktop

輸出

奧蘭多的暴風雨事件螢幕快照,其轉譯為地圖上的餅圖點。

下列範例顯示紐約市計程車取車位於特定位置的 10 公尺內。 相關取貨會依哈希匯總。

nyc_taxi
| project pickup_longitude, pickup_latitude
| where geo_point_in_circle( pickup_longitude, pickup_latitude, real(-73.9928), 40.7429, 10)
| summarize by hash = geo_point_to_s2cell(pickup_longitude, pickup_latitude, 22)
| project geo_s2cell_to_central_point(hash)
| render scatterchart with (kind = map)

輸出

顯示附近紐約市計程車取車的轉譯地圖螢幕快照,如查詢中所定義。

下列範例會傳回 true

print in_circle = geo_point_in_circle(-122.143564, 47.535677, -122.100896, 47.527351, 3500)

輸出

in_circle
true

下列範例會傳回 false

print in_circle = geo_point_in_circle(-122.137575, 47.630683, -122.100896, 47.527351, 3500)

輸出

in_circle
false

下列範例會傳回 Null 結果,因為座標輸入無效。

print in_circle = geo_point_in_circle(200, 1, 1, 1, 1)

輸出

in_circle

下列範例會傳回 Null 結果,因為圓形半徑輸入無效。

print in_circle = geo_point_in_circle(1, 1, 1, 1, -1)

輸出

in_circle