1

如何使用非基数向量将一组 3D 点 (x1,y1,z1...) 正交投影到二维空间 (x1,y1...) 以表示要折叠的轴?我环顾四周,找不到满意的答案,我的线性数学手册只有平面投影,而不是二维空间的投影,许多与投影有关的答案要么是透视,要么是基轴,这是我需要的原因这是计算坠落物体上的空气阻力,我的向量是物体的速度。

4

1 回答 1

2

诀窍是使用基数向量,因为它使这变得微不足道。大多数 3d 软件包背后的想法是,相机始终以基本方向(通常是 -z)的方向定向。世界被改变以匹配相机。

那么你如何处理非主要方向呢?您以相同的方式处理它们,只是将世界转换为相机的基本空间。所以你要做的是为平面形成一个矩阵,该平面的法线为负 z。Y和x轴是彼此和z的任意正交单位向量。然后身体通过逆矩阵转换到相机空间的基数空间。最终结果是一个对齐的 3d 空间,因此读取前 2 个坐标会产生您的答案,并且在透视的情况下,您仍然需要将点与它们的 w 值分开。

我制作的一个旧视频示例,可视化了透视的所有步骤,可以在这里找到(2.5M Quicktime 电影)

从本质上讲,这只是一个选择你认为好的参考框架的问题。它与您只是缺少具有分层转换链的不明显部分的计算相同。

于 2013-01-11T10:23:48.490 回答