次の方法で共有


geo_h3cell_children()

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

H3 セルの子を計算します。

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

構文

geo_h3cell_children(h3cell,resolution)

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

パラメーター

件名 タイプ Required 説明
h3cell string ✔️ geo_point_to_h3cell()によって計算された H3 Cell トークン値。
解決 int 要求された子セルの解像度を定義します。 サポートされる値の範囲は [1, 15] です。 指定しない場合は、直ちに子トークンが計算されます。

返品

H3 セルの子トークンの配列。 H3 セルが無効な場合、または子の解像度が指定されたセルよりも低い場合、クエリによって null の結果が生成されます。

Note

セルの解像度とその子の差は、5 以下にする必要があります。 5 レベルの差により、最大で 16,807 個の子トークンが生じます。

print children = geo_h3cell_children('862a1072fffffff')

出力

children
[ "872a10728ffffff", "872a10729ffffff", "872a1072affffff", "872a1072bffffff", "872a1072cffffff", "872a1072dffffff", "872a1072effffff" ]

次の例では、指定されたセルの 3 レベル下の子を数えます。

let h3_cell = '862a1072fffffff'; 
print children_count = array_length(geo_h3cell_children(h3_cell, geo_h3cell_level(h3_cell) + 3))

出力

children_count
343

次の例では、H3 セルの子ポリゴンの GeoJSON ジオメトリ コレクションが作成されます。

print children = geo_h3cell_children('862a1072fffffff')
| mv-expand children to typeof(string)
| project child = geo_h3cell_to_polygon(children)
| summarize h3_hash_polygon_lst = make_list(child)
| project geojson = bag_pack(
    "type", "Feature",
    "geometry", bag_pack("type", "GeometryCollection", "geometries", h3_hash_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_children('abc'))

出力

is_null
1

次の例では、セルとその子のレベル差が 5 を超えるため、true が返されます。

print is_null = isnull(geo_h3cell_children(geo_point_to_h3cell(1, 1, 9), 15))

出力

is_null
1