线性代数复习
😚

线性代数复习

Tags
GAMES101
Published
Published May 11, 2022
Author

点乘 Dot (scalar) Product

notion image
对于单位向量,模都是 1,因此可以化简成:
符合交换律、结合律、分配律

Dot Product in Cartesian Coordinates 笛卡尔坐标系

Component-wise multiplication, then adding up
In 2D
In 3D

Dot Product in Graphics

  • Find angle between two vectors (e.g. cosine of angle between light source and surface)
  • Finding projection of one vector on another
notion image
notion image
notion image

向量叉乘 Cross (vector) Product

notion image
  • Cross product is orthogonal to two initial vectors
  • Direction determined by right-hand rule
  • Useful in constructing coordinate systems (later)
 
向量叉乘得到的都是向量。

Properties

notion image

Cartesian Formula?

下面的知道就行
向量叉乘也可以写成矩阵形式:
中间的是 dual matrix of vector a,向量 a 与向量 b 的叉乘可以化为 a 的 dual matrix 与向量 b 的点乘

Cross Product in Graphics

notion image
notion image
  1. 判断左和右:叉乘可以判断一个向量是否在另一个向量左侧还是右侧(二维平面),右手坐标系下,如果向量 a 叉乘向量 b 结果 z 为正,说明 b 在 a 的左侧。
  1. 判断内和外:判断一个点在不在中间,可以顺时针看 ABC,对向量 AB 和 AP 叉乘,BC 和 BP,CA 和 CP,如果结果都同为正或同为负,说明点 P 在三个向量的同一侧,即使是逆时针 ACB 这么算向量叉乘,如果点 P 在三角形中,三个叉乘结果也应该是相同符号的(同是正或同是负)。

Orthonormal Bases / Coordinate Frames

  • Important for representing points, positions, locations
  • Often, many sets of coordinate systems
    • Global, local, world, model, parts of model (head, hands, …)
  • Critical issue is transforming between these systems/bases
    • A topic for next week

Orthonormal Coordinate Frames 正交坐标系

notion image
三个单位向量。点乘结果都是 0,互相垂直。这样得到的结果就是右手的直角坐标系,三维的。
这样我们就可以把向量分解到三个轴上去,利用投影,投影用点积来算。
由于都是单位向量,因此点乘结果可以立刻得到 投影的长度 ( p 点乘 u 就等于 p 的长度乘以 cosθ)。
因此直角坐标系很好用。

Matrices 矩阵

  • Magical 2D arrays that haunt in every CS course
  • In Graphics, pervasively used to represent transformations
    • Translation, rotation, shear, scale (more details in the next lecture)

What is a matrix

Array of numbers (m × n = m rows, n columns)
Addition and multiplication by a scalar are trivial: element by element

Matrix-Matrix Multiplication 矩阵的乘积

什么是能乘的矩阵?
#(number of) columns in A must = # rows in B
(M x N) (N x P) = (M x P)
第一个矩阵的列数必须和第二个矩阵的行数相同。
Element in the product is the dot product of row i from A and column j from B
例如我们要得到 26 那个位置,二行四列的数,就从第一个矩阵的第二行,第二个矩阵的第四列,两个向量找到,求点积即可。 5*4+2*3=26

Properties

  • Non-commutative 没有任何交换律(某些情况可以) (AB and BA are different in general)
  • Associative and distributive 有结合律和分配律

Matrix-Vector Multiplication

如果向量是列向量,矩阵在左边,向量在右边,就有意义了。
  • Treat vector as a column matrix (m×1)
  • Key for transforming points (next lecture)
 
  • Official spoiler: 2D reflection about y-axis

Transpose of a Matrix

Switch rows and columns (ij -> ji)
转置就是行和列互换。
性质:乘积的转置,要把顺序调过来,分别做转置

Identity Matrix and Inverses

单位矩阵,只有对角线有非零的元素,左上到右下。
矩阵的逆
逆矩阵的运算和转置的运算很相似,相当于先换位置,分别求逆,再相乘

Vector multiplication in Matrix form

向量的点乘和叉乘都可以写成矩阵形式。
点乘可以写成向量 a 转置和向量 b 相乘,得到的刚好是一个数。
Dot product?
叉乘也能写成矩阵形式,A^* dual matrix,通过这个矩阵乘以向量 b,就是叉乘的结果。
旋转的一个推导上,这步挺有用的。
Cross product?