geo_point_buffer()
Menghitung poligon yang berisi semua titik dalam radius tertentu dari titik di Bumi.
Sintaks
geo_point_buffer(
toleransi radius ,
garis lintang ,
bujur,
)
Pelajari selengkapnya tentang konvensi sintaksis.
Parameter
Nama | Tipe | Wajib | Deskripsi |
---|---|---|---|
Bujur | real |
✔️ | Nilai bujur koordinat geospasial dalam derajat. Nilai valid adalah bilangan real dan dalam rentang [-180, +180]. |
lintang | real |
✔️ | Nilai lintang koordinat geospasial dalam derajat. Nilai valid adalah bilangan real dan dalam rentang [-90, +90]. |
radius | real |
✔️ | Radius buffer dalam meter. Nilai valid harus positif. |
Toleransi | real |
Mendefinisikan toleransi dalam meter yang menentukan berapa banyak poligon yang dapat menyimpang dari radius ideal. Jika tidak ditentukan, nilai default 10 akan digunakan. Toleransi tidak boleh lebih rendah dari 0,0001% dari radius. Menentukan toleransi yang lebih besar dari radius menurunkan toleransi ke nilai terbesar yang mungkin di bawah radius. |
Mengembalikan
Poligon di sekitar titik input. Jika koordinat atau radius atau toleransi tidak valid, kueri menghasilkan hasil null.
Catatan
- Koordinat geospasial diinterpretasikan sebagaimana diwakili oleh sistem referensi koordinat WGS-84.
- Datum geodetik yang digunakan untuk mengukur jarak di Bumi adalah bola.
Contoh
Kueri berikut menghitung poligon di sekitar koordinat [-115.1745008278, 36.1497251277], dengan radius 20km.
print buffer = geo_point_buffer(-115.1745008278, 36.1497251277, 20000)
Buffer |
---|
{"type": "Polygon","coordinates": [ ... ]} |
Kueri berikut menghitung buffer di sekitar setiap titik dan hasil unifies
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)
hasil |
---|
{"type": "MultiPolygon","coordinates": [ ... ]} |
Contoh berikut mengembalikan true, karena titik yang tidak valid.
print result = isnull(geo_point_buffer(200, 1,0.1))
hasil |
---|
Benar |
Contoh berikut mengembalikan true, karena radius yang tidak valid.
print result = isnull(geo_point_buffer(10, 10, -1))
hasil |
---|
Benar |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk