代码经过网上公式coding出来的。算是转载吧。但真心忘记是哪里抄来的了…
lat1 = 39.993956
lng1 = 116.173553
lat2 = 39.952912
lng2 = 116.29715
include Math
lat_diff = (lat1 - lat2)*PI/180.0
lng_diff = (lng1 - lng2)*PI/180.0
lat_sin = Math.sin(lat_diff/2.0) ** 2
lng_sin = Math.sin(lng_diff/2.0) ** 2
first = Math.sqrt(lat_sin + Math.cos(lat1*PI/180.0) * Math.cos(lat2*PI/180.0) * lng_sin)
result = Math.asin(first) * 2 * 6378137.0
p result.to_i