geo_point_buffer()
S’applique à : ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Calcule le polygone qui contient tous les points dans le rayon donné du point sur terre.
Syntaxe
geo_point_buffer(
Tolérance de rayon,
de latitude longitude,
,
)
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | Description |
---|---|---|---|
longitude | real |
✔️ | Valeur de longitude des coordonnées géospatiales en degrés. La valeur valide est un nombre réel et dans la plage [-180, +180]. |
latitude | real |
✔️ | Valeur de latitude de coordonnées géospatiales en degrés. La valeur valide est un nombre réel et dans la plage [-90, +90]. |
rayon | real |
✔️ | Rayon de mémoire tampon en mètres. La valeur valide doit être positive. |
tolerance | real |
Définit la tolérance en mètres qui détermine la quantité d’un polygone qui peut s’écarter du rayon idéal. Si la valeur n’est pas spécifiée, la valeur par défaut 10 est utilisée. La tolérance ne doit pas être inférieure à 0,0001 % du rayon. La spécification de la tolérance supérieure au rayon réduit la tolérance à la plus grande valeur possible en dessous du rayon. |
Retours
Polygone autour du point d’entrée. Si les coordonnées ou le rayon ou la tolérance ne sont pas valides, la requête produit un résultat null.
Remarque
- Les coordonnées géospatiales sont interprétées comme représentées par le système de référence de coordonnées WGS-84 .
- La référence géodésique utilisée pour mesurer la distance sur terre est une sphère.
Exemples
La requête suivante calcule le polygone autour des coordonnées [-115.1745008278, 36.1497251277], avec un rayon de 20 km.
print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
buffer |
---|
{"type » : « Polygon »,"coordinates » : [ ... ]} |
La requête suivante calcule la mémoire tampon autour de chaque point et unifie le résultat
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 »,"coordonnées » : [ ... ]} |
L’exemple suivant retourne true, en raison d’un point non valide.
print result = isnull(geo_point_buffer(200, 1,0.1))
result |
---|
True |
L’exemple suivant retourne true, en raison d’un rayon non valide.
print result = isnull(geo_point_buffer(10, 10, -1))
result |
---|
True |