geo_angle()
Berlaku untuk: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Menghitung sudut searah jarum jam dalam radian antara dua baris di Bumi. Baris pertama adalah [point1, point2] dan baris kedua adalah [point2, point3].
Sintaks
geo_angle(
p3_latitude p3_longitude p1_latitude p2_longitude p2_latitude,
,
,
p2_latitude,
p1_longitude p1_longitude,
)
Pelajari selengkapnya tentang konvensi sintaksis.
Parameter
Nama | Tipe | Wajib | Deskripsi |
---|---|---|---|
p1_longitude | real |
✔️ | Nilai bujur dalam derajat koordinat geospasial pertama. Nilai yang valid berada dalam rentang [-180, +180]. |
p1_latitude | real |
✔️ | Nilai garis lintang dalam derajat koordinat geospasial pertama. Nilai yang valid berada dalam rentang [-90, +90]. |
p2_longitude | real |
✔️ | Nilai bujur dalam derajat koordinat geospasial kedua. Nilai yang valid berada dalam rentang [-180, +180]. |
p2_latitude | real |
✔️ | Nilai garis lintang dalam derajat koordinat geospasial kedua. Nilai yang valid berada dalam rentang [-90, +90]. |
p3_longitude | real |
✔️ | Nilai bujur dalam derajat koordinat geospasial kedua. Nilai yang valid berada dalam rentang [-180, +180]. |
p3_latitude | real |
✔️ | Nilai garis lintang dalam derajat koordinat geospasial kedua. Nilai yang valid berada dalam rentang [-90, +90]. |
Mengembalikan
Sudut dalam radian dalam rentang [0, 2pi) antara dua baris [p1, p2] dan [p2, p3]. Sudut diukur CW dari baris pertama ke baris Kedua.
Catatan
- Koordinat geospasial diinterpretasikan sebagaimana diwakili oleh sistem referensi koordinat WGS-84.
- Datum geodetik yang digunakan untuk mengukur jarak di Bumi adalah bola. Tepi garis adalah geodesik pada bola.
- Jika koordinat tidak valid, kueri akan menghasilkan hasil null.
- Jika point1 sama dengan point2, kueri akan menghasilkan hasil null.
- Jika point2 sama dengan point3, kueri akan menghasilkan hasil null.
- Jika point1 dan point2 antipodal, kueri akan menghasilkan hasil null.
- Jika point2 dan point3 antipodal, kueri akan menghasilkan hasil null.
Contoh
Contoh berikut menghitung sudut dalam radian.
print angle_in_radians = geo_angle(0, 10, 0,5, 3,-10)
Hasil
angle_in_radians |
---|
2.94493843406882 |
Contoh berikut menghitung sudut dalam derajat.
let angle_in_radians = geo_angle(0, 10, 0,5, 3,-10);
print angle_in_degrees = degrees(angle_in_radians)
Hasil
angle_in_degrees |
---|
168.732543198009 |
Contoh berikut mengembalikan null karena poin ke-1 sama dengan titik ke-2.
print is_null = isnull(geo_angle(0, 10, 0, 10, 3, -10))
Hasil
is_null |
---|
Benar |