计算机图形学(一) 向量/矩阵

向量

表示

在这里插入图片描述1. 通常写为 a ⃗ \vec{a} a 或者黑体的 a
2. 或者使用开始和结束的端点表示 A B → \overrightarrow{AB} AB = B - A
3. 向量既有大小又有方向,标量只有大小没有方向
4. 没有绝对的起始位置(向量的大小和方向与它的位置无关)

向量的归一化(vector normalization)

  • 向量的大小表示为 ∣ ∣ a ⃗ ∣ ∣ ||\vec{a}|| a
  • 单位向量
    • 向量的大小为 1
    • 求一个向量的单位向量(向量的归一化): a ^ \hat{a} a^ = a ⃗ \vec{a} a / ∣ ∣ a ⃗ ∣ ∣ ||\vec{a}|| a
    • 单位向量的作用:用来表示方向

向量求和

在这里插入图片描述
在这里插入图片描述

图形学上默认向量是列向量: A = ( x y ) \begin{pmatrix} x \\ y \end{pmatrix} (xy)
转置之后是行向量: A T A^T AT = ( x , y ) \begin{pmatrix} x, y \end{pmatrix} (x,y)
向量的模: ∣ ∣ A ⃗ ∣ ∣ ||\vec{A}|| A = x 2 + y 2 \sqrt{x^2 + y^2} x2+y2

向量点乘(Dot Product)

在这里插入图片描述
a ⃗ ∗ b ⃗ \vec{a} * \vec{b} a b = ∣ ∣ a ⃗ ∣ ∣ ||\vec{a}|| a ∣ ∣ b ⃗ ∣ ∣ ||\vec{b}|| b c o s θ cos\theta cosθ
c o s θ cos\theta cosθ = a ⃗ ∗ b ⃗ ∣ ∣ a ⃗ ∣ ∣ ∣ ∣ b ⃗ ∣ ∣ \frac{\vec{a}*\vec{b}}{||\vec{a}||||\vec{b}||} a b a b
对于单位向量就有:
c o s θ cos\theta cosθ = a ^ ∗ b ^ \hat{a}*\hat{b} a^b^

点乘的属性:
在这里插入图片描述

笛卡尔坐标系下的点乘运算

在这里插入图片描述

点乘在图形学中的作用

  1. 计算两个向量的夹角(比如光源和平面的夹角的 c o s cos cos 值)
  2. 计算一个向量到另一个向量的投影,如下图:
    在这里插入图片描述
  3. 计算两个向量(方向)有多接近(计算出两个向量的 c o s cos cos值)
  4. 分解一个向量为两个相互垂直的向量(利用平行四边形法则)
  5. 在这里插入图片描述
  6. 判定向量是向前的还是向后的
    在这里插入图片描述

    向量的叉乘

    1. 两个向量叉乘的结果是垂直于这两个向量的一个新的向量
    2. 新向量的方向由右手定则确定
    3. 通常用于建立一个坐标系系统
      在这里插入图片描述

叉乘的属性

在这里插入图片描述

叉乘的作用

  1. 判定左和右
  2. 判定内和外
    在这里插入图片描述
    使用 a ⃗ \vec{a} a 叉乘 b ⃗ \vec{b} b ,得到的 Z 是正的,则 b ⃗ \vec{b} b a ⃗ \vec{a} a 的左侧,Z 是负的,表示 b ⃗ \vec{b} b a ⃗ \vec{a} a 的右侧(使用右手螺旋定则)
    在这里插入图片描述
    A B → \overrightarrow{AB} AB , B C → \overrightarrow{BC} BC , C A → \overrightarrow{CA} CA 依次叉乘 A P → \overrightarrow{AP} AP , B P → \overrightarrow{BP} BP , C P → {\overrightarrow{CP}} CP , 得到的垂直于两个向量的向量都是正的,则都依次位于三个向量的左边,则代表在三角形内部。有一个不位于左边则表明在三角形的外部。

点乘与叉乘的联系

实际应用中,可以使用叉乘建立一个直角坐标系,之后就可以将一个任意一个向量分解到坐标系的三个轴上。分解的方法就是使用投影,而计算投影的方法是使用点乘
在这里插入图片描述

矩阵

在这里插入图片描述

矩阵的乘法

在这里插入图片描述

矩阵的属性

  1. 不存在任何交换律,AB 不等于 BA
  2. 结合律和分配律
    • (AB)C = A(BC)
    • A(B + C) = AB + AC
    • (A + B)C = AC + BC

矩阵与向量乘作用

将一个向量当作一个 mx1 的矩阵(列向量)
矩阵在做,向量在右,
变换的核心
比如:将一个点做按 Y 轴对称操作:
( − 1 0 0 1 ) \begin{pmatrix} -1 & 0 \\ 0 & 1\end{pmatrix} (1001) ( x y ) \begin{pmatrix} x \\ y \end{pmatrix} (xy) = ( − x y ) \begin{pmatrix} -x \\ y \end{pmatrix} (xy)

矩阵的转置

矩阵的转置就是将矩阵的行和列互换,比如
( 1 2 3 4 5 6 ) T \begin{pmatrix}1&2\\3&4\\5&6\end{pmatrix}^T 135246T = ( 1 3 5 2 4 6 ) \begin{pmatrix}1&3&5\\2&4&6\end{pmatrix} (123456)

转置的性质

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

单位矩阵和逆矩阵

  1. 对角线方向上(左上到右下)都为 1,其他全为 0,就是单位矩阵
    I 3 ∗ 3 = ( 1 0 0 0 1 0 0 0 1 ) I_{3*3} = \begin{pmatrix}1&0&0\\0&1&0\\0&0&1\end{pmatrix} I33=100010001
  2. 对一个 n 阶方阵 A ,如果存在另一个 n 阶方阵 B,它们满足:AB = BA = I(其中 I 为单位矩阵),那么两矩阵互为逆矩阵。换句话说,A 的逆矩阵为 B ,B 的逆矩阵为 A, 记为 A − 1 A^{-1} A1
  3. 逆矩阵是唯一的

性质

( A B ) − 1 = B − 1 A − 1 (AB)^{-1} = B^{-1}A^{-1} (AB)1=B1A1

正交矩阵

矩阵 A A A 的逆等于矩阵 A − 1 A^{-1} A1 的转置矩阵 A T A^T AT, 那么矩阵 A A A 就是一个正交矩阵

矩阵形式的向量的乘积

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值