3D数学基础:图形和游戏开发(第2版) 第一章 笔记

3D数学基础:图形和游戏开发(第2版) 第一章 笔记

供参考和备忘用

笛卡尔坐标系

一维数学

数的分类

graph LR 复数-->实数; 复数-->虚数; 实数-->有理数; 实数-->无理数; 虚数-->纯虚数; 虚数-->非纯虚数; 有理数-->整数; 有理数-->分数; 整数-->自然数; 自然数-->正整数; 自然数-->0; 整数-->负整数; 分数-->正分数; 分数-->负分数; 无理数-->正无理数; 无理数-->负无理数;

实数(real number)

实数分为有理数和无理数两大类,实数和数轴上的点一一对应。

有理数(rational number)

有理数的英文是 rational number,这个词来源于古希腊,其英文词根为 ratio,比率的意思。简单来说,有理数就是一个整数与另一个整数的比。整数可以看做是分母为1的分数。有理数的小数部分是有限或无限循环的数(如,\(\frac{1}{3}\))。

无理数(irrational numbers)

无理数,也称为无限不循环小数(如,π),不能写作两整数之比。

分数(fraction)

上面把分数分为了正分数和负分数,但还可以分为:真分数和假分数。
真分数(Proper Fraction):分子比分母小。
假分数(Top-heavy/Improper Fraction):分子比分母大。

计算机图形学第一定律

如果它看起来正确,那就是对的。

二维笛卡尔空间

二维笛卡尔坐标空间就是我们常说的直角坐标系,二维笛卡尔坐标空间是可以无限延伸的。二维笛卡尔坐标空间由以下两条信息定义:

  • 每个二维笛卡尔坐标空间都有一个特殊的位置,称为原点(Origin),它是坐标的中心。
  • 每个二维笛卡尔坐标空间都有两条直线通过原点,每条线都称为轴(Axis),并且可以在两个相反的方向上无限延伸。

三维笛卡尔空间

左手坐标系

X轴的正方向指向右边,Y轴的正方向指向上边,Z轴的正方向指向前面(屏幕里面)。

右手坐标系

X轴的正方向指向右边,Y轴的正方向指向上边,Z轴的正方向指向你自己(屏幕外面)。

左手坐标系与右手坐标系的转换

交换一个轴的正负端即可。

左旋坐标系

首先左手握拳,然后竖起大拇指,大拇指指向旋转轴的正方向(正值端);此时,围绕旋转轴的正向旋转方向就是其它四个手指卷曲的方向。在左手坐标系中,从旋转轴的正向看正向旋转的方向是顺时针的。

右旋坐标系

首先右手握拳,然后竖起大拇指,大拇指指向旋转轴的正方向(正值端);此时,围绕旋转轴的正向旋转方向就是其它四个手指卷曲的方向。在右手坐标系中,从旋转轴的正向看正向旋转的方向是逆时针的。

一些零散的基础知识介绍

求和和求积的表示法

求和表示法(Summation Notaion)

求和表示法是写出事物列表总和的简写方法。有点像 for 循环。
下方的求和公式表示:\(a_i\)\(i\)开始取数,一直取到n,全部加起来。

\[\sum_{i=1}^n a_i = a_1+a_2+...+a_n \]

  • 求和符号:\(\sum\),也称为西格玛符号,因为看起来像E的符号(\(\Sigma\))其实是希腊字母sigma的大写版本。
  • 求和符号下方的变量 \(i\) 称为索引变量(Index Variable),表示\(a\)\(i\)开始取数。
  • 求和符号的上方 \(n\) 表示\(a\)取数结束的位置。

参考:https://baike.baidu.com/item/∑/1233796

求积表示法(Quadrature Notation)

与上方求和的方式类似,只是把求和变成了求积,把符合\(\Sigma\)变成了\(\Pi\)

\[\prod_{i=1}^n a_i = a_1 \times\ a_2 \times\ ... \times\ a_n \]

参考:https://baike.baidu.com/item/∏

区间符号

闭区间(Closed Interval)也称为包含(Inclusive)区间,用” \([\) ”和” \(]\) ”表示。
开区间(Open Interval)也称为排除(Exclusive)区间,用” \((\) ”和” \()\) ”表示。

  • \([a,b]\):表示所有\(x\)的取值都满足:\(a \leq\ x \leq\ b\)
  • \((a,b)\):表示所有\(x\)的取值都满足:\(a < x < b\)
  • \([a,b)\):表示所有\(x\)的取值都满足:\(a \leq\ x < b\)
  • \((a,b]\):表示所有\(x\)的取值都满足:\(a < x \leq\ b\)

角度、度数和弧度

角度可以用度数(Degree)和弧度(Radian)表示。
一度(\(1^\circ\)):表示旋转\(1/360\)\(360^\circ\)表示旋转完整的一圈。
一弧度(\(1_{rad}\)):表示弧长等于半径的长度所对的圆心角,所有\(2\pi\)表示一个完整的圆周。

