C中是否有一个库可以计算两点之间的测地线距离?
问问题
2123 次
2 回答
0
通常不需要计算精确到厘米的测地线距离,因为您必须将本地地理建模到相同的比例。
有两种情况我可以想到可能需要这种准确性:
- 您实际上对直线距离感兴趣并且知道准确的坐标,包括海拔高度
- 您正在使用玩具模型并且对一般属性感兴趣,而不是实际适用性
在第一种情况下,我会从地理坐标转换(φ,λ,h)
为地心圆柱坐标(r,z,λ)
r = (a²/k + h)·cosφ
z = (b²/k + h)·sinφ
λ = λ
在哪里
k = √(a²·cos²φ + b²·sin²φ)
在第二种情况下,我会使用Vincenty's formulas。
您可以在我的 bitbucket account下找到(希望是正确的)这两种算法的 C 实现。
于 2012-04-26T19:14:26.623 回答
0
是的,我已将 GeographicLib 中的测地线例程移植到 C。请参阅 http://geographiclib.sourceforge.net/html/C/index.html
于 2012-12-18T20:21:19.847 回答