第二节课:A Swift and Brutal(向量与线性代数)
目录
第二节课:A Swift and Brutal(向量与线性代数)
Vectors(向量)
向量的长度
单位向量= 向量/向量的长度 (代表方向)
列向量
转置变成行向量
向量点乘: 得到的结果为数值
(1)
(2)
(3)如果都为单位向量:
点乘的运算法则:
2维点乘:
3维点乘:
向量b投影到向量a上:
向量点乘作用 :
判断两个向量是接近,远离还是垂直,根据向量间的角度,即两向量之间点乘的值
- 若为正数 : 接近
- 若为负数 : 远离
- 若为0 : 垂直
向量叉乘: 得到的结果为向量
使用右手定则, 四指方向为a , 螺旋方向为b ,拇指方向为叉乘结果
- a×b : (螺旋大拇指向上)
- b×a : (螺旋大拇指向下)
运算法则:
叉乘作用:
(1)判断一个向量a在另一个向量b的哪边
判断向量b在向量a左边,叉乘结果为正数 :
向量a在向量b右边,叉乘结果为负数 :
(2)判断一个点是否在图形内(一般用于判断像素是否在区域内,然后考虑着色)
(右手螺旋定则) AB×AP = 正数 (所以AP在AB左边)
BC×BP = 正数 (所以BP在BC左边)
CA×CP = 正数 (所以CP在CA左边)
故判断出P在三角形ABC里面,(同理,都在右边也成立)
反之,有一个叉乘结果不同于其他叉乘结果,则P在三角形外面.
Matrix(矩阵):
矩阵a(M,N) × 矩阵b(N,P) = 矩阵c(M,P)
a(3,2) , b(2,4) , c(3,4)
c[第2行,第4列]=a[第2行]各元素 依次乘以 b[第4列]各元素后相加
比如 : 5*4 + 2*3 = 26
性质 : 不存在交换律(不交换顺序)
矩阵转置:
(1)
(2)
单位矩阵 与 矩阵互逆:
向量点积转换为矩阵:
向量乘积转换为矩阵: