geo_h3cell_children()

Vypočítá podřízené buňky H3.

Přečtěte si další informace o buňce H3.

Syntax

geo_h3cell_children(h3cell,Rozlišení)

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Typ Vyžadováno Popis
h3cell string ✔️ Hodnota tokenu buňky H3 vypočítaná pomocí geo_point_to_h3cell()
Rozlišení int Definuje požadované rozlišení podřízených buněk. Podporované hodnoty jsou v rozsahu [1, 15]. Pokud není zadáno, vypočítá se okamžitě podřízený token.

Návraty

Pole podřízených tokenů buňky H3. Pokud je buňka H3 neplatná nebo podřízené rozlišení je nižší než daná buňka, dotaz vygeneruje výsledek null.

Poznámka

Rozdíl mezi rozlišením buněk a jeho podřízenými položkami nemůže být větší než 5. Rozdíl 5 úrovní bude mít za následek až 16807 podřízených tokenů.

Příklady

print children = geo_h3cell_children('862a1072fffffff')

Výstup

Děti
[ "872a10728ffffff", "872a10729ffff", "872a1072affffff", "872a1072bffffff", "872a1072cffffff", "872a1072dffffff", "872a1072effffff" ]

Následující příklad počítá podřízené položky o 3 úrovně pod danou buňkou.

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

Výstup

children_count
343

Následující příklad sestavuje geometrické kolekce GeoJSON mnohoúhelníky H3 Cell.

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"))

Výstup

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

Následující příklad vrátí hodnotu true kvůli neplatné buňce.

print is_null = isnull(geo_h3cell_children('abc'))

Výstup

is_null
1

Následující příklad vrátí hodnotu true, protože rozdíl úrovně mezi buňkou a jejími podřízenými položkami je větší než 5.

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

Výstup

is_null
1