Beberapa waktu lalu mendapat sebuah kasus untuk menghitung jarak satu titik koordinat [latitude dan longitude] dengan titik koordinat lain. Setelah searching ke beberapa referensi akhirnya mendapat satu persamaan yang bisa digunakan untuk menghitung jarak 2 titik koordinat. Nama persamaan ini disebut Haversine Formula. Haversine Formula adalah persamaan
yang penting dalam bidang navigasi untuk mencari jarak antara dua lokasi. Persamaan ini bekerja dengan menarik sebuah garis dari satu titik ke titik kedua. Pada artikel ini, implementasi dari persamaan haversine ini akan dibuat dengan Python. Untuk satuan jarak yang digunakan adalah Kilometer.Kode
from math import *
def haversine[lon1, lat1, lon2, lat2]:
"""
Calculate the great circle distance between two points
on the earth [specified in decimal degrees]
"""
# convert decimal degrees to radians
lon1, lat1, lon2, lat2 = map[radians, [lon1, lat1, lon2, lat2]]
# haversine formula
dlon = lon2 - lon1
dlat = lat2 - lat1
a = sin[dlat/2]**2 + cos[lat1] * cos[lat2] * sin[dlon/2]**2
c = 2 * asin[sqrt[a]]
r = 6371 # Radius of earth in kilometers. Use 3956 for miles
return c * r
center_point = [{'lat': -7.7940023, 'lng': 110.3656535}]
test_point = [{'lat': -7.79457, 'lng': 110.36563}]
lat1 = center_point[0]['lat']
lon1 = center_point[0]['lng']
lat2 = test_point[0]['lat']
lon2 = test_point[0]['lng']
a = haversine[lon1, lat1, lon2, lat2]
print['Distance [km] : ', a]
area = 1.00 # in kilometer
if a