Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Переключение служб с помощью раскрывающегося списка версий . Дополнительные сведения о навигации.
Область применения: ✅ Microsoft Fabric ✅ Azure Data Explorer ✅ Azure Monitor ✅ Microsoft Sentinel
Вычисляет многоугольник, содержащий все точки в заданном радиусе точки на Земле.
Синтаксис
geo_point_buffer(
,
,
Дополнительные сведения о соглашениях синтаксиса.
Параметры
| Имя (название) | Тип | Обязательно | Описание |
|---|---|---|---|
| долгота | real |
✔️ | Значение долготы геопространственной координаты в градусах. Допустимое значение — это реальное число и в диапазоне [-180, +180]. |
| широта | real |
✔️ | Значение широты географической координаты в градусах. Допустимое значение — это реальное число и в диапазоне [-90, +90]. |
| радиус | real |
✔️ | Радиус буфера в метрах. Допустимое значение должно быть положительным. |
| толерантность | real |
Определяет допустимое значение в метрах, определяющее, сколько многоугольник может отклоняться от идеального радиуса. Если не задано, по умолчанию используется значение 10. Допустимость не должна превышать 0,0001% радиуса. Указание допустимости больше радиуса снижает допустимое значение до наибольшего возможного значения ниже радиуса. |
Возвраты
Многоугольник вокруг входной точки. Если координаты или радиус или допустимость недопустимы, запрос создает результат NULL.
Примечание.
- Геопространственные координаты интерпретируются как представленные эталонной системой координат WGS-84 .
- Геостатический datum , используемый для измерения расстояния на Земле является сферой.
Примеры
В следующем примере вычисляется многоугольник вокруг координат [-115.1745008278, 36.1497251277] с радиусом 20 км.
print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
| буфер |
|---|
| {"type": "Polygon", "координаты": [ ... ]} |
Следующий запрос вычисляет буфер вокруг каждой точки и унифицирует результат
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)
| результат |
|---|
| {"type": "MultiPolygon", "координаты": [ ... ]} |
В следующем примере возвращается значение true из-за недопустимой точки.
print result = isnull(geo_point_buffer(200, 1,0.1))
| результат |
|---|
| Истина |
В следующем примере возвращается значение true из-за недопустимого радиуса.
print result = isnull(geo_point_buffer(10, 10, -1))
| результат |
|---|
| Истина |