我找到了一种在二维this链接中进行三边测量的算法。但公式太复杂了。这里发生了什么?你可以把它分解为点积,跨产品,距离等等吗?
答案 0 :(得分:1)
让 P 成为未知点。 (粗体显示2D矢量。)
写出圆圈1和2的隐式方程式:
( P - P1 )²=d1²
( P - P2 )²=d2²
Substract成员并重新排列:
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规则,或者如果您坚持使用矢量微积分,请按照以下步骤进行操作。
将系统重写为:
A.P = a
B.P = b
使用交叉积 A' = A 计算xy平面中与 A 和 B 垂直的向量/ \ 1z 和 B' = B / \ 1z ,并表达 P 作为这些的线性组合:
P = u。 A' + v。的 B'强>
在简化后,使用 A 和 B 执行点积示:
A.P = a = v。的 A·B'强>
B.P = b = u。的 B.A'强>
请注意 A.B' = A。( B / \ 1z )= 1z。( A / \ B )= - 1z。( B / \ A )= - B。( A / \ 1z )= - B.A'(混合产品)。
总而言之:
P = [( - b。 A + a。 B )/ \ 1z ] / [ 1z。( A / \ B )]
(这是对Cramer结果的重写。)