Freigeben über


geo_point_buffer()

Gilt für: ✅Microsoft Fabric

Berechnet Polygone, die alle Punkte innerhalb des angegebenen Radius des Punkts auf der Erde enthalten.

Syntax

geo_point_buffer( Längengradradiustoleranz,,,)

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Typ Erforderlich Beschreibung
Länge real ✔️ Geospatialkoordinaten-Längengradwert in Grad. Der gültige Wert ist eine reelle Zahl und im Bereich [-180, +180].
Breite real ✔️ Geospatialkoordinaten-Breitengradwert in Grad. Der gültige Wert ist eine reelle Zahl und im Bereich [-90, +90].
Radius real ✔️ Pufferradius in Metern. Der gültige Wert muss positiv sein.
Toleranz real Definiert die Toleranz in Metern, die bestimmt, wie viel ein Polygon vom idealen Radius abweichen kann. Wenn nichts angegeben wird, wird der Standardwert 10 verwendet. Die Toleranz sollte nicht unter 0,0001 % des Radius liegen. Die Angabe der Toleranz, die größer als der Radius ist, verringert die Toleranz auf den größten möglichen Wert unterhalb des Radius.

Gibt zurück

Polygon um den Eingabepunkt. Wenn die Koordinaten oder Radius oder Toleranz ungültig sind, erzeugt die Abfrage ein NULL-Ergebnis.

Hinweis

Beispiele

Im folgenden Beispiel werden Polygone um [-115.1745008278, 36.1497251277] Koordinaten mit einem Radius von 20 km berechnet.

print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
Puffer
{"type": "Polygon","coordinates": [ ... ]}

Die folgende Abfrage berechnet Puffer um jeden Punkt und vereint das Ergebnis.

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)
Ergebnis
{"type": "MultiPolygon","coordinates": [ ... ]}

Im folgenden Beispiel wird "true" aufgrund eines ungültigen Punkts zurückgegeben.

print result = isnull(geo_point_buffer(200, 1,0.1))
Ergebnis
Richtig

Im folgenden Beispiel wird "true" aufgrund eines ungültigen Radius zurückgegeben.

print result = isnull(geo_point_buffer(10, 10, -1))
Ergebnis
Richtig