geo_point_buffer()
Si applica a: ✅Microsoft Fabric✅Azure Esplora dati✅ Azure Monitor✅Microsoft Sentinel
Calcola il poligono che contiene tutti i punti all'interno del raggio specificato del punto sulla Terra.
Sintassi
geo_point_buffer(
Tolleranza del raggio,
della latitudine della longitudine,
,
)
Altre informazioni sulle convenzioni di sintassi.
Parametri
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
longitude | real |
✔️ | Valore della longitudine della coordinata geospaziale in gradi. Il valore valido è un numero reale e nell'intervallo [-180, +180]. |
latitude | real |
✔️ | Valore della latitudine della coordinata geospaziale in gradi. Il valore valido è un numero reale e nell'intervallo [-90, +90]. |
raggio | real |
✔️ | Raggio del buffer in metri. Il valore valido deve essere positivo. |
tolerance | real |
Definisce la tolleranza in metri che determina la quantità di poligono che può deviare dal raggio ideale. Se non specificato, viene usato il valore predefinito 10 . La tolleranza non deve essere inferiore allo 0,0001% del raggio. Se si specifica una tolleranza maggiore del raggio, la tolleranza viene ridotta al di sotto del raggio. |
Valori restituiti
Poligono intorno al punto di input. Se le coordinate o il raggio o la tolleranza non sono validi, la query produce un risultato Null.
Nota
- Le coordinate geospaziali vengono interpretate come rappresentate dal sistema di riferimento di coordinate WGS-84 .
- Il datum geodetico usato per misurare la distanza sulla Terra è una sfera.
Esempi
La query seguente calcola il poligono intorno alle coordinate [-115.1745008278, 36.1497251277] con raggio di 20 km.
print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
buffer |
---|
{"type": "Polygon","coordinates": [ ... ]} |
La query seguente calcola il buffer intorno a ogni punto e unifica il risultato
datatable(longitude:real, latitude:real, radius:real)
[
real(-80.3212217992616), 25.268683367546604, 5000,
real(-80.81717403605833), 24.82658441221962, 3000
]
| project buffer = geo_point_buffer(longitude, latitude, radius)
| summarize polygons = make_list(buffer)
| project result = geo_union_polygons_array(polygons)
result |
---|
{"type": "MultiPolygon","coordinates": [ ... ]} |
L'esempio seguente restituisce true, a causa di un punto non valido.
print result = isnull(geo_point_buffer(200, 1,0.1))
result |
---|
Vero |
L'esempio seguente restituisce true, a causa di un raggio non valido.
print result = isnull(geo_point_buffer(10, 10, -1))
result |
---|
Vero |