Cyrus Dev wrote:
I want to find distance in miles between 2 points , I have lattitude and
longitude of both points ,
I do this (inside a model what has latitude and longitude attributes)
RadConv=(Math::PI/180)
R=3958
def get_distance_to(to_lat, to_lon)
lat1=self.latitude * RadConv
lon1=self.longitude * RadConv
lat2=to_lat * RadConv
lon2=to_lon * RadConv
diff_lon = (lon2 - lon1).abs
diff_lat = (lat2 - lat1).abs
a = Math.sin(diff_lat/2) * Math.sin(diff_lat/2) + Math.cos(lat1) * Math.cos(lat2) * Math.sin(diff_lon/2) * Math.sin(diff_lon/2);
c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
d = R * c;
return d;
end