2011-02-25 94 views
1

当附近3处附近的经纬度信息以及距离地点的距离是多少时,我怎样计算出一个地方的纬度经度? (g1,y1),(x2,y2)和(x3,y3)三个地方。设D分别距离A,B和C的距离为k1,k2和k3-km。如何确定D的纬度和经度?附近地点的经纬度位置

如果所有这些点,A,B,C和D位于一个平面上,则可以通过确定三个圆的交点,分别来自A,B和C,半径分别为k1,k2和k3。但是,如何确定位置,当点在球体上而不是在圆上?

+0

k1,k2,k3表示球体表面或弦距离? – jelbourn 2011-02-25 22:21:29

+0

是的,k1,k2和k3是球体表面上的距离。 – imsc 2011-02-26 13:06:37

回答

0

我会假设k1,k2,k3是球体上的距离。

您或许可以通过使用a special case of the Vincenty formula来最精确地解决此问题。用你的三组值x,y和k,你可以建立一个方程组来求解第四点的纬度和经度。解决这个系统由于其复杂性可能会非常棘手,但可能有计算工具可以执行这样的解决方案。

1

与平面开始,这里是一个替代方法您推荐了3圈:

  • 你既然知道A,B和C的坐标,就可以计算出AB,AC和BC的长度。
  • 可以用X标记我们想要找到的点。
  • 我们知道AX = k1,BX = k2和CX = k3
  • 现在画出3个三角形:ABX,ACX,EDX。我们知道所有边的长度,因此我们可以计算角度。
  • 知道所有的坐标,长度和角度,我们可以计算出X.

的坐标几乎可以使用相同的想法sphere-。但是:

  • 坐标应该在纬度/经度弧度
  • 距离应该使用大圆距离公式来计算。请参阅Aviation Formulary
  • 三角形总角度不是180 - 它是180和540之间
  • 知道边缘lenghts,角度可以使用spherical law of cosines
  • 现在,坐标X的可以计算来计算。

需要一些时间才能习惯使用spherical trigonometry,但这是解决此类问题的最佳工具。