Condividi tramite


geo_h3cell_rings()

Si applica a: ✅Microsoft Fabric✅Azure Esplora dati Azure MonitorMicrosoft Sentinel

Calcola gli anelli di cella H3.

Altre informazioni sulla cella H3.

Sintassi

geo_h3cell_rings(distanza h3cell,)

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
h3cell string ✔️ Valore del token di cella H3 calcolato da geo_point_to_h3cell().
distance int ✔️ Definisce la distanza massima dell'anello dalla cella specificata. La distanza valida è compresa nell'intervallo [0, 142].

Valori restituiti

Matrice ordinata di matrici circolari in cui il primo anello contiene la cella originale, il secondo anello contiene celle adiacenti e così via. Se la cella H3 o la distanza non è valida, la query produce un risultato Null.

Nota

  • Solo per i vicini di cella H3, vedere geo_h3cell_neighbors().For H3 Cell immediate neighbors only, please see geo_h3cell_neighbors().
  • Una cella potrebbe non essere presente nell'anello se è stata rilevata una distorsione pentagonale.

Esempi

Nell'esempio seguente vengono generati anelli fino alla distanza 2.

print rings = geo_h3cell_rings('861f8894fffffff', 2)

Output

anelli
[
["861f8894fffffff"],
["861f88947ffffff","861f8895fffffff","861f8867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffff"],
["861f88967ff","861f88977ffffff","861f88957ffffff","861f8882fffffff","861f8887ffffff","861f88847ffff","","861f8847ffffff","861f88ffff","861f887ffff","861f88847ffff","861f8847ffffff","861f8847ffffff","861f889ffff 861f886fff","861f8d49fffffff","861f8d487ffffff","861f8d4a7ffffff","861f8d59fffffff","861f8d597ff"]
]

L'esempio seguente produce tutte le celle al livello 1 (tutti gli elementi adiacenti).

print neighbors = geo_h3cell_rings('861f8894fffffff', 1)[1]

Output

Vicini
["861f88947ff", "861f895fffffff", "861f88867ffffff", "861f8d497ffffff", "861f8d4b7ffffff","861f8896fffff"]

Nell'esempio seguente viene generato un elenco di celle da tutti gli anelli.

print rings = geo_h3cell_rings('861f8894fffffff', 1)
| mv-apply rings on 
(
  summarize cells = make_list(rings)
)

Output

cellule
["861f8894fff","861f8947ffffff","861f8895fffffff","861f88867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffff"]

Nell'esempio seguente viene assemblata la raccolta geometry GeoJSON di tutte le celle.

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" }}

Nell'esempio seguente viene restituito true a causa della cella non valida.

print is_null = isnull(geo_h3cell_rings('abc', 3))

Output

is_null
1

Nell'esempio seguente viene restituito true a causa della distanza non valida.

print is_null = isnull(geo_h3cell_rings('861f8894fffffff', 150))

Output

is_null
1