Reputation: 835
these are my 2 points how would I get a distance in meters between them?
52.33816422 -106.2828899 52.33816422 -106.2828634
all the convesions programms are looking for ddmm.mmmmmmm and dddmm.mmmmmmmm
Upvotes: 1
Views: 133
Reputation: 314
def distance loc1, loc2
rad_per_deg = Math::PI/180 # PI / 180
rkm = 6371 # Earth radius in kilometers
rm = rkm * 1000 # Radius in meters
dlat_rad = (loc2[0]-loc1[0]) * rad_per_deg # Delta, converted to rad
dlon_rad = (loc2[1]-loc1[1]) * rad_per_deg
lat1_rad, lon1_rad = loc1.map {|i| i * rad_per_deg }
lat2_rad, lon2_rad = loc2.map {|i| i * rad_per_deg }
a = Math.sin(dlat_rad/2)**2 + Math.cos(lat1_rad) * Math.cos(lat2_rad) * Math.sin(dlon_rad/2)**2
c = 2 * Math::atan2(Math::sqrt(a), Math::sqrt(1-a))
rm * c # Delta in meters
end
puts distance [52.33816422, -106.2828899],[52.33816422, -106.2828634]
# Will return the answer
From here: How to calculate the distance between two GPS coordinates without using Google Maps API?
EDIT: Updated with your coordinates
Upvotes: 1