计算机图形学期末考试题库
时间:2021-02-22 02:01:56 来源:达达文档网 本文已影响 人
计算机图形学期末考试题库 一、单项选择题 1. 计算机图形显示器一般使用什么颜色模型?(B) A)RGB;
B)CMY;
C)HSV ;
D)HLS 2. 哪一个不是国际标准化组织(ISO)批准的图形标准?(D) A)GKS;
B)PHIGS;
C)CGM ;
D)DXF 3. 下述用数值微分法(DDA)画斜率的绝对值小于1的直线的C语言子程序中哪一行有错? (A) Void drawLineWithDDA(int x1, int y1, int x2, int y2, int color) { A) int x, y; B) float k = (float)(y2-y1)(x2-x1); C ) for(x=x1,y=y1;x<=x2;x++) { drawPixel(x,y,color); } D ) y+=k; } } 4.下述绕坐标原点旋转a角的坐标变换矩阵中哪一项是错误的?(B) | A B | | C D | A) cos a; B)sin a; C)sin a; D)cos a 5.下述哪一条边不是非均匀有理B样条(NURBS)的优点? (D) A) NURBS比均匀B样条能表示更多的曲面 B) 对于间距不等的数据点,用NURBS拟合的曲线比用均匀B样条拟合的曲线更光滑 C) NURBS提供的权控制方法比用控制点更能有效的控制曲线的形状 D) 使用NURBS可以提高对曲面的显示效率 6.透视投影中主灭点最多可以有几个? (D) A) 0; B)1; C)2; D)3 7.在用扫描线法进行点与多边形之间的包含性检测时,下述哪一个操作不正确?(D) A) 当射线与多边形交于某顶点时且该点的两个邻边在射线的一侧时,计数0次 B) 当射线与多边形交于某顶点时且该点的两个邻边在射线的一侧时,计数2次 C) 当射线与多边形交于某顶点时且该点的两个邻边在射线的两侧时,计数1次 D) 当射线与多边形的某边重合时,计数1次 8.在简单光反射模型中,由物体表面上点反射到视点的光强下述哪几项之和?(C)
(1)环境光的反射光强;
(2)理想漫反射光强;
(3)镜面反射光强;
(4)物体间的反射光强。
A)(1)和(2)
B)(1)和(3)
C)(1)(2)和(3)
D)(1)(2)(3)和(4)
9. 下面关于NURBS的论述,哪个是错误的?(B)
A. 可通过控制顶点和权因子来改变形状;
B. 仅具有仿射不变性,但不具有透射不变性;
C. 非有理B样条、有理及非有理Bezier曲线、曲面是NURBS的特例;
D. 可表示标准解析形状和自由曲线、曲面;
10. 下述关于Bezier曲线的论述,哪个是错误的? ()
A. ,在P处的切矢量方向相同,大小相等,则在P处具有连续;
B. ,在P处的切矢量方向相同,大小相等,则在P处具有连续;
C. 若保持原全部顶点的位置不变,只是把次序颠倒过来,则新的Bezier曲线形状不变,但方向相反。
D. 曲线的位置和形状只与特征多边形的顶点的位置有关,它不依赖坐标系的选择。
11. 以下关于图形变换的论述那个是错误的?( )
A. 平移变换不改变图形大小和形状,只改变图形位置 ;
B. 错切变换虽然可引起图形角度 改变,但不会发生图形畸变;
C. 比例变换不改变图形的连接关系和平行关系;
D. 旋转变换后各图形部分间的线性关系和角度关系不变,变换后直线的长度不变;
12.使用下列二维图形变换矩阵:将产生变换的结果为(D)
2 0 0 0 1 0 1 1 1 T = A: 图形放大2倍;
B: 图形放大2倍,同时沿X、Y坐标轴方向各移动1个绘图单位;
C: 沿X坐标轴方向各移动2个绘图单位;
D: 沿X坐标轴方向放大2倍,同时沿X、Y坐标轴方向各平移1个绘图单位。
13.下列有关平面几何投影的叙述语句中,正确的论述为(A)
A: 在平面几何投影中,若投影中心移到距离投影面无穷远处,则成为平行投影;
B: 透视投影与平行投影相比,视觉效果更有真实感,而且能真实地反映物体的精确的尺寸和形状;
C: 透视投影变换中,一组平行线投影在与之平行的投影面上,产生灭点;
D: 在三维空间中的物体进行透视投影变换,可能产生三个或者更多的生灭点。
二、填空题 1、 常用的直线生成算法:Bresenham 和 DDA. 2、 在计算机图形学中,被裁剪的对象可以是线段、多边形和字符。
3、 曲线、曲面的表示有显式、隐式和 参数 三种形式. 4、 深度缓冲器算法是一种最简单的 消除隐藏的 算法. 5、 把三维物体变为二维图形表示的过程叫做 投影变换 . 6、 计算机图形的生成过程一般可分为图形的表示、 表示图形的数据准备 、图形的显示。
7、 物理交互设备包括输入板, 光笔,游戏杆,鼠标,控制旋钮 ,功能开关和按钮,数据手套,触摸屏以及最常 用的字母数字键盘等等. 8、 图形通常指的是用数学方法所描述的 几何图形 . 9、 计算机图形系统由图形硬件系统和图形_软件系统_组成. 10、 ___________是最基本的图形元素. 11、 三视图包括主视图、 侧视图 、俯视图. 12、 每点上具有无限的细节 以及物体整体和局部特性之间的自相似性是分形物体的两个最基本特征. 13、 图像指的是人眼或仪器所记录的__观看景象__. 14、 图形软件通常分为两类:通用编程软件包和__专用应用软件包__. 15、 所谓齐次坐标就是用__n+1__向量来表示维向量的一种形式. 16、 分辨率是指屏幕在水平方向和垂直方向上能分辨的__最大点数 . 17、 交互式计算机图形系统是用户、计算机、___________、软件组成的协调运行的系统. 18、 生成直线的算法要求:画的线段应是直的、线的端点位置应正确、 线的浓度应均匀 、生成速度要快. 19、 在交互输入过程中,常用的控制模式是 请求 、采样、事件三种. 20、 Bezier曲线有许多优越性,但有两点不足:一是 缺乏局部修改性,即改变某一控制点对整个曲线都有影响 ;
二是n较大时,特征多边形边数较多,则对整个曲线的控制减弱. 21、 点距是荧光屏上两个相同颜色荧光点之间的 距离 . 22、 连贯性是指相邻像素几乎具有相同的 特性 . 三、 简答题 1什么是计算机图形学? 计算机图形学是研究怎样利用计算机表示、生成、处理和显示图形的原理、算法、方法和技术的一门学科,她是计算机学科中最为活跃、得到广泛应用的分支之一。
2什么是图形,什么是图像? 图像:计算机中以具有颜色信息的点阵来表示的图形,它强调图形由哪些点组成,记录点及它的灰度或色彩。
图形:计算机中由场景的几何模型和景物的物理属性表示的图形,他更强调场景的几何表示,记录图形的形状参数及属性参数。它的显示形式是基于线条信息的矢量图和基于明暗处理后的图像图。
3计算机图形学主要研究什么?计算机图像处理主要研究什么? 计算机图形学主要研究的是用计算机技术来生成、显示和处理图形 计算机图像处理是主要涉及图像的增强、分割、去噪、重组、特征提取和存储等。
4试列举五种计算机图形学的应用。
计算机辅助设计、用户接口、图示 、计算机动画、可视化 5计算机图形系统由什么构成? 计算机图形系统由图形硬件系统和图形软件系统组成 6什么叫屏幕域?什么叫视图区? 图形设备用来输出图形的最大区域成为屏幕域 用户在屏幕域内指定的用于显示图形的区域 7什么叫齐次坐标?引入齐次坐标的优越性是什么? 一个物体正在n维空间的齐次表示是一个在n+1维空间中的物体。在n维空间中的的一个坐标叫原坐标,而在n+1维空间中叫齐次坐标。
优越性在于:它提供了一个三维空间中包括平移、旋转、透视、投影、反射、错切和比例在内的统一表达式,使得物体的变换可在同一的矩阵形式下进行。
8写出三维图形几何变换矩阵的一般表示式,并说明其中各个子矩阵的变换功能。
9画直线的算法有哪几种?画圆弧的算法有哪几种? 直线:数值微分法(DDA)、中点画线法、Bresenham算法 圆弧:逐点比较法、角度DDA法、Bresenham算法 10解释灭点、一点透视、两点透视、三点透视的含义。
对于透视投影,一束平行于投影面的平行线的投影可保持平行,而不平行于投影面的平行线的投影会汇聚到一点,这个点称为灭点。灭点可以看作是无限远处的一点在投影面上的投影 透视投影是按照主灭点的个数来分类,可分为一点透视、两点透视和三点透视 11n次Bezier曲线的特点分别是什么? 四、问答题 1写出一种画线法的算法 。
2简述中点画圆算法。
,函数为F(x, y)=x2+y2–R2的构造圆,圆上的点为F(x, y)=0,圆外的点F(x, y)>0,圆内的点F(x, y)<0,构造判别式:
d=F(M)=F(xp+1, yp–0.5)=(xp+1)2+(yp–0.5)2 中点画圆法示意图 若d<0,则应取P1为下一像素,而且下一像素的判别式为 d=F(xp+2, yp–0.5)= (xp+2)2+(yp–0.5)2–R2=d+2xp+3 若d≥0,则应取P2为下一像素,而且下一像素的判别式为 d=F(xp+2, yp–1.5)= (xp+2)2+(yp–1.5)2–R2=d+2(xp– yp)+5 我们讨论按顺时针方向生成第二个八分圆,则第一个像素是(0, R),判别式d的初始值为 d0=F(1, R–0.5)=1.25–R 3直线生成算法中数字微分分析法的原理和步骤 答:(仅供参考)DDA算法是基于数字微分思想的直线声成算法, 基本思想:已知过端点P0 (x0, y0), P1(x1, y1)的直线段L y=kx+b |k|| ≤1 (Dx≥Dy) 直线斜率为 令xi+1 = xi +Dx 则 yi+1= kxi+1+b = kxi+kDx +b= (kxi+b)+kDx = yi+kDx 当Dx =1时 yi+1 = yi+k 即:当x每递增1,y递增k(即直线斜率);
注意上述分析的算法仅适用于|k| ≤1的情形。在这种情况下,x每增加1,y最多增加1。
当 |k| >1时,必须把x,y地位互换 这种方法直观,但效率太低,因为每一步需要一次浮点乘法和一次舍入运算。
4论述圆的Bresenham算法的原理,方法和步骤 答:
Bresenham画圆算法是在每一步考察两个可能的像素点中哪一个更靠近理论圆周,从而推出沿圆周的整数位置。
基本思想:通过比较像素与圆的距离平方来避免开方运算。
基本方法:每一步都选择一个离开实际圆周最近的点Pi(xi,yi)使其误差项最小。
设圆之半径为r。先考虑圆心在(0,0),并从x=0, y=r开始的顺时针方向的1/8圆周的生成过程。在这种情况下,x每步增加1,从x=0开始,到x=y结束。即有:
xi+1=xi+1 相应的yi+1则在两种可能中选择:
yi+1=yi,或者yi+1=yi-1 选择的原则是考察精确值y靠近yi还是靠近yi-1,计算式为:
Y2=r2-(xi+1)2 d1=yi2-y2 =yi2-r2+(xi+1)2 d2=y2-(yi-1)2 =r2-(xi+1)2-(yi-1)2 令pi=d1-d2,并代入d1, d2,则有 pi=2(xi+1)2+yi2+(yi-1)2-2r2 (1) pi称为误差。如果pi<0则yi+1=yi,否则yi+1=yi-1。pi的递归式为:
pi+1=pi+4xi+6+2(yi2+1-yi2)-2(yi+1-yi) (2) pi的初值由式(2.6)代入xi=0, yi=r而得 p1=3-2r (3) 根据上面的推导,圆周生成算法步骤为:
1、求误差初值,p1=3-2r; i=1;
画点(0, r);
2、求下一个光栅位置:
xi+1=xi+1;
if pi<0 则yi+1=yi;
否则yi+1=yi-1;
3、画点(xi+1, yi+1)
4、计算下一个误差:
if pi<0 则pi+1=pi+4xi+6;
否则 pi+1=pi+4(xi-yi)+10;
5、i=i+1; if x=y则end;
否则返2。
虽然式(2)式表示pi+1的算法似乎很复杂,但因为yi+1只能取值yi或yi-1,因此在算法中,第4步的算式变得很简单,只须作加法和4的乘法。因此圆的Bresenham算法运行速度也是很快的,并适宜于硬件实现。 5请写出二维图形几何变换矩阵的一般表达形式,并说明其中各个子矩阵的变换功能。
设二维图形变换前坐标为(x,y,1),变换后为(x*,y*,1) 二维变换矩阵 6用De Casteljau算法或几何做图法计算n=3时,u=0.25,0.75处的Beizer曲线上点的计算,并做图表示 7简述点与多边形之间的包含性检测算法。
先将该点变换到多边形所在平面,在二维空间讨论该问题,过该点沿任意方向做一条射线,与多边形边界求交点,若交点个数为偶数,0,2,4,…,则该点在多边形外部,否则在内部。如果射线与多边形某条边、某个顶点重合,则可以改变射线方向重新测试 8用中点画线法画一条从(1,1)到(6,5)的线段 9写出平面上的点(x,y)对任意直线y=kx+b作对称变换的变换矩阵。