Udostępnij za pośrednictwem


geo_point_buffer()

Dotyczy: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

Oblicza wielokąt, który zawiera wszystkie punkty w danym promieniu punktu na Ziemi.

Składnia

geo_point_buffer(tolerancja promienia, szerokości geograficznej, , )

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
długość real ✔️ Wartość współrzędnych współrzędnych geoprzestrzennych w stopniach. Prawidłowa wartość to liczba rzeczywista i w zakresie [-180, +180].
szerokość geograficzna real ✔️ Współrzędna geograficzna współrzędnych współrzędnych geograficznych w stopniach. Prawidłowa wartość to liczba rzeczywista i w zakresie [-90, +90].
promień real ✔️ Promień buforu w metrach. Prawidłowa wartość musi być dodatnia.
tolerancja real Definiuje tolerancję w metrach, która określa, ile wielokąt może odbiegać od idealnego promienia. Jeśli nie określono, zostanie użyta wartość 10 domyślna. Tolerancja nie powinna być niższa niż 0,0001% promienia. Określanie tolerancji większej niż promień obniża tolerancję największej możliwej wartości poniżej promienia.

Zwraca

Wielokąt wokół punktu wejściowego. Jeśli współrzędne lub promień lub tolerancja są nieprawidłowe, zapytanie generuje wynik o wartości null.

Uwaga

Przykłady

Poniższe zapytanie oblicza wielokąt wokół współrzędnych [-115.1745008278, 36.1497251277] z promieniem 20 km.

print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
bufor
{"type": "Wielokąt","współrzędne": [ ... ]}

Poniższe zapytanie oblicza bufor wokół każdego punktu i jednoczy wynik

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)
result
{"type": "MultiPolygon","współrzędne": [ ... ]}

Poniższy przykład zwraca wartość true z powodu nieprawidłowego punktu.

print result = isnull(geo_point_buffer(200, 1,0.1))
result
Prawda

Poniższy przykład zwraca wartość true z powodu nieprawidłowego promienia.

print result = isnull(geo_point_buffer(10, 10, -1))
result
Prawda