线性代数回顾

638 阅读1分钟

向量

  • 通常记为a\vec{a}或者a;
  • AB=BA\vec{AB}=B-A;
  • 有两个重要的属性: 方向和长度;
  • 没有绝对的开始位置;
  • 向量的长度记为a||\vec{a}||;
  • 单位向量:
    • 长度为1
    • a^=aa\hat{a}=\frac{\vec{a}}{||\vec{a}||}
    • 被用作表示方向

向量相加

  • 几何: 平行四边形法则和三角形法则
  • 算术: 坐标相加

笛卡尔坐标

  • 使用X和Y表示向量(通常是orthogonal unit)

    A=(xy)A=\begin{pmatrix} x \\ y \end{pmatrix}
    AT=(x,y)A^T = (x, y)
    A=x2+y2||A|| = \sqrt{x^2 + y^2}

向量乘法

  • 点乘

ab=abcosθ\vec{a} \cdot \vec{b} = ||\vec{a}||||\vec{b}||cos\theta
cosθ=ababcos\theta = \frac{\vec{a} \cdot \vec{b}}{||\vec{a}||||\vec{b}||}

对于单位向量

cosθ=a^b^cos\theta = \hat{a} \cdot \hat{b}
  • 性质
ab=ba\vec{a} \cdot \vec{b} = \vec{b} \cdot \vec{a}
a(b+c)=ab+ac\vec{a} \cdot (\vec{b} + \vec{c}) = \vec{a} \cdot \vec{b} + \vec{a} \cdot \vec{c}
(ka)b=a(kb)=k(ab)(k\vec{a}) \cdot \vec{b} = \vec{a} \cdot (k\vec{b}) = k(\vec{a} \cdot \vec{b})

在笛卡尔坐标系中点乘

  • 逐元素相乘,然后相加

-2D

ab=(xaya)(xbyb)=xaxb+yayb\vec{a} \cdot \vec{b} = \begin{pmatrix} x_a \\ y_a \end{pmatrix} \cdot \begin{pmatrix} x_b \\ y_b \end{pmatrix} = x_ax_b + y_ay_b

-3D

ab=(xayaza)(xbybzb)=xaxb+yayb+zazb\vec{a} \cdot \vec{b} = \begin{pmatrix} x_a \\ y_a \\ z_a \end{pmatrix} \cdot \begin{pmatrix} x_b \\ y_b \\ z_b \end{pmatrix} = x_ax_b + y_ay_b + z_az_b

点乘在图形学中的应用

  • 两个向量之间的夹角(例如,光源和平面之间夹角的余弦值)

  • 一个向量在另一个向量上的投影

  • 衡量两个方向的接近程度

  • 分解一个向量

  • 决定前和后

投影

  • b\vec{b}_{\perp}: b\vec{b}a\vec{a}上的投影

    • 因为b\vec{b}_{\perp}一定沿着a^\hat{a},所以

      b=ka^\vec{b}_{\perp} = k\hat{a}
    • k的大小

      k=b=bcosθk=||\vec{b}_{\perp}||=||\vec{b}||cos\theta

向量的叉积

  • 叉乘正交与两个初始向量
  • 方向通过右手螺旋定理
  • 在建立坐标系中非常有用

  • 笛卡尔坐标系下

叉乘在图形学中的应用

  • 决定左和右
  • 决定内和外

Orthonormal Coordinate Frames

矩阵

  • 2维数组

  • 在图形学中,被用作表示变换(transformations)

    Translation, rotation, shear, scale

  • m×nm \times n = m行,n列

    (135204)\begin{pmatrix} 1 & 3 \\ 5 & 2 \\ 0 & 4 \end{pmatrix}
  • 相加和相乘一个标量,是逐元素与标量相加或者相乘

矩阵乘法

  • (M×NM \times N)(N×PN \times P) = (M×PM \times P)

  • 相乘结果,元素(i, j),行i来自A,列j来自B

  • 性质:

    • 无交换律

    • 其他性质

转置

  • 性质

    (AB)T=BTAT(AB)^T = B^TA^T

闫令琪 <<现代计算机图形学入门>>