次の方法で共有


geo_h3cell_rings()

適用対象: ✅Microsoft FabricAzure データ エクスプローラーAzure MonitorMicrosoft Sentinel

H3 セル リングを計算します。

詳細については、H3 セルに関するページを参照してください。

構文

geo_h3cell_rings(h3cell,distance)

構文規則について詳しく知る。

パラメーター

件名 タイプ Required 説明
h3cell string ✔️ geo_point_to_h3cell()によって計算された H3 Cell トークン値。
distance int ✔️ 指定されたセルからのリングの最大距離を定義します。 有効な距離は [0, 142] の範囲内です。

返品

最初のリングに元のセルが含まれているリング配列の順序付けられた配列。2 番目のリングには隣接するセルが含まれます。 H3 セルまたは距離のいずれかが無効な場合、クエリは null 結果を生成します。

Note

  • H3 セルの近親ノードのみについては、 geo_h3cell_neighbors()を参照してください。
  • 五角形のゆがみが発生した場合、リングにセルが存在しない可能性があります。

次の例では、距離 2 までのリングが生成されます。

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

出力

リング
[
["861f8894fffffff"],
["861f88947ffffff","861f8895fffffff","861f88867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffffff"],
["861f88967ffffff","861f88977ffffff","861f88957ffffff","861f8882fffffff","861f88877ffffff","861f88847ffffff","861f8886fffffff","861f8d49fffffff","861f8d487ffffff","861f8d4a7ffffff","861f8d59fffffff","861f8d597ffffff"]
]

次の例では、レベル 1 (すべての近隣) のすべてのセルが生成されます。

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

出力

近隣
["861f88947ffffff", "861f8895fffffff", "861f88867ffffff", "861f8d497ffffff", "861f8d4b7ffffff","861f8896fffffff"]

次の例では、すべてのリングからセルの一覧を生成されます。

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

出力

セル
["861f8894fffffff","861f88947ffffff","861f8895fffffff","861f88867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffffff"]

次の例では、すべてのセルの 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