这些变量名代表什么?
问题描述:
我使用的函数有一些变量,我不知道它们代表什么。这些变量名代表什么?
的变量是:
a //From var a = Math ...
和
The d in dLat
下面是代码:
function checkDistance(lat1,lon1,lat2,lon2) {
var R = 6371; // Radius of the earth in km
var dLat = deg2rad(lat2-lat1); // deg2rad below
var dLon = deg2rad(lon2-lon1);
var a =
Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *
Math.sin(dLon/2) * Math.sin(dLon/2)
;
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c; // Distance in km
return d;
}
他们所代表你觉得呢?
答
这是一个函数,它使用公式计算两点之间的地球表面距离(使用点的纬度和经度值)。
a = sin²(Δφ/2) + cos φ1 ⋅ cos φ2 ⋅ sin²(Δλ/2)
c = 2 ⋅ atan2(√a, √(1−a))
d = R ⋅ c
中的 “d” 在dLat
代表的增量Δ(又名两个纬度之间的差)。这正是这个函数调用的变量。 dLat
相当于Δφ
,而dLon
相当于Δλ
。
a
变量相当于公式的第一行。
我希望这能回答你的问题。
您可以在这里找到更多的信息:http://www.movable-type.co.uk/scripts/latlong.html