Bismillaahirrohmaanirrohiim…
Kali ini kita akan mencoba menerapkan rumus trigonometeri dari formula haversine, yang digunakan untuk mengukur jarak antara dua titik koordinat dengan menggunakan program PHP dan juga Javascript.
Rumus haversine ini digunakan karena memperhitungkan kelengkungan bumi, sehingga metode trigonometri lah yang cocok digunakan.
Yang kita perlukan adalah dua titik koordinat yang masing-masing ada angka latitude dan longitude nya.
Berikut ini cara menghitung jarak diantara dua koordinat menggunakan PHP:
function getDistanceBetweenPoints($latitude1, $longitude1, $latitude2, $longitude2) { $theta = $longitude1 - $longitude2; $distance = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta))); $distance = acos($distance); $distance = rad2deg($distance); $distance = $distance * 60 * 1.1515;//satuan miles $distance = $distance * 1.609344;//satuan km $distance = 1000 * $distance;//satuan meter return (round($distance,2)); //dalam meter }
Cara dibawah ini menggunakan fungsi Javascript:
function getDistanceBetweenPoints(latitude1, longitude1, latitude2, longitude2) { let theta = longitude1 - longitude2; //cari dalam satuan miles let distance = 60 * 1.1515 * (180/Math.PI) * Math.acos(Math.sin(latitude1 * (Math.PI/180)) * Math.sin(latitude2 * (Math.PI/180)) + Math.cos(latitude1 * (Math.PI/180)) * Math.cos(latitude2 * (Math.PI/180)) * Math.cos(theta * (Math.PI/180))); distance = distance * 1.609344;//km distance = 1000 * distance;//meter return Math.round(distance, 2); //dalam meter }
Nah cukup mudah bukan, silahkan dicoba sesuai dengan kebutuhan kalian.