2012-04-24 153 views
0

C中是否有可以计算两点之间的测地距离的库?两点之间的测地距离

+3

第一个结果:http://grass.osgeo.org/programming6/geodist_8c.html – cnicutar 2012-04-24 16:03:39

+0

什么样的精度做你需要什么样的距离? – Christoph 2012-04-24 17:00:03

+0

厘米可能非常好! – user1354178 2012-04-24 20:13:36

回答

0

通常不需要计算高达厘米精度的测地距离,因为您必须将本地地理建模为相同比例。

有两种情况,我能想到这样的地方精度可能期望的:

  • 你在直线距离真正感兴趣的,知道确切的坐标,包括海拔高度
  • 你“重新用玩具模型的工作,并有兴趣的一般属性,不是实用性

在第一种情况,我会从地理坐标变换(φ,λ,h)到地心柱面坐标(r,z,λ)

r = (a²/k + h)·cosφ 
z = (b²/k + h)·sinφ 
λ = λ 

其中

k = √(a²·cos²φ + b²·sin²φ) 

在第二种情况下,我会使用Vincenty's formulae

您可以在my bitbucket account下找到(希望更正)两种算法的C实现。

+0

非常感谢您的建议! – user1354178 2012-05-05 03:15:06