geo_h3cell_rings()
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Berechnet die H3-Zellringe.
Weitere Informationen zu H3 Cell.
Syntax
geo_h3cell_rings(
h3cell-Abstand,
)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
h3cell | string |
✔️ | Ein H3 Cell-Tokenwert, wie er durch geo_point_to_h3cell()berechnet wurde. |
distance | int |
✔️ | Definiert den maximalen Ringabstand von der angegebenen Zelle. Gültiger Abstand liegt im Bereich [0, 142]. |
Gibt zurück
Ein sortiertes Array von Ringarrays, bei denen der erste Ring die ursprüngliche Zelle enthält, der zweite Ring benachbarte Zellen usw. Wenn die H3-Zelle oder der Abstand ungültig ist, erzeugt die Abfrage ein NULL-Ergebnis.
Hinweis
- Nur für H3 Cell direkt benachbarte, siehe geo_h3cell_neighbors().
- Eine Zelle ist möglicherweise nicht im Ring vorhanden, wenn eine fünfeckige Verzerrung aufgetreten ist.
Beispiele
Im folgenden Beispiel werden Ringe bis zum Abstand 2 erzeugt.
print rings = geo_h3cell_rings('861f8894fffffff', 2)
Output
Jonglieren |
---|
[ ["861f8894fffffff"], ["861f88947ffffff","861f8895fffffff","861f8867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffffff"], ["861f88967ffff","861f8897ff","861f88957ffffff","861f8882fffffff","861f88877ffffff","861f8847ffffff","861f8847ffffff","861f8886fffff","861f8d49fffffff","861f8d487ffffff","861f8d4a7ffffff","861f8d59fffffff","861f8d597ffffff"] ] |
Im folgenden Beispiel werden alle Zellen auf Ebene 1 (alle Nachbarn) erzeugt.
print neighbors = geo_h3cell_rings('861f8894fffffff', 1)[1]
Output
Nachbarn |
---|
["861f88947ffffff", "861f8895fffffff", "861f88867ffffff", "861f8d497ffffff", "861f8d4b7ffffff","861f8896fffffff"] |
Im folgenden Beispiel wird eine Liste von Zellen aus allen Ringen erzeugt.
print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on
(
summarize cells = make_list(rings)
)
Output
Zellen |
---|
["861f8894fffff","861f88947ffffff","861f8895fffff","861f88867ffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffffff"] |
Im folgenden Beispiel werden die GeoJSON-Geometrieauflistung aller Zellen zusammengefasst.
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"))
Output
geojson |
---|
{ "type": "Feature", "geometry": { "type": "GeometryCollection", "geometries": [ ... ... ]}, "properties": { "name": "H3 polygons collection" }} |
Im folgenden Beispiel wird aufgrund der ungültigen Zelle "true" zurückgegeben.
print is_null = isnull(geo_h3cell_rings('abc', 3))
Output
is_null |
---|
1 |
Im folgenden Beispiel wird "true" aufgrund des ungültigen Abstands zurückgegeben.
print is_null = isnull(geo_h3cell_rings('861f8894fffffff', 150))
Output
is_null |
---|
1 |