向量的数学运算

向量的计算主要借助 “线性代数”

1、特殊向量

零向量:

  1. 向量的所有分量都是0
  2. 几何意义:用于表达参考坐标系的原始点(出发点)
  3. 注意:零向量没有大小没有方向,是一个特殊向量

负向量:

  1. 对于向量的每一个维度产生负数的变化(通俗讲就是每个维度乘以 1
  2. 几何意义:负向量与原始向量的位置一样,但是位移相反
  3. 注意:零向量没有负向量

单位向量:

  1. 长度为1的向量

2、向量大小计算

  1. 方向是我们规定的,但是移动了多少个单位,我们需要精确的计算
  2. 在线性代数中我们称向量的大小计算为“求模”运算
  3. 各个维度上的数平方再相加,将最后的和开方求解;
  4. 求模运算的结果是:一个标量;
  5. 例如:向量 V [x, y, z]
  6. 求模:sqrt( x * x + y * y + z * z);
  7. 几何意义:用来求这个向量的长度(从原点到向量尾的长度)

3、向量的方向

  1. 可以用向量的单位向量表示,便于计算

4、向量与标量的运算

  1. 向量与标量乘法
  2. 向量的各个维度和已有标量值进行相乘,计算结果还是一个向量
  3. 1 2 3)* 5 5 10 15
  4. 向量与标量除法
  5. 5 10 15)/5 1 2 3
  6. 注意:向量与标量只能进行乘除,不能加减
  7. 几何意义:为了实现向量的各个维度同时扩大或缩小。向量缩放因子范围是 0 - 正无穷。如果缩放因子为负表示反方向向量(倒转向量方向放大或缩小)。

5、向量标准化

  1. 有时候我们只关心向量的位移,对于向量的大小不需要关心,这样的形式我们可以将向量的各个维度缩到0 1之间,使向量的长度为 1。去除他的位置特性。这样的表示我们称为“向量标准化”
  2. 公式:V / |V| = Vnormal
  3. 几何意义:为了得到指定向量的方向,不保留向量大小。在计算机图形学中是为了描述一个“法线”法线只有方向没有大小,他是人为虚拟的一个向量。

6、向量加法

  1. 计算方式:两个向量的维度必须一样,两个向量的各个维度相加,得到一个新向量;
  2. 数学意义
  3. 3 4 5)+(7 8 9)= 10 12 14
  4. 几何意义
  5. A向量+B向量=把这个两个向量首尾相连,从起始端指向末端的一个向量

7、向量减法

  1. 计算方式:两个向量的维度必须一样,两个向量的各个维度相减,得到一个新向量;
  2. 数学意义
  3. 3 4 5)-(7 8 9)= (-4 -4 -4
  4. 几何意义
  5. A向量-B向量=从B向量的带箭头的那一端指向A向量带箭头的那一端

8、向量点乘

  1. 写法:a 点乘 b;你在纸上写成一个 “点”
  2. 点乘需要两个维度相同的向量,然后让两个向量的维度相互乘再把所有维度的积加起来;
  3. 几何意义:点乘用于描述两个向量的相似度的,如果点乘结果越大两个向量的方向越相似;
  4. 点乘就是为了求角度的:
  5. a b ||a|| * ||b|| * cos@;
  6. 注意:如果两个向量已经标准化了,a 点乘 b表示两个向量的 cos值,我们对其 acos 得到弧度值,然后用 弧度转度获取角度

9、向量叉乘

  1. A向量 X B向量;两个向量中间的乘号我们应该写成 "X"
  2. 叉乘的结果是一个垂直于这两个向量的新向量。
  3. 方向要用“右手法则”判断(用右手的四指先表示向量a的方向,然后手指朝着手心的方向摆动到向量b的方向,大拇指所指的方向就是向量c的方向)
  4. 数学运算:
  5. x1 x2 y1z2 - z1y2
  6. y1 X y2 = z1x2 - x1z2
  7. z1 z2 z1y2 - y1x2
  8. 叉乘不满足交换律,也不满足结合律;
  9. 几何意义:两个向量叉乘后的结果是垂直于这两个向量的。起始就是为了求得两个向量的垂直线,这个垂直线被标准化后就是我们的法线
  10. |c| = |a x b| = |a| * |b| * sin<theta>

?