Categories: JavascriptPHP

Menghitung jarak dua titik koordinat dengan php dan javascript

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.

Bagikan
rasupe

Recent Posts

Teks panjang jadi titik-titik dengan css

Bismillaahirrohmaanirrohiim... Saat kita membuat kotak dengan lebar dan tinggi tertentu, tentunya teks didalamnya harus kita…

3 weeks ago

Bekerja dengan clearfix di css untuk posisi gambar dan teks dalam kotak

Bismillaahirrohmaanirrohiim... Clearfix pada css biasanya digunakan untuk menangani posisi elemen saat menggunakan float, dimana float…

3 weeks ago

Fix npx atau npm tidak jalan di windows

Bismillaahirrohmaanirrohiim... Setelah menginstall node.js dan ingin menggunakan perintah npx atau npm di power shell atau…

4 weeks ago

CPU usage tinggi pada server

Bismillaahirrohmaanirrohiim... Untuk mendeteksi cpu usage tinggi memang perkara rumit, adakalanya karena codingan bermasalah, akses ke…

3 months ago

Membersihkan log mongodb yang besar

Bismillaahirrohmaanirrohiim... Jika tidak dirawat dan dicek berkala, log mongodb akan semakin membesar. Bahkan sampai menghabiskan…

3 months ago

Cara mengakses gps di HP dengan javascript

Bismillaahirrohmaanirrohiim... Jika kita membuat website yang digunakan untuk memantau lokasi HP client, maka kita memerlukan…

6 months ago