geo_h3cell_rings()
S’applique à : ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Calcule les anneaux de cellule H3.
En savoir plus sur la cellule H3.
Syntaxe
geo_h3cell_rings(
distance h3cell,
)
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
h3cell | string |
✔️ | Valeur de jeton de cellule H3 telle qu’elle a été calculée par geo_point_to_h3cell(). |
distance | int |
✔️ | Définit la distance d’anneau maximale de la cellule donnée. La distance valide est comprise entre [0, 142]. |
Retours
Tableau ordonné de tableaux d’anneaux où le premier anneau contient la cellule d’origine, le deuxième anneau contient des cellules voisines, et ainsi de suite. Si la cellule H3 ou la distance n’est pas valide, la requête produit un résultat null.
Remarque
- Pour les voisins immédiats de la cellule H3 uniquement, consultez geo_h3cell_neighbors().
- Une cellule peut ne pas être présente dans l’anneau si une distorsion pentagoneale a été rencontrée.
Exemples
L’exemple suivant produit des anneaux jusqu’à la distance 2.
print rings = geo_h3cell_rings('861f8894fffffff', 2)
Sortie
anneaux |
---|
[ ["861f8894fffffff"], ["861f88947ffffff »,"861f8895fffff »,"861f88867ff »,"861f8d497ffffff »,"861f8d4b7ff »,"861f8896fffff"], ["861f88967ffffff »,"861f8897ffffff »,"861f88957ff »,"861f8882fff »,"861f87ff »,"861f8ff »,"861f88847ffffff »,"861f8847ffffff », « 861f8886fff »,"861f8d49fffffff »,"861f8d487ff »,"861f8d4a7ffffff »,"861f8d59fff »,"861f8d597ffffff"] ] |
L’exemple suivant produit toutes les cellules au niveau 1 (tous les voisins).
print neighbors = geo_h3cell_rings('861f8894fffffff', 1)[1]
Sortie
voisins |
---|
["861f88947ffffff », « 861f8895fffffff », « 861f88867ff », « 861f8d497ff », « 861f8d4b7ff »,"861f8896fffff"] |
L’exemple suivant génère la liste des cellules de tous les anneaux.
print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on
(
summarize cells = make_list(rings)
)
Sortie
Cellules |
---|
["861f8894fffffff »,"861f88947ffffff »,"861f8895fffffff »,"861f888867ffffff »,"861f8d497ffffff »,"861f8d4b7ffffff »,"861f8896fff"] |
L’exemple suivant assemble la collection géométrique GeoJSON de toutes les cellules.
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"))
Sortie
geojson |
---|
{ « type » : « Feature », « geometry » : { « type » : « GeometryCollection », « geometries » : [ ... ...}, « properties » : { « name » : « H3 polygons collection » }} |
L’exemple suivant retourne true en raison de la cellule non valide.
print is_null = isnull(geo_h3cell_rings('abc', 3))
Sortie
is_null |
---|
1 |
L’exemple suivant retourne true en raison de la distance non valide.
print is_null = isnull(geo_h3cell_rings('861f8894fffffff', 150))
Sortie
is_null |
---|
1 |