音视频开发-向量理解

本文重新探讨线性代数中的向量概念,包括数学定义、向量与标量的区别、维度、位移,以及向量的加法、点乘、叉乘等运算,特别强调在OpenGL中的应用。
摘要由CSDN通过智能技术生成

大学没有好好学习线性代数,无奈只能再次复习。
推荐一本书 《3D数学基础:图形与游戏开发》(https://pan.baidu.com/s/1YZ-xEuHwensh5IBa1DsPoA)

向量

数学定义

对于数学家而言,向量就是一个数字列表,对于程序员而言则是另一种相似的概念-数组

向量与标量

数学上区分向量和标量,“速度”和“位移”是向量,而“速率”和“长度”是标量。

向量的维度

向量的维度就是向量包含的“数”的数目,有一维、二维、三维、四维向量。下列各图分别表示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
图4的 C w C_w Cw表示缩放因子,在OpenGL图像渲染中

位置与位移

向量没有位置,只有大小和方向。
例如:

  • 位移:“向前走三步”,这句话听上去是关于位置的,但其实句子中使用的量表示的是相对位移,而不是绝对位置。这个相对位移由大小(三步)和方向(向前)构成,所以它能用向量表示。
  • 速度:“我们以50英里每小时的速度向北行驶”,这句话描述了一个量,它有大小(50英里每小时)和方向(北),但没有具体位置。“50英里每小时的速度向北”能用向量表示。
    注意:位移、速度与距离、速率是完全不同的两种定义。位移和速度是向量,包含方向,而距离和速率是标量,不指明任何方向。
    在这里插入图片描述
    所以,记住:上图的向量,只有箭头的长度和方向是有意义的,不包括位置。

向量运算

在这里插入图片描述

负向量

向量变负,将得到一个和原向量大小相等,方向相反的向量
在这里插入图片描述

运算法则:

-[x,y] = [-x,-y]
-[x,y,z] = [-x,-y,-z]
-[x,y,z,w] = [-x,-y,-z,-w]

向量大小

在这里插入图片描述

运算法则

加法

在这里插入图片描述
向量a和向量b相加的几何解释为,平移向量,使得向量a的头指向向量b的尾,接着从a的尾向b的头画一个向量。这就是向量加法的“三角形法则”。
在这里插入图片描述

点乘

a ⋅ b = a x b x + a y b y ( a 和 b 是 2 D 向 量 ) a\cdot b = a_x b_x + a_y b_y (a和b是2D向量)

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值