Peña wrote: > 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) * > is dlng a typo, the first formula uses dlon? > # (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 > >