geo_point_in_circle()
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Berechnet, ob sich die räumlichen Koordinaten innerhalb eines Kreises auf der Erde befinden.
Syntax
geo_point_in_circle(
,
p_longitude p_latitude,
pc_longitude,
pc_latitude c_radius,
)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
p_longitude | real |
✔️ | Geospatialkoordinaten-Längengradwert in Grad. Der gültige Wert ist eine reelle Zahl und im Bereich [-180, +180]. |
p_latitude | real |
✔️ | Geospatialkoordinaten-Breitengradwert in Grad. Der gültige Wert ist eine reelle Zahl und im Bereich [-90, +90]. |
pc_longitude | real |
✔️ | Geospatialkoordinaten-Längengradwert im Kreis in Grad. Der gültige Wert ist eine reelle Zahl und im Bereich [-180, +180]. |
pc_latitude | real |
✔️ | Kreis-Mittel-Geospatialkoordinate Breitenwert in Grad. Der gültige Wert ist eine reelle Zahl und im Bereich [-90, +90]. |
c_radius | real |
✔️ | Kreisradius in Metern. Der gültige Wert muss positiv sein. |
Gibt zurück
Gibt an, ob sich die Geospatialkoordinaten innerhalb eines Kreises befinden. Wenn die Koordinaten oder der Kreis ungültig sind, erzeugt die Abfrage ein NULL-Ergebnis.
Hinweis
- Die Geospatialkoordinaten werden durch das WGS-84-Koordinatenverweissystem interpretiert.
- Das geodetische Datum , das zum Messen der Entfernung auf der Erde verwendet wird, ist eine Kugel.
- Ein Kreis ist eine kugelförmige Kappe auf der Erde. Der Radius der Kappe wird entlang der Oberfläche der Kugel gemessen.
Beispiele
Im folgenden Beispiel werden alle Stellen in dem durch den folgenden Kreis definierten Bereich gefunden: Radius von 18 km, Mitte bei [-122.317404, 47.609119] Koordinaten.
datatable(longitude:real, latitude:real, place:string)
[
real(-122.317404), 47.609119, 'Seattle', // In circle
real(-123.497688), 47.458098, 'Olympic National Forest', // In exterior of circle
real(-122.201741), 47.677084, 'Kirkland', // In circle
real(-122.443663), 47.247092, 'Tacoma', // In exterior of circle
real(-122.121975), 47.671345, 'Redmond', // In circle
]
| where geo_point_in_circle(longitude, latitude, -122.317404, 47.609119, 18000)
| project place
Output
Restaurant |
---|
Seattle |
Kirkland |
Redmond |
Im folgenden Beispiel werden Sturmereignisse in Orlando gefunden. Die Ereignisse werden nach 100 km in Orlando-Koordinaten gefiltert und nach Ereignistyp und Hash aggregiert.
StormEvents
| project BeginLon, BeginLat, EventType
| where geo_point_in_circle(BeginLon, BeginLat, real(-81.3891), 28.5346, 1000 * 100)
| summarize count() by EventType, hash = geo_point_to_s2cell(BeginLon, BeginLat)
| project geo_s2cell_to_central_point(hash), EventType, count_
| render piechart with (kind=map) // map pie rendering available in Kusto Explorer desktop
Output
Das folgende Beispiel zeigt die Abholung von Taxiannahmen in New York innerhalb von 10 Metern von einem bestimmten Standort. Relevante Pickups werden nach Hash aggregiert.
nyc_taxi
| project pickup_longitude, pickup_latitude
| where geo_point_in_circle( pickup_longitude, pickup_latitude, real(-73.9928), 40.7429, 10)
| summarize by hash = geo_point_to_s2cell(pickup_longitude, pickup_latitude, 22)
| project geo_s2cell_to_central_point(hash)
| render scatterchart with (kind = map)
Output
Im folgenden Beispiel wird true
zurückgegeben.
print in_circle = geo_point_in_circle(-122.143564, 47.535677, -122.100896, 47.527351, 3500)
Output
in_circle |
---|
true |
Im folgenden Beispiel wird false
zurückgegeben.
print in_circle = geo_point_in_circle(-122.137575, 47.630683, -122.100896, 47.527351, 3500)
Output
in_circle |
---|
false |
Im folgenden Beispiel wird ein NULL-Ergebnis aufgrund der ungültigen Koordinateneingabe zurückgegeben.
print in_circle = geo_point_in_circle(200, 1, 1, 1, 1)
Output
in_circle |
---|
Im folgenden Beispiel wird ein NULL-Ergebnis aufgrund der ungültigen Kreisradiuseingabe zurückgegeben.
print in_circle = geo_point_in_circle(1, 1, 1, 1, -1)
Output
in_circle |
---|