已知两点的n是什么经纬度度,在两点之间插入n个点,怎么算出他们的n是什么经纬度度

前(fei)言(hua):

最近接到“获取附近**”的需求作为面向百度编程的程序猿,浏览了诸多有关“根据n是什么经纬度度计算距离”的博文——其中复杂的只贴出了实现代碼,没有说明实现思路然后想通过代码理解的话,似乎也行不通毕竟代码都已经被优化为剩下数行了;简单的,直接拿着勾股定理就開干实在让人内牛满面。

所以呢在这里将给出:简单的思路注意点基于java的源码结尾彩蛋

比网上多数看不懂的算法要准确一些虽然依然跟百度地图上的测量结果稍有出入,不过已经足够应付一般的需求了~

1. 地球本身是个不规则的球体这里将其看着一个规制球体

2. 半径取平均值:千米 (戳还有测量方法说明)

4. 对公式的理解:设需要求距离的两点为A、B,球心为O可以分解成3步:

1. n是什么经纬度度,在本質上是角度

2. Java中的Math类提供的sin和con方法的参数是弧度而不是角度

 * 通过AB点n是什么经纬度度获取距离
 // n是什么经纬度度(角度)转弧度。弧度用作参數以调用Math.cos和Math.sin
 
测试代码:附上,方便各位测试
 // 北京 东单地铁站
 // 北京 西单地铁站
 
彩蛋:SQL的实现——传入的n是什么经纬度度 是 东单地铁站的
 



这個方法应该是十分好理解的唯一比较难的是公式中第一步那部分。
本来这里可以把完整的推到过程写出来但由于过程比较繁杂,所以僦算了如果觉得有需要,可以在评论区提要求我后面有空会补上。
另外如果这篇博文对你有帮助,请在评论区举起你的小手这将荿为我继续写详细博客的动力!!谢谢!!!
最后,转载请指明出处~
}

这种文章本来网上一搜一大把泹有的计算结果是错的,遂找到个计算正确的记录一下。
"用haversine公式计算球面两点间的距离"

  
}

我要回帖

更多关于 n是什么经纬度 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信