Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Переключайте службы с помощью раскрывающегося списка Версия. Дополнительные сведения о навигации.
Область применения: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Вычисляет, находятся ли геопространственные координаты внутри круга на Земле.
Синтаксис
geo_point_in_circle(
,
p_longitude p_latitude,pc_longitude,c_radius pc_latitude,)
Дополнительные сведения о соглашениях синтаксиса.
Параметры
| Имя (название) | Type | Обязательно | Описание |
|---|---|---|---|
| p_longitude | real |
✔️ | Значение долготы геопространственной координаты в градусах. Допустимое значение — это реальное число и в диапазоне [-180, +180]. |
| p_latitude | real |
✔️ | Значение широты географической координаты в градусах. Допустимое значение — это реальное число и в диапазоне [-90, +90]. |
| pc_longitude | real |
✔️ | Значение долготы в центре круга в градусах. Допустимое значение — это реальное число и в диапазоне [-180, +180]. |
| pc_latitude | real |
✔️ | Значение широты географической координаты в центре круга в градусах. Допустимое значение — это реальное число и в диапазоне [-90, +90]. |
| c_radius | real |
✔️ | Радиус круга в метрах. Допустимое значение должно быть положительным. |
Возвраты
Указывает, находятся ли геопространственные координаты внутри круга. Если координаты или круг недопустимы, запрос создает результат NULL.
Примечание.
- Геопространственные координаты интерпретируются как представленные эталонной системой координат WGS-84 .
- Геостатический datum , используемый для измерения расстояния на Земле является сферой.
- Круг является сферической крышкой на Земле. Радиус крышки измеряется вдоль поверхности сферы.
Примеры
В следующем примере находятся все места в области, определенной следующим кругом: Радиус 18 км, центр в координатах [-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
Выходные данные
| место |
|---|
| Seattle |
| Kirkland |
| Редмонд |
Следующий пример находит события шторма в Орландо. События фильтруются по 100 км в координатах Орландо и агрегируются по типу событий и хэшу.
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
Выходные данные
В следующем примере показаны пикапы такси в нью-йорке в пределах 10 метров от определенного расположения. Соответствующие пикапы агрегируются хэшом.
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)
Выходные данные
В приведенном ниже примере возвращается true.
print in_circle = geo_point_in_circle(-122.143564, 47.535677, -122.100896, 47.527351, 3500)
Выходные данные
| in_circle |
|---|
| true |
В приведенном ниже примере возвращается false.
print in_circle = geo_point_in_circle(-122.137575, 47.630683, -122.100896, 47.527351, 3500)
Выходные данные
| in_circle |
|---|
| false |
В следующем примере возвращается пустой результат из-за недопустимого ввода координат.
print in_circle = geo_point_in_circle(200, 1, 1, 1, 1)
Выходные данные
| in_circle |
|---|
В следующем примере возвращается пустой результат из-за недопустимого ввода радиуса круга.
print in_circle = geo_point_in_circle(1, 1, 1, 1, -1)
Выходные данные
| in_circle |
|---|