2014-2015(2)计算机图形学复习大纲
《计算机图形学》复习提纲
考试时间:2015年6月29日下午7,8节(4:00-5:40)
考试地点:D座-205,206
考试形式:开卷
试题类型:简答题(30分),综合题(计算题,分析题,程序题(50分))
参考教材:《交互式计算机图形学——基于OpenGL的自顶向下方法》(第五版)
复习重点:
第一讲、计算机图形学概述
【知识点】
1、 什么是计算机图形学,计算机图形学的研究内容,计算机图形学与其他学科的关系
2、 什么是图形,构成图形的要素,计算机中表示图形的方法(点阵表示,参数表示)
3、 图形学之父:Ivan.E.Sutherland。1962 年,MIT 林肯室验室Ivan.E.Sutherland 的博士论文:Sketchpad: A Man-Machined Graphical Communication System奠定了图形学成为一个学科分支。
4、 计算机如何生成图像:图像生成的三要素,虚拟照相机模型,计算机图像生成的原理与基本过程。
【考试要求】
掌握:计算机图形学的基本概念(什么是计算机图形学,计算机图形学的研究内容,计算机图形学与其他学科的关系,什么是图形,构成图形的要素,计算机中表示图形的方法(点阵表示,参数表示))、图像生成的三要素,虚拟照相机模型,图形学生成图像的过程
了解:了解计算机图形学的历史发展以及主要的应用领域
第二讲、计算机图形系统
【知识点】
1、 计算机图形系统的组成(软件,硬件)
2、 图形硬件系统的组成
3、 图形显示设备(显示设备类型,CRT的原理,刷新率,平板显示器的类型,硬拷贝设备的类型)
4、 图形输入设备(操作输入设备的类型,图像输入设备)
5、 图形处理设备(像素,光栅,帧缓存,流水线体系结构)
6、 三维图像生成的流水线过程(各个步骤的作用和含义)(具体也可见第十二讲)
7、 计算机图形软件系统(建模和渲染,常用三维API)
【考试要求】
掌握:像素,光栅,帧缓存的概念,理解流水线体系结构,掌握三维图像生成流水线过程的各个步骤的作用,流水线方法与物物理方法(光线跟踪)的对比
了解:图形系统的组成及常用的图形设备
第三讲、OpenGL编程基础 【知识点】
1、 图形API提供的内容
2、 OpenGL 基本API(函数名的构成方式等语法,图元和属性,颜色,观察投影)
3、 GLUT 程序的基本流程
【考试要求】
掌握:Op enGL 基本API, OpenGL中几何体定义的基本方法
了解:图形API提供的内容,GLUT 程序的基本流程
第四、五讲、向量代数与变换
【知识点】
1、 几何基本元素(标量,向量,点)的概念和运 算
2、 线性向量空间和仿射空间的概念
3、 直线,射线,线段,平面,三角形的参数形式
4、 凸性、仿射和、凸包的概念
5、 向量的点积、叉积的概念、性质、用途
6、 坐标系和标架的概念引入,齐次坐标的概念作用
7、 标准变换(旋转,平移,缩放,剪切)
8、 标准变换的齐次坐标变换矩阵(二维,三维)
9、 矩阵表达式和齐次坐标
10、 变换的作用顺序(公式最右边的变换最先应用,最左的变换最迟应用)
11、 例子:模型变换的分解;例子:绕任意轴旋转
12、 在OpenGL中处理变换,OpenGL矩阵模式(具体到OpenGL编程如何实现)
【考试要求】
掌握:几何基本元素(标量,向量,点)的概念和运算,线性向量空间和仿射空间的概
射线,线段,平面,三角形的参数形式,向量的点积、叉积的概念、性质、用途,坐标系和标架的概念引入齐次坐标的概念作用,变换的数学表示(缩放,旋转,平移变换的矩阵表示方法);基本二维变换与基本三维变换的矩阵;复合变换和作用顺序,变换分解的例子;OpenGL
中的变换矩阵及变换堆栈的使用方法(以及OpenGL编程);多边形建模的数据结构(顶点列表,边列表以及OpenGL编程实现)
第六讲、投影和视图变换
【知识点】
1、 经典观察方法分类,每种观察方法的优缺点
2、 观察的三个方面(照相机,镜头,裁剪)
3、 OpenGL中的默认投影和观察
4、 简单透视投影的投影方程,投影算法
5、 投影的规范化
6、 OpenGL中正交投影,斜平行投影,透视投影的实现
【考试要求】
掌握:视图变换和投影变换的作用,OpenGL中投影变换的类型和设置方法(包括OpenGL编程实现),投影的规范化的作用,OpenGL中正交投影,斜平行投影,透视投影的方程
了解:经典观察方法分类,视口变换,
第七、八讲、曲线与曲面几何造型
【知识点】
(1) 形状数学描述的基本要求
(2) 插值、逼近、拟合,自由曲线曲面、规则曲线曲面
(3) 参数表示、隐式表示、网格表示
(4) 参数曲线(曲面)段(片);样条的概念以及样条曲线曲面的概念
(5) Beizier曲线、曲面的定义以及几何造型性质
(6) B-Spline曲线、曲面的定义以及几何造型性质
(7) Bezier曲线升阶算法、Beizier曲线的细分实现算法也即de Casteljau算法
【考试要求】
(1) 掌握:形状数学描述的基本要求,参数曲线(曲面)段(片);样条的概念以及样条曲线曲面的概念,三次Beizier曲线、三次B-Spline表达式以及造型特点
了解:Bezier曲线升阶算法、Beizier曲线的细分实现算法也即de Casteljau算法
第九讲、光照模型与明暗处理
【知识点】
1、 真实感图形的特点,影响观察者看到的表面颜色的因素
2、 光照模型的概念(模拟物体表面的光照物理现象的数学模型),局部光照模型与全局关照模型的区别
3、 环境光、漫反射光、镜面反射光的概念与计算公式
4、 Phong 反射模型的公式,优点,缺点
5、 着色处理的概念:在计算出顶点的颜色后,用于计算多边形内部颜色的方法称为着色方法
6、 常用的着色方法(明暗绘制):平面(均匀)着色,Gourand 着色(颜色插值),Phong
着色方法(法向插值);它们的优缺点
7、 在OpenGL场景中增加光照的步骤
8、光线跟踪算法原理
【考试要求】
掌握:光照模型的概念,环境光、漫反射光、镜面反射光的概念与计算公式,Phong 反射模型的公式,光线跟踪算法原理,OpenGL如何实现光照模型的(是局部还是全局的?)。
了解:着色处理的概念,常用的着色方法,在OpenGL场景中增加光照的步骤 第十讲、纹理映射(贴图)
【知识点】
1、 纹理以及纹理映射的作用,为什么需要纹理映射
2、 纹理映射的分类
3、 纹理获取
4、 纹理映射:给定一个模型和一个纹理图像,映射图像到模型上的过程;纹理映射的方法,纹理坐标的指定
5、 纹理过滤:纹理在显示时需要解决的问题,纹理的放大和缩小,常用过滤方法(最邻近滤波,双线性滤波等)
6、 OpenGL中的纹理映射实现
【考试要求】
掌握:在OpenGL中使用纹理的方法(纹理的定义,指定纹理坐标,纹理重复,纹理滤波等)
理解:纹理以及纹理映射的作用,纹理过滤的类型
了解:纹理映射的分类,纹理获取的方法
第十一章、几何建模与表示(也可参考第四、五讲内容,多边形建模的数据结构)
【知识点】
1、 什么是建模
2、 实例变换表建模法
3、 OpenGL中实现建模:变换栈的使用,显示列表
4、 层次建模:用树作为数据结构,存储场景中的物体,表示物体之间的关系
5、利用变换栈实现建模
6、 层次树的数据结构和遍历方法
7、 场景图的概念
8、 多边形建模的数据结构(顶点列表,边列表),特别注意其OpenGL的一种实现。
【考试要求】
掌握:理解层次建模的思想,掌握课件中的建模实例;OpenGL中实现建模的方法,
多边形建模的数据结构(顶点列表,边列表),特别注意半边结构以及特别注意其OpenGL的一种实现。
了解:基本几何图元的类型,几何压缩工具的类型,以及它们在OpenGL中的使用方法,场景图的概念
第十二讲、图形绘制流水线的实现(2,3,4的具体算法不考,仅供了解)
【知识点】
1、 图形绘制流水线的模型,每个阶段的工作(特别是OpenGL的实现机制)
2、 裁剪的概念,线段裁剪算法(Cohen-Sutherland算法,Liang-Barsky裁剪算法),多边形裁剪的流水线体系
3、 光栅化的概念,线段的扫描转换算法(DDA,Bresenham算法),多边形的填充算法(奇偶填充,种子填充,扫描线填充),走样和反走样
4、 隐藏面消除:对象空间方法(背面剔除,画家算法,深度排序),图像空间方法(Z缓冲区算法)
【考试要求】
熟练掌握:图形绘制流水线的模型(特别是OpenGL的实现机制)
了解:线段裁剪算法,线段光栅化算法,图形绘制流水线流程,每个阶段的工作;走样与反走样方法,z-buffer算法