计算机图形学基础笔记(4.2):探索三维空间中的数学之美
2024-02-17 00:21:34
内容提纲
- 三维空间的数学基础
- 坐标系
- 向量与矩阵
- 几何变换
- 三维空间中的物体表示
- 点、线和面
- 多边形网格
- 曲面表示
- 三维空间中的投影与观察
- 正交投影
- 透视投影
- 视点与观察矩阵
- 三维空间中的光照与阴影
- 光照模型
- 阴影生成算法
- 三维空间中的材质与纹理
- 材质属性
- 纹理映射
文章内容
1. 三维空间的数学基础
三维空间是我们赖以生存的世界,也是计算机图形学的重要舞台。要理解计算机图形学,就必须掌握三维空间的数学基础。
1.1 坐标系
坐标系是三维空间中物体位置的一种数学工具。常用的坐标系有笛卡尔坐标系、极坐标系和球坐标系。
笛卡尔坐标系 是以三个互相垂直的轴构成的坐标系。通常将三个轴分别称为x轴、y轴和z轴。笛卡尔坐标系中的点由三个坐标值表示,分别对应于x轴、y轴和z轴上的投影长度。
极坐标系 是以一个原点和一条射线构成的坐标系。通常将原点称为极点,射线称为极轴。极坐标系中的点由两个坐标值表示,分别对应于极轴上的投影长度和与极轴的夹角。
球坐标系 是以一个原点、一条极轴和一个平面构成的坐标系。通常将原点称为极点,极轴称为极轴,平面称为赤道面。球坐标系中的点由三个坐标值表示,分别对应于极轴上的投影长度、与极轴的夹角和与赤道面的夹角。
1.2 向量与矩阵
向量是具有大小和方向的量。矩阵是表示向量集合的数学工具。向量和矩阵在计算机图形学中有着广泛的应用。
向量 可以用一个有序数元组表示。例如,三维空间中的向量可以表示为(x, y, z)。向量的长度等于其各个分量平方和的平方根。向量的方向由其分量决定的单位向量表示。
矩阵 是用数字或符号排列成的矩形阵列。矩阵可以表示向量集合,也可以表示线性变换。矩阵的行列式等于其所有元素的代数余子式的和。
1.3 几何变换
几何变换是将一个物体从一个位置移动到另一个位置的一种数学操作。几何变换包括平移、旋转、缩放和剪切。
平移 是将一个物体沿直线移动一定距离。平移可以用一个平移矩阵表示。
旋转 是将一个物体绕一个轴旋转一定角度。旋转可以用一个旋转矩阵表示。
缩放 是将一个物体放大或缩小一定比例。缩放可以用一个缩放矩阵表示。
剪切 是将一个物体沿某个方向拉伸或压缩。剪切可以用一个剪切矩阵表示。
2. 三维空间中的物体表示
三维空间中的物体可以由点、线、面、多边形网格和曲面等元素表示。
2.1 点、线和面
点是三维空间中的一个位置。线是连接两个点的连续集合。面是连接三个或更多个点的连续集合。
点、线和面是构成三维空间中物体的基本元素。
2.2 多边形网格
多边形网格是三维空间中物体的一种常见表示方法。多边形网格由一系列多边形组成,每个多边形由三个或更多个顶点组成。多边形网格可以近似表示三维空间中的复杂物体。
2.3 曲面表示
曲面表示是三维空间中物体的一种另一种常见表示方法。曲面表示可以使用参数方程、隐式方程或细分曲面等方法表示。曲面表示可以准确表示三维空间中的复杂物体。