Aracılığıyla paylaş


geo_h3cell_rings()

H3 hücre halkalarını hesaplar.

H3 Hücresi hakkında daha fazla bilgi edinin.

Syntax

geo_h3cell_rings(h3cell,Mesafe)

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Gerekli Açıklama
h3cell string ✔️ geo_point_to_h3cell() tarafından hesaplandığı gibi bir H3 Hücre belirteci değeri.
Mesafe int ✔️ Verilen hücreden maksimum halka uzaklığı tanımlar. Geçerli uzaklık [0, 142] aralığındadır.

Döndürülenler

İlk halkanın özgün hücreyi, ikinci halkanın ise komşu hücreleri içerdiği sıralı halka dizileri dizisi vb. H3 Hücresi veya uzaklığı geçersizse, sorgu null bir sonuç üretir.

Not

  • Yalnızca H3 Hücresinin hemen komşuları için bkz. geo_h3cell_neighbors().
  • Beşgen bozulmayla karşılaşıldığında halkada bir hücre bulunmayabilir.

Örnekler

Aşağıdaki örnek, 2 mesafeye kadar halkalar üretir.

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

Çıkış

Yüzük
[
["861f8894fffffff"],
["861f88947ffffff","861f8895fffffff","861f88867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffffff"],
["861f88967ffffff","861f88977ffffff","861f88957ffffff","861f8882fffffff","861f88877ffffff","861f88847ffffff","861f88847ffffff", "861f8886fffffff","861f8d49fffffff","861f8d487ffffff","861f8d4a7ffffff","861f8d59fffffff","861f8d597ffffff"]
]

Aşağıdaki örnek, 1. düzeydeki tüm hücreleri (tüm komşular) oluşturur.

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

Çıkış

Komşu
["861f88947ffffff", "861f8895fffffff", "861f88867ffffff", "861f8d497ffffff", "861f8d4b7ffffff","861f8896fffffff"]

Aşağıdaki örnek, tüm halkalardan hücrelerin listesini oluşturur.

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

Çıkış

Hücre
["861f8894fffffff","861f88947ffffff","861f8895fffffff","861f88867ffffff","861f8d497ffffff","861f8d4b7ffffff","861f8896fffffff"]

Aşağıdaki örnek, tüm hücrelerin GeoJSON geometri koleksiyonunu bir araya getirerek.

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

Çıkış

geojson
{ "type": "Feature", "geometry": { "type": "GeometryCollection", "geometries": [ ... ... ... ]}, "properties": { "name": "H3 polygons collection" }}

Aşağıdaki örnek, geçersiz hücre nedeniyle true döndürür.

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

Çıkış

is_null
1

Aşağıdaki örnek, geçersiz uzaklık nedeniyle true değerini döndürür.

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

Çıkış

is_null
1