From: "Peña, Botp" Date: 2006-04-27T19:20:33+09:00 Subject: Re: Trouble migrating formula from JavaScript to Ruby Ingo Weiss: # //JavaScript: # dlng = p2_lng - p1_lng # dlat = p2_lat - p1_lat # a = (sin(dlat/2))^2 + cos(p1_lat) * cos(p2_lat) * (sin(dlon/2))^2 # c = 2 * atan2( sqrt(a), sqrt(1-a) ) # distance = R * c (where R is the radius of the Earth) # # # #Ruby: # dlng = p2_lng - p1_lng # dlat = p2_lat - p1_lat # a = (Math.sin(dlat/2))**2 + Math.cos(p1_lat) * Math.cos(p2_lat) * # (Math.sin(dlng/2))**2 # c = 2 * Math.atan2( Math.sqrt(a), Math.sqrt(1-a) ) # distance = 6373 * c #(radius of the Earth: 6373km # # # Any idea why the Ruby one returns incorrect numbers? 1) can you post sample running codes on both? (eg what are the values of p2_lang, etc) 2) do you have test cases? (so we know what to expect) kind regards -botp