geo_h3cell_rings()
Область применения: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Вычисляет кольца ячеек H3.
Дополнительные сведения о ячейке H3.
Синтаксис
geo_h3cell_rings(
расстояние h3cell,
)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
Имя (название) | Type | Обязательно | Описание |
---|---|---|---|
h3cell | string |
✔️ | Значение маркера ячейки H3, вычисляемое geo_point_to_h3cell(). |
distance | int |
✔️ | Определяет максимальное расстояние от заданной ячейки. Допустимое расстояние находится в диапазоне [0, 142]. |
Возвраты
Упорядоченный массив массивов кругов, где первое кольцо содержит исходную ячейку, второе кольцо содержит соседние ячейки и т. д. Если ячейка H3 или расстояние недопустимы, запрос выдает результат NULL.
Примечание.
- Только для ближайших соседей ячейки H3 см . geo_h3cell_neighbors().
- Ячейка может не присутствовать в кольце, если обнаружена пятиугольная искажение.
Примеры
В следующем примере создаются кольца до расстояния 2.
print rings = geo_h3cell_rings('861f8894fffffff', 2)
Выходные данные
Кольца |
---|
[ ["861f8894fffffff"], ["861f88947ffffff","861f8895fffff","861f88867ffff","861f8d497ff","861f8d4b7ff","861f8896fff"], ["861f88967ffff","861f88977ffff","861f88957ff","861f8882fff","861f8887ff","861f8884ff","861f8886fffffff","861f8d49fffff","861f8d487ff","861f8d4a7ff","861f8d59fffff","861f8d5d59ffff"] ] |
В следующем примере создаются все ячейки уровня 1 (все соседи).
print neighbors = geo_h3cell_rings('861f8894fffffff', 1)[1]
Выходные данные
Соседей |
---|
["861f88947ffffff", "861f8895fff", "861f88867ff", "861f8d497ff", "861f8d4b7ff","861f8896fff"] |
В следующем примере создается список ячеек из всех кругов.
print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on
(
summarize cells = make_list(rings)
)
Выходные данные
Клетки |
---|
["861f8894fffffff","861f88947ffff","861f8895fff","861f888867ff","861f8d497ff","861f8d4b7ff","861f8896fff"] |
В следующем примере выполняется сборка геометрической коллекции GeoJSON всех ячеек.
print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on
(
summarize make_list(rings)
)
| mv-expand list_rings to typeof(string)
| project polygon = geo_h3cell_to_polygon(list_rings)
| summarize polygon_lst = make_list(polygon)
| project geojson = bag_pack(
"type", "Feature",
"geometry", bag_pack("type", "GeometryCollection", "geometries", 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_rings('abc', 3))
Выходные данные
is_null |
---|
1 |
В следующем примере возвращается значение true из-за недопустимого расстояния.
print is_null = isnull(geo_h3cell_rings('861f8894fffffff', 150))
Выходные данные
is_null |
---|
1 |