确定一个点在哪个平面上

问题描述 投票:0回答:1

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

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

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

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

谢谢

linear-algebra
1个回答
0
投票

考虑基本轮换:

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

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

© www.soinside.com 2019 - 2024. All rights reserved.