Partilhar via


geo_h3cell_children()

Aplica-se a: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Calcula os filhos da célula H3.

Leia mais sobre o H3 Cell.

Sintaxe

geo_h3cell_children(resolução h3cell,)

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
h3cell string ✔️ Um valor de token de célula H3 conforme calculado por geo_point_to_h3cell().
resolução int Define a resolução das células filhas solicitadas. Os valores suportados estão no intervalo [1, 15]. Se não for especificado, um token filho imediato será calculado.

Devoluções

Matriz de tokens filhos de células H3. Se a célula H3 for inválida ou a resolução filho for menor do que a célula fornecida, a consulta produzirá um resultado nulo.

Observação

A diferença entre a resolução celular e seus filhos não pode ser superior a 5. Uma diferença de 5 níveis resultará em até 16807 tokens infantis.

Exemplos

print children = geo_h3cell_children('862a1072fffffff')

Saída

crianças
[ "872a10728ffffff", "872a10729ffffff", "872a1072affffff", "872a1072bffffff", "872a1072cffffff", "872a1072dffffff", "872a1072effffff" ]

O exemplo a seguir conta os filhos 3 níveis abaixo de uma determinada célula.

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

Saída

children_count
343

O exemplo a seguir monta a coleção de geometria GeoJSON de polígonos filhos da célula H3.

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

Saída

geojson
{ "type": "Recurso", "geometry": { "type": "GeometryCollection", "geometries": [ ... ... ... ] }, "properties": { "name": "Coleção de polígonos H3" }}

O exemplo a seguir retorna true devido à célula inválida.

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

Saída

is_null
1

O exemplo a seguir retorna true porque a diferença de nível entre a célula e seus filhos é maior que 5.

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

Saída

is_null
1