What & How & Why

差别

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

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
cg:books:3dprimer_2:chpt_2 [2021/09/01 10:43] – [叉乘的几何解释] codingharecg:books:3dprimer_2:chpt_2 [2021/12/16 13:07] (当前版本) – [Vectors] codinghare
行 1: 行 1:
 ======Vectors====== ======Vectors======
 //3D math primer chapter 2// //3D math primer chapter 2//
-=====+----
 Vector 在数学上和物理上有不同的解释。数学上强调向量是一组数字,物理上强调向量是一个几何实体,并在尽可能的避免用坐标系去表述向量。 Vector 在数学上和物理上有不同的解释。数学上强调向量是一组数字,物理上强调向量是一个几何实体,并在尽可能的避免用坐标系去表述向量。
 ====向量的数学定义==== ====向量的数学定义====
行 135: 行 135:
 {{ :cg:books:3dprimer_2:dot_product_geo_1_2.jpg?250 |}} {{ :cg:books:3dprimer_2:dot_product_geo_1_2.jpg?250 |}}
 可以看出来的是,点乘结果的方向始终是被投影的向量一致的。而当参与点乘的两个向量方向一致的时候,也就是向量求自身在自身上的投影的时候,我们得到的结果实际上是向量本身的 magnitude,即:$$v \cdot v = ||v||$$ 可以看出来的是,点乘结果的方向始终是被投影的向量一致的。而当参与点乘的两个向量方向一致的时候,也就是向量求自身在自身上的投影的时候,我们得到的结果实际上是向量本身的 magnitude,即:$$v \cdot v = ||v||$$
-==量的互换==+==求已知向量的平行/垂直分量==
 假设有单位向量 $\hat a$,任意长度的向量 $b$,用 perp 表示 $b$ 在竖直上的分量,para 表示 $b$ 在水平上的分量。根据前面提到的推论,则有: 假设有单位向量 $\hat a$,任意长度的向量 $b$,用 perp 表示 $b$ 在竖直上的分量,para 表示 $b$ 在水平上的分量。根据前面提到的推论,则有:
 $$b_{para} = \hat a \cdot b = (\hat a \cdot b) \cdot \hat a$$ $$b_{para} = \hat a \cdot b = (\hat a \cdot b) \cdot \hat a$$
行 141: 行 141:
 $$b_{perp} = b - b_{para} = b-(\hat a \cdot b) \cdot \hat a$$ $$b_{perp} = b - b_{para} = b-(\hat a \cdot b) \cdot \hat a$$
 \\ \\  \\ \\ 
 +<WRAP center round info 100%>
 +这一小节实际上是在利用点乘的性质来求已知向量的平行/垂直分量。首先利用点乘的结果是被投影(平行)分量的 magnitude 求出平行分量的长度,再与被投影向量的单位向量相乘得到方向,从而得到投影向量在被投影向量上的分量,也就是平行分量。\\ \\ 
 +得到该分量后,因为向量可以通过自身的水平分量和垂直分量相加得到(三角形法则),因此垂直分量只需要用向量减去水平分量即可。
 +</WRAP>
 +
 ==点乘的第二种几何解释== ==点乘的第二种几何解释==
 假设有单位向量 $\hat a$ 与 $\hat b$,且夹角为 $\theta$,根据点乘的投影解释,可以构造出一个三角形如下图: 假设有单位向量 $\hat a$ 与 $\hat b$,且夹角为 $\theta$,根据点乘的投影解释,可以构造出一个三角形如下图:
行 173: 行 178:
 有意思的是,该结果正好等于 a、b 按平行四边形法则形成的四边形的面积: 有意思的是,该结果正好等于 a、b 按平行四边形法则形成的四边形的面积:
 {{ :cg:books:3dprimer_2:cross_product_geo2.jpg?500 |}} {{ :cg:books:3dprimer_2:cross_product_geo2.jpg?500 |}}
-假设 b 为底,那么 高 $h=||a||sin\theta$,面积的计算结果为 $||b||\cdot||a||sin\theta$,与之前的叉乘的结果正好符合。+假设 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 |}} 
 +====Refs==== 
 +  * [[https://zhuanlan.zhihu.com/p/35897775|向量范数与矩阵范数]]