geo_s2cell_neighbors()
Se aplica a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Calcula vecinos de celda S2.
Obtenga más información sobre la jerarquía de celdas S2.
geo_s2cell_neighbors(
s2cell)
Obtenga más información sobre las convenciones de sintaxis.
Nombre | Type | Obligatorio | Descripción |
---|---|---|---|
s2cell | string |
✔️ | Valor del token de celda S2 tal como se calculó geo_point_to_s2cell ().. La longitud máxima de cadena del token de celda S2 es de 16 caracteres. |
Matriz de vecinos de celda S2. Si la celda S2 no es válida, la consulta genera un resultado NULO.
Nota
Los bordes de celda S2 son geodesics esféricos.
En el ejemplo siguiente se calculan los vecinos de celda S2.
print neighbors = geo_s2cell_neighbors('89c259')
Salida
Vecinos |
---|
["89c25d","89c2f9","89c251","89c257","89c25f","89c25b","89c2f7","89c2f5"] |
En el ejemplo siguiente se calcula una matriz de celdaS2 de entrada con sus vecinos.
let s2cell = '89c259';
print cells = array_concat(pack_array(s2cell), geo_s2cell_neighbors(s2cell))
Salida
células |
---|
["89c259","89c25d","89c2f9","89c251","89c257","89c25f","89c25b","89c2f7","89c2f5"] |
En el ejemplo siguiente se calcula la colección de geometrías GeoJSON de polígonos de celdas S2.
let s2cell = '89c259';
print cells = array_concat(pack_array(s2cell), geo_s2cell_neighbors(s2cell))
| mv-expand cells to typeof(string)
| project polygons = geo_s2cell_to_polygon(cells)
| summarize arr = make_list(polygons)
| project geojson = bag_pack("type", "Feature","geometry", bag_pack("type", "GeometryCollection", "geometries", arr), "properties", bag_pack("name", "polygons"))
Salida
geojson |
---|
{"type": "Feature","geometry": {"type": "GeometryCollection","geometries": [ {"type": "Polygon","coordinates": [[[ -74.0300122498838478, 40.8012684339439],[ -74.030012249838478, 40.7222262918358],[ -73.935982114337421, 40.708880489804564],[ -73.935982114337421, 40.787917134506841],[ -74.030012249838478, 40.8012684339439]]]}, {"type": "Polygon","coordinates": [[[ -73.935982114337421, 40.708880489804564],[ -73.9359821437421, 40.629736433321796],[ -73.841906340776248, 40.616308079144915],[ -73.841906340776248, 40.695446474556284],[ -73.93598211437421, 40.708880489804564]]]]}, {"type": "Polygon","coordinates": [[[ -74.1239959854733, 40.893471289549765],[ -74.1239959854733, 40.814531536204242],[ -74.030012249838478, 40.8012684339439],[ -74.030012249838478, 40.880202851376716],[ -74.1239959854733, 40.893471289549765]]]]}, {"type": "Polygon","coordinates": [[[ -74.1239959854733, 40.735483949993387],[ -74.1239959854733, 40.656328734184143],[ -74.030012249838478, 40.643076628676461],[ -74.030012249838478, 40.7222262918358],[ -74.1239959854733, 40.735483949993387]]]}, {"type": "Polygon","coordinates": [[[ -74.1239959854733, 40.814531536204242],[ -74.1239959854733, 40.735483949993387],[ -74.030012249838478, 40.7222262918358],[ -74.030012249838478, 40.8012684339439],[ -74.1239959854733, 40.814531536204242]]]}, {"type": "Polygon","coordinates": [[[ -73.935982114337421, 40.787917134506841],[ -73.9359821437421, 40.708880489804564],[ -73.841906340776248, 40.69544646474556284],[ -73.841906340776248, 40.774477568182071],[ -73.93598211437421, 40.787917134506841]]]}, {"type": "Polygon","coordinates": [[[ -74.0300122498838478, 40.7222262918358],[ -74.030012249838478, 40.643076628676461],[ -73.93598211437421, 40.62973643321796],[ -73.935982114337421, 40.708880489804564],[ -74.030012249838478, 40.7222262918358]]]}, {"type": "Polygon","coordinates": [[[ -74.0300122498838478, 40.880202851376716],[ -74.030012249838478, 40.8012684339439],[ -73.93598211437421, 40.787917134506841],[ -73.93598211437421, 40.866846163445771],[ -74.030012249838478, 40.880202851376716]]]}, {"type": "Polygon","coordinates": [[[ -73.93598211437421, 40.866846163445771],[ -73.93598214337421, 40.787917134506841],[ -73.841906340776248, 40.774477568182071],[ -73.841906340776248, 40.853401155678846],[ -73.93598211437421, 40.866846163445771]]]}]}, "properties": {"name": "polygons"}} |
En el ejemplo siguiente se calculan uniones de polígono que representan la celda S2 y sus vecinos.
let s2cell = '89c259';
print cells = array_concat(pack_array(s2cell), geo_s2cell_neighbors(s2cell))
| mv-expand cells to typeof(string)
| project polygons = geo_s2cell_to_polygon(cells)
| summarize arr = make_list(polygons)
| project polygon = geo_union_polygons_array(arr)
Salida
polígono |
---|
{"type": "Polygon","coordinates": [[[-73.841906340776248,40.695446474556284],[-73.841906340776248,40.774477568182071],[-73.841906340776248,40.853401155678846],[-73.935982114337421,40.866846163445771],[-74.030012249838478,40.880202851376716],[-74.1239959854733,40.893471289549758],[-74.1239959854733,40.814531536204242],[-74.1239959854733,40.735483949993387],[-74.1239959854733,40.656328734184143],[-74.030012249838478,40.643076628676461],[- 73.935982114337421,40.629736433321796],[-73.841906340776248,40.616308079144915],[-73.841906340776248,40.695446474556284]]]} |
En el ejemplo siguiente se devuelve true debido a la entrada de token de celda S2 no válida.
print invalid = isnull(geo_s2cell_neighbors('a'))
Salida
no válido |
---|
1 |