确定一个点在哪个平面上

时间:2018-02-28 19:13:35

标签: linear-algebra

我遇到了一段有趣的遗留代码,我无法理解。

我们使用euler矩阵执行两次旋转,然后乘以原始矢量以确定点(x,y)的新位置。没问题。

但是,下一行代码将旋转矩阵第2行的点积与矢量一起确定点所在平面的哪一侧。为清楚起见,旋转矩阵是围绕x轴旋转然后围绕y轴旋转的乘积,即“组合”矩阵。

我知道如何使用平面和矢量的点积来做到这一点,但是我找不到关于为什么使用欧拉矩阵的第二行有效的参考 - 它确实有效!

谢谢

1 个答案:

答案 0 :(得分:0)

考虑基本轮换:

[p0]   [R00 R01 R02] [q0]
[p1] = [R10 R11 R12] [q1]
[p2]   [R20 R21 R22] [q2]

" y" p(p1)的分量只是R的第二行与q之间的点积。如果是正的,则它位于x-z平面的一侧,如果是负的,则它位于另一侧。如果它为零,它就坐在飞机顶部。 (回想一下,x-z平面包含y为0的所有点。)