共用方式為


geo_h3cell_rings()

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

計算 H3 儲存格環形。

深入瞭解 H3 單元格

語法

geo_h3cell_rings(h3cell,距離)

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
h3cell string ✔️ H3 儲存格標記值,因為它是由 geo_point_to_h3cell() 計算。
distance int ✔️ 定義與指定儲存格的最大環形距離。 有效距離介於 [0, 142] 範圍內。

傳回

環形陣列的已排序數位,其中第一個環形包含原始儲存格、第二個環形包含鄰近儲存格等等。 如果 H3 儲存格或距離無效,查詢會產生 Null 結果。

注意

  • 如需僅限 H3 儲存格的近鄰,請參閱 geo_h3cell_neighbors()
  • 如果遇到五角大樓扭曲,一個單元格可能不會出現在環形中。

範例

下列範例會產生高達距離 2 的環形。

print rings = geo_h3cell_rings('861f8894fffffff', 2)

輸出

[
[“861f8894fffffff”],
[“861f88947ffffffff”,“861f8895fff”,“861f88867ff”,“861f8d497ff”,“861f8d4b7ff”,“861f8896fffff”],
[“861f88967ffffffff”,“861f88977ffff”,“861f88957ff”,“861f8887ff”,“861f887ff”,“861f88847ffffff”,“861f8886fffffff”,“861f8d49fff”,“861f8d487ffffffff”,“861f8d4a7ff”,“861f8d59fff”,“861f8d597ffff”]
]

下列範例會產生層級 1 的所有儲存格(所有鄰居)。

print neighbors = geo_h3cell_rings('861f8894fffffff', 1)[1]

輸出

鄰居
[“861f88947ffffffff”, “861f8895fff”, “861f88867ffff”, “861f8d497ff”, “861f8d4b7ff”,“861f8896fff”]

下列範例會產生來自所有環形的單元格清單。

print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on 
(
  summarize cells = make_list(rings)
)

輸出

細胞
[“861f8894fff”,“861f88947ffff”,“861f8895fff”,“861f88867ff”,“861f8d4b7ff”,“861f8896fffffffff”]

下列範例會組合所有儲存格的 GeoJSON 幾何集合。

print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on 
(
  summarize make_list(rings)
)
| mv-expand list_rings to typeof(string)
| project polygon = geo_h3cell_to_polygon(list_rings)
| summarize polygon_lst = make_list(polygon)
| project geojson = bag_pack(
    "type", "Feature",
    "geometry", bag_pack("type", "GeometryCollection", "geometries", polygon_lst),
    "properties", bag_pack("name", "H3 polygons collection"))

輸出

geojson
{ “type”: “Feature”, “geometry”: { “type”: “GeometryCollection”, “geometries”: [ ... ... ]}, “properties”: { “name”: “H3 polygons collection” }}

下列範例會傳回 true,因為單元格無效。

print is_null = isnull(geo_h3cell_rings('abc', 3))

輸出

is_null
1

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

print is_null = isnull(geo_h3cell_rings('861f8894fffffff', 150))

輸出

is_null
1