gpt4 book ai didi

asp.net - 按纬度和经度查找距离

转载 作者:行者123 更新时间:2023-12-01 13:04:00 25 4
gpt4 key购买 nike

我只是被困在奇怪的计算中。

我试图通过使用本网站中提到的这个公式按纬度和经度找到距离。

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

当我用计算器做的时候,一切都很好,但是当我开始以编程方式做时,结果会有所不同。

这是我的代码部分

lat = Convert.ToDouble( (s3[a]));
longt =Convert.ToDouble( (s4[a]));
Avg_lat = pc._Latitude - lat;
Avg_longt = pc._Longitude - longt;


a_hold =( Math.Sin(Avg_lat / 2) * Math.Sin(Avg_lat / 2) )+ (Math.Cos(pc._Latitude) * Math.Cos(lat)) * (Math.Sin(Avg_longt / 2) * Math.Sin(Avg_longt / 2));
c_hold = 2 * Math.Atan2(Math.Sqrt(a_hold), Math.Sqrt(1 - a_hold));
// c_hold = (c_hold * 180) / 3.12;
distance = 6371 * c_hold;

问题是这里的数学函数以弧度计算我想要的度数。所以我刚刚找到了一个将弧度转换为度数的公式,但该公式无法正确转换计算。

我只是很困惑该怎么做因为没有任何其他选项可以将弧度转换为度数..

最佳答案

您是否在所有必要的地方正确转换?正确的弧度公式是乘以 (180.0 / Math.PI)度到弧度的公式是乘以 (Math.PI / 180.0) .

您需要对 Math.Sin 的参数进行度到弧度的转换。和 Math.Cos .您需要对 Math.Atan2 的返回值进行弧度到度的转换。如果您尝试在度模式下模拟科学计算器的输出,但您链接到的网页中的公式表示不这样做(仅转换输入)。

关于asp.net - 按纬度和经度查找距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4173493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com