计算机图形学是一门涵盖广泛的学科,它涉及到计算机如何创建、处理和显示图像。这份全美经典复习资料摘录了《计算机图形学》的一些关键概念,包括几何变换、投影以及在二维视平面上呈现三维物体的方法。
1. **几何变换**:在计算机图形学中,几何变换是将空间中的点或对象从一个坐标系移动到另一个坐标系的过程。常见的几何变换包括平移(Translation)、旋转(Rotation)、缩放(Scaling)和剪切(Shear)。例如,点P1=(350, 70, -300)通过一个矩阵M_per进行投影变换,计算出P1'=(200, 40, 0),这涉及到坐标轴的标准化和视点到视平面的距离处理。
2. **投影**:投影是将三维空间中的对象映射到二维平面上的过程,通常用于模拟人眼观察三维世界的方式。这里使用的是平行投影(Parallel Projection),其中LookFrom点(0, 0, 400)代表观察者的位置,xyz view plane表示观察方向。对于点P1、P2和P3,分别应用相同的投影矩阵M_per得到它们在视平面上的投影点P1'、P2'和P3'。
3. **视平面上的三角形投影**:给定三个顶点P1、P2和P3构成的三角形,通过投影变换将其投射到视平面上,最终得到的投影点分别是P1'=(200, 40, 0)、P3'=(70, 70, 0)和P2'=(160, 60, 0)。这些点构成了三角形在视平面上的表示,展示了三维物体在二维屏幕上的呈现方式。
4. **坐标转换**:在计算投影时,每个点的坐标都经过了一个4x4的投影矩阵,这个矩阵通常包含了平移、缩放和旋转等多种变换,确保了点能够在正确的坐标系统中正确地被表示出来。这里的矩阵M_per就是执行这种转换的关键工具。
5. **齐次坐标**:在计算机图形学中,通常使用齐次坐标来表示三维点,因为它允许通过额外的一个维度方便地进行变换,如透视除法。每个点P(x, y, z)在齐次坐标下表示为P'(x, y, z, 1),这样可以方便地处理无限远的点和平行线。
6. **视图空间与设备空间**:视图空间是根据观察者的视角定义的空间,而设备空间是最终图像将被渲染的像素坐标空间。在这个例子中,视平面上的点P1'、P2'和P3'就是位于视图空间的点,它们还需要进一步转换为设备空间才能在屏幕上显示。
7. **光照与着色**:虽然这份复习资料没有涉及,但计算机图形学还包括了光照模型和着色算法,它们决定了物体在屏幕上的颜色和亮度。这些算法考虑了光源、表面材质和环境光等因素,以增加图像的真实感。
8. **图形管道**:在现代图形硬件中,图形数据从模型到屏幕的整个过程被称为图形管道。它包含了多个阶段,如顶点处理、裁剪、投影、纹理映射和颜色混合等,这些阶段共同作用于几何数据,生成最终的像素图像。
通过理解和掌握这些核心概念,学习者可以更好地理解计算机如何创建逼真的图像,并能够进行更高级的图形编程和设计。在实际应用中,这些知识广泛应用于游戏开发、虚拟现实、动画、工程设计等领域。