geo_h3cell_children()

Oblicza elementy podrzędne komórek H3.

Przeczytaj więcej o komórce H3.

Składnia

geo_h3cell_children(h3cell,Rozdzielczość)

Dowiedz się więcej o konwencjach składniowych.

Parametry

Nazwa Typ Wymagane Opis
h3cell string ✔️ Wartość tokenu komórki H3 obliczana przez geo_point_to_h3cell().
Rozdzielczość int Definiuje żądane rozpoznawanie komórek podrzędnych. Obsługiwane wartości znajdują się w zakresie [1, 15]. Jeśli nie zostanie określona, zostanie obliczony token natychmiastowych elementów podrzędnych.

Zwraca

Tablica tokenów elementów podrzędnych komórki H3. Jeśli komórka H3 jest nieprawidłowa lub podrzędna rozdzielczość jest niższa niż dana komórka, zapytanie zwróci wynik o wartości null.

Uwaga

Różnica między rozdzielczością komórek a jej dziećmi nie może być większa niż 5. Różnica 5 poziomów spowoduje do 16807 tokenów podrzędnych.

Przykłady

print children = geo_h3cell_children('862a1072fffffff')

Dane wyjściowe

dzieci
[ "872a10728ffffffff", "872a10729ffffffff", "872a1072affffffff", "872a1072bff", "872a1072cff", "872a1072dffff", "872a1072effff" ]

Poniższy przykład zlicza 3 poziomy podrzędne poniżej danej komórki.

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

Dane wyjściowe

children_count
343

Poniższy przykład tworzy kolekcję geometrii GeoJSON wielokątów elementów podrzędnych 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"))

Dane wyjściowe

geojson
{ "type": "Feature", "geometry": { "type": "GeometryCollection", "geometrie": [ ... ... ] }, "properties": { "name": "Kolekcja wielokątów H3" }}

Poniższy przykład zwraca wartość true z powodu nieprawidłowej komórki.

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

Dane wyjściowe

is_null
1

Poniższy przykład zwraca wartość true, ponieważ różnica między komórką a jej elementami podrzędnym wynosi więcej niż 5.

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

Dane wyjściowe

is_null
1