使用hasrsine公式来找到C#中两点之间的距离?

时间:2014-11-03 15:11:13

标签: c# math windows-store-apps haversine

所以我试图在C#中复制此页面上的距离公式。

http://www.movable-type.co.uk/scripts/latlong.html

这是两个坐标之间的距离。

这是我的代码

int R = 6371;
double Lat1 = ((Double.Parse(SLat))*(Math.PI/180));
double Lat2 = ((Double.Parse(SLat2)) * (Math.PI / 180));
double deltaOmega = (Double.Parse(SLat) - Double.Parse(SLat2)) * (Math.PI / 180);
double deltaLambda = (Double.Parse(SLong) - Double.Parse(SLong2)) * (Math.PI / 180);

double a = Math.Sin(deltaOmega / 2) * Math.Sin(deltaOmega / 2) 
    + Math.Cos(Lat1) * Math.Cos(Lat2) 
    * Math.Sin(deltaLambda / 2) * Math.Sin(deltaLambda/ 2);
double c = 2* Math.Atan2(Math.Sqrt(a), Math.Sqrt(1-a));

double dis = R * c;

但是我的距离是两位小数。

任何人都可以验证我的方程式翻译是否正确?

0 个答案:

没有答案