What & How & Why

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
后一修订版两侧同时换到之后的修订记录
cg:books:3dprimer_2:chpt_2 [2021/09/01 10:31] – [叉乘的几何解释] codingharecg:books:3dprimer_2:chpt_2 [2021/09/01 11:12] – [叉乘结果的方向] codinghare
行 169: 行 169:
 Cross product  结果会产生一个新的向量,该向量与参与叉乘的两个向量分别垂直: Cross product  结果会产生一个新的向量,该向量与参与叉乘的两个向量分别垂直:
 {{ :cg:books:3dprimer_2:cross_product_geo1.jpg?400 |}} {{ :cg:books:3dprimer_2:cross_product_geo1.jpg?400 |}}
 +新向量的 magnitude 按如下公式计算:
 +$$||a \times b||=||a||||b||sin\theta$$
 +有意思的是,该结果正好等于 a、b 按平行四边形法则形成的四边形的面积:
 +{{ :cg:books:3dprimer_2:cross_product_geo2.jpg?500 |}}
 +假设 b 为底,那么 高 $h=||a||sin\theta$,面积的计算结果为 $||b||\cdot||a||sin\theta$,与之前的叉乘的结果正好符合。\\ \\
 +当 a、b 平行的时候,$sin\theta = sin(0) = 0$,因此两个平行向量的叉乘结果为一个**零向量**。几何上来说,因为零向量垂直于任意向量,因此可以解释该代数计算结果。
 +==叉乘结果的方向==
 +叉乘结果的方向根据坐标系的不同会有不同的计算方式。一般的方法是将参与运算的第二向量的尾部至于第一向量的头部,通过该方式来判断第一向量的旋转方向。在**左手坐标系**中:
 +  * 如果是**顺时针**方向,叉乘结果**指向我们自己**
 +  * 如果是**逆时针**方向,叉乘结果**指向屏幕里边**
 +**右手坐标系的结果与上述的结果完全相反**。
 +{{ :cg:books:3dprimer_2:cross_product_geo3.jpg?400 |}}
 +如果指定 $\vec{x},\vec{y},\vec{z}$ 为与坐标轴方向相同的单位向量,那么无论什么坐标系都适用于以下规则:
 +{{ :cg:books:3dprimer_2:cross_product_geo4.jpg |}}
 +===向量运算的性质===
 +{{ :cg:books:3dprimer_2:linear_algebra_identies.jpg |}}