参考:https://baike.baidu.com/item/弧度

度数与弧度的互相转换

一个完整的圆可以用弧度\(2\pi\)表示,也可以用度数\(360^\circ\)表示,所以,\(2\pi = 360^\circ\)

  • 弧度转角度

\(1^\circ = (2\pi / 360)_{rad}\)
=> \(角度值 = (\pi / 180) \times\ 弧度值\)

  • 角度转弧度

\(1_{rad} = (360 / 2\pi)^\circ\)
=> \(弧度值 = (180 / \pi) \times\ 角度值\)

数字360

数字360是一个相对随意的选择,可能源于原始日历,例如波斯日历,将一年分为360天。此错误从未更正为365,因为数字360非常方便,数字360拥有多达22个的整除数(不算它自己和1)。这意味着很多情况下都可以均匀的分360而不需要分数,这对于早期文明来说显然是一件好事。早在公元前1750年,巴比伦人就设计了一个六十进制的数字系统。数字360也足够大,使得在许多情况下精确到最接近的整数度数就已经足够了。

三角函数

在一个直角三角形中,斜边为:\(r\),其中一条直角边为:\(x\),另一条直角边为:\(y\),直角边\(x\)与斜边\(r\)的夹角为:\(\theta\),则:

  • 正弦:\(sin\theta = {y} / {r}\)(对边 / 斜边)
  • 余弦:\(cos\theta = {x} / {r}\)(邻边 / 斜边)
  • 正切:\(tan\theta = y / x\)(对边 / 邻边)
  • 正割:\(sec\theta = {r} / {x}\)(斜边 / 邻边)
  • 余割:\(csc\theta = {r} / {y}\)(斜边 / 对边)
  • 余切:\(cot\theta = {x} / {y}\)(邻边 / 对边)

可推导出:

\(sin\theta = \dfrac{1}{csc\theta}\)

\(cos\theta = \dfrac{1}{sec\theta}\)

\(tan\theta = \dfrac{1}{cot\theta} = \dfrac{sin\theta}{cos\theta}\)

参考:https://baike.baidu.com/item/三角函数/1652457

三角函数的恒等式

对称性相关的基本恒等式
  • \(sin(-\theta) = -sin\theta\)
  • \(cos(-\theta) = cos(\theta)\)
  • \(tan(-\theta) = -tan\theta\)
  • \(sin(\frac{\pi}{2} - \theta) = cos\theta\)
  • \(cos(\frac{\pi}{2} - \theta) = sin\theta\)
  • \(tan(\frac{\pi}{2} - \theta) = cot\theta\)
毕达哥拉斯定理

也就是我们常说的:勾股定理。表示在直角三角形中,两条直角边的平方的和等于斜边的平方。

\[a^2 + b^2 = c^2 \]

毕达哥拉斯定理在单位圆中,可以导出以下恒等式:

  • \(sin^2\theta + cos^2\theta = 1\)
  • \(1 + tan^2\theta = sec^2\theta\)
  • \(1 + cot^2\theta = csc^2\theta\)
两角的和与差恒等式
  • \(sin(\alpha+\beta) = sin\alpha \times\ cos\beta + cos\alpha \times\ sin\beta\)
  • \(sin(\alpha-\beta) = sin\alpha \times\ cos\beta - cos\alpha \times\ sin\beta\)
  • \(cos(\alpha+\beta) = cos\alpha \times\ cos\beta - sin\alpha \times\ sin\beta\)
  • \(cos(\alpha+\beta) = cos\alpha \times\ cos\beta + sin\alpha \times\ sin\beta\)
  • \(tan(\alpha+\beta) = \dfrac{tan\alpha + tan\beta}{1 - tan\alpha \times\ tan\beta}\)
  • \(tan(\alpha-\beta) = \dfrac{tan\alpha - tan\beta}{1 + tan\alpha \times\ tan\beta}\)

参考:https://baike.baidu.com/item/三角函数/1652457

正弦定理

在任意\(\Delta ABC\)三角形中,角\(A\)\(B\)\(C\)所对的边长分别为\(a\)\(b\)\(c\),三角形外接圆的半径为\(R\),则有:

\[\dfrac{a}{sinA} = \dfrac{b}{sinB} = \dfrac{c}{sinC} = 2R \]

参考:https://baike.baidu.com/item/正弦定理/2657575

余弦定理

在任意\(\Delta ABC\)三角形中,角\(A\)\(B\)\(C\)所对的边长分别为\(a\)\(b\)\(c\) ,则有:

  • \(a^2 = b^2 + c^2 - 2 \times\ b \times\ c \times\ cosA\)
  • \(b^2 = a^2 + c^2 - 2 \times\ a \times\ c \times\ cosB\)
  • \(c^2 = a^2 + b^2 - 2 \times\ a \times\ b \times\ cosC\)

参考: https://baike.baidu.com/item/余弦定理

posted @ 2021-01-23 18:20  路真  阅读(753)  评论(0编辑  收藏  举报