向量
- 平移向量指的是同一个向量,即指向同一个方向就是同一个向量。
- 向量属性:方向、长度。
- 单位向量: a ^ = a ⃗ / ∣ ∣ a ⃗ ∣ ∣ \hat{a} = \vec{a} / ||\vec{a}|| a^=a/∣∣a∣∣
向量求和
(1)几何:首尾相接
(2)笛卡尔(直角)坐标系
默认向量是列向量!
向量点乘dot
-
点乘结果是数!!
-
图形学中应用:比如右下角,都是单位向量,点乘后直接得到夹角。比如光照模型中计算向量的夹角。
-
性质:
-
一个向量投影到另一个向量:
(cos通过a、b点积计算)
计算投影的作用: 把一个向量分解成两个向量
5. 点乘作用:
(1) 计算两个向量有多接近。(点乘结果越接近1,两个向量越接近)(比如金属表面反射,镜面反射周围观测会特别亮,即点乘结果有个范围,在高光区域内,如果离得远就看不到)
(2) 得到向量前与后的信息。(a、b点乘结果大于0;虚线上点乘结果=0)
向量叉积 cross product
- 右手螺旋定则,确定叉乘结果向量方向。
- 用来建立三维空间中直角坐标系。
若 x × y = z,则该坐标系为右手坐标系(课中均为右手坐标系),如opengl中,有 x × y = -z
-
(下行:a 可以写成矩阵形式)
-
图形学中应用:
(1) 判定左右;
(2) 判定内外。
(1) 左图判断左右:
a
⃗
×
b
⃗
\vec{a}\times \vec{b}
a×b 为正,表示 b 在 a 的左侧,
b
⃗
×
a
⃗
\vec{b}\times \vec{a}
b×a 为负,表示 a 在 b 的右侧。
(2) 右图判断P是否在三角形内:AB × AP为正,P在AB左侧;BC × BP为正,P在BC左侧;CA × CP为正,P在AC左侧,,推出P在三角形内。(如果三角形三个点是ACB而不是ABC,即顺时针排列三个点,此时P在三条边的右边,也是在三角形内部)。故只要判断P是不是一直在三条边的左侧或全部在三条边的右侧即可。(三角形光栅化基础,判断像素是不是在三角形内部,再进行着色)(若等于0,自己设置是否算作内部)
6. 定义坐标系:
即可通过投影把任意一个向量分解到三个坐标轴上。
矩阵
-
性质:
-
向量的点乘和叉乘可以写成矩阵形式:
(这样写对旋转推导有用)