0

我在这个链接中找到了一种在 2-D 中进行三边测量的算法。但是公式太复杂了。这里发生了什么?你能把它分解成点积叉积距离等术语吗?

4

1 回答 1

1

P为未知点。(粗体表示 2D 向量。)

写出圆 1 和 2 的隐式方程:

( P - P1 )² = d1²

( P - P2 )² = d2²

按成员减去并重新排列:

2.(P2 - P1)。P = d1² - d2² + P2 ² - P1 ²

与圆圈 1 和 3 类似:

2.(P3 - P1)。P = d1² - d3² + P3 ² - P1 ²

仔细观察,您会注意到这形成了一个包含两个未知数的两个线性方程组:

2.(X2 - X1).X + 2.(Y2 - Y1).Y = d1² - d2² + P2 ² - P1 ²

2.(X3 - X1).X + 2.(Y3 - Y1).Y = d1² - d3² + P3 ² - P1 ²

使用Cramer 规则,或者如果您坚持使用向量微积分,请按以下方式计算。

将系统改写为:

AP = 一个

BP = b

在 xy 平面上计算垂直于AB的向量,使用叉积A' = A /\ 1zB' = B /\ 1z,并将P表示为这些的线性组合:

P = 你。A' + v 。乙'

用AB进行点积简化后得到:

AP = a = v。AB'

BP = b = u。巴'

注意AB' = A. ( B /\ 1z ) = 1z。( A /\ B ) = - 1z。( B /\ A ) = - B. ( A /\ 1z ) = - BA' (混合产品)。

总而言之:

P = [ (- b. A + a. B ) /\ 1z ] / [ 1z. ( A /\ B )]

(这是对克莱默结果的重写。)

于 2014-05-21T08:09:56.963 回答