geo_point_in_circle()
Vypočítá, zda jsou geoprostorové souřadnice uvnitř kruhu na Zemi.
Syntax
geo_point_in_circle(
,
p_longitude,
p_latitude,
pc_longitude,
pc_latitudec_radius)
Přečtěte si další informace o konvencích syntaxe.
Parametry
Název | Typ | Vyžadováno | Popis |
---|---|---|---|
p_longitude | real |
✔️ | Hodnota geoprostorové souřadnice zeměpisné délky ve stupních Platná hodnota je reálné číslo v rozsahu [-180, +180]. |
p_latitude | real |
✔️ | Hodnota zeměpisné šířky geoprostorových souřadnic ve stupních Platná hodnota je reálné číslo v rozsahu [-90, +90]. |
pc_longitude | real |
✔️ | Geoprostorová souřadnice středu kruhu v hodnotě zeměpisné délky ve stupních Platná hodnota je reálné číslo v rozsahu [-180, +180]. |
pc_latitude | real |
✔️ | geoprostorová hodnota zeměpisné šířky středu kruhu ve stupních. Platná hodnota je reálné číslo v rozsahu [-90, +90]. |
c_radius | real |
✔️ | Poloměr kruhu v metrech. Platná hodnota musí být kladná. |
Návraty
Určuje, zda jsou geoprostorové souřadnice uvnitř kruhu. Pokud jsou souřadnice nebo kruh neplatné, dotaz vygeneruje výsledek null.
Poznámka
- Geoprostorové souřadnice jsou interpretovány jako reprezentované systémem souřadnic WGS-84 .
- Geodetické datum používané k měření vzdálenosti na Zemi je koule.
- Kruh je kulová čepice na Zemi. Poloměr uzávěru se měří podél povrchu koule.
Příklady
Následující příklad najde všechna místa v oblasti definované následujícím kruhem: Poloměr 18 km, střed v souřadnicích [-122,317404, 47,609119].
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
Výstup
místo |
---|
Seattle |
Kirkland |
Redmond |
Následující příklad najde události storm v Orlandu. Události jsou filtrovány podle 100 km v rámci souřadnic Orlando a agregovány podle typu události a hodnoty hash.
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
Výstup
Následující příklad ukazuje vyzvednutí taxíkem ve městě New York do 10 metrů od konkrétního místa. Relevantní sběrná data se agregují podle hodnoty hash.
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)
Výstup
Následující příklad vrátí true
.
print in_circle = geo_point_in_circle(-122.143564, 47.535677, -122.100896, 47.527351, 3500)
Výstup
in_circle |
---|
true |
Následující příklad vrátí false
.
print in_circle = geo_point_in_circle(-122.137575, 47.630683, -122.100896, 47.527351, 3500)
Výstup
in_circle |
---|
false (nepravda) |
Následující příklad vrátí výsledek null z důvodu neplatného vstupu souřadnice.
print in_circle = geo_point_in_circle(200, 1, 1, 1, 1)
Výstup
in_circle |
---|
Následující příklad vrátí výsledek null z důvodu neplatného vstupu poloměru kruhu.
print in_circle = geo_point_in_circle(1, 1, 1, 1, -1)
Výstup
in_circle |
---|
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro