Поделиться через


geo_h3cell_children()

Область применения: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Вычисляет дочерние ячейки H3.

Дополнительные сведения о ячейке H3.

Синтаксис

geo_h3cell_children(Разрешение h3cell,)

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
h3cell string ✔️ Значение маркера ячейки H3, вычисляемое geo_point_to_h3cell().
резолюция int Определяет разрешение запрошенных дочерних ячеек. Поддерживаемые значения находятся в диапазоне [1, 15]. Если не указано, будет вычисляться маркер немедленного дочернего маркера.

Возвраты

Массив дочерних маркеров ячейки H3. Если ячейка H3 недопустима или разрешение дочернего элемента меньше заданной ячейки, запрос создаст пустой результат.

Примечание.

Разница между разрешением ячеек и его дочерними элементами не может превышать 5. Разница между 5 уровнями приведет к тому, что до 16807 дочерних маркеров.

Примеры

print children = geo_h3cell_children('862a1072fffffff')

Выходные данные

children
[ "872a10728ffffff", "872a10729ffffff", "872a1072affffff", "872a1072bff", "872a1072cff", "872a1072dffff", "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

В следующем примере выполняется сборка геометрии GeoJSON дочерних многоугольников 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"))

Выходные данные

geojson
{ "type": "Feature", "geometry": { "type": "GeometryCollection", "geometries": [ ... ... ] }, "properties": { "name": "Коллекция многоугольников H3" }}

В следующем примере возвращается значение true из-за недопустимой ячейки.

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

Выходные данные

is_null
1

В следующем примере возвращается значение true, так как разница между ячейками и дочерними элементами превышает 5.

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

Выходные данные

is_null
1