1
var R = 6371e3; // metres 
var φ1 = lat1.toRadians(); 
var φ2 = lat2.toRadians(); 
var Δφ = (lat2-lat1).toRadians();
 var Δλ = (lon2-lon1).toRadians(); 

var a = Math.sin(Δφ/2) * Math.sin(Δφ/2) + Math.cos(φ1) * Math.cos(φ2) * Math.sin(Δλ/2) * Math.sin(Δλ/2); 

var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 

var d = R * c;

在此代码公式中,此代码用于 JavaScript。但无论如何,原始公式中也使用了 a 和 c。他们的意思是什么?

4

1 回答 1

1

实际上,c是两点之间的角距离(以弧度为单位),a是两点之间弦长一半的平方。

PS 见这里

于 2017-05-26T04:47:59.480 回答