计算机图形学基础2014练习题.doc_第1页
计算机图形学基础2014练习题.doc_第2页
计算机图形学基础2014练习题.doc_第3页
计算机图形学基础2014练习题.doc_第4页
计算机图形学基础2014练习题.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1. 计算机图形学是研究怎样用计算机 表示 、 处理 、 显示 和 生成 图形的一门学科。2. 构成图形的要素包括 几何要素 :刻画对象的轮廓、形状等和 非几何要素 :刻画对象的颜色、材质等。3. 图形主要分为两类, 基于线条信息表示 和 明暗图 。4. 20世纪60年代末和70年代初,美国Tektronix公司发展了 存储管技术 ,后来由于大规模集成电路技术的发展和专用图形处理芯片的出现, 光栅扫描型 显示器的质量越来越好,价格越来越低,已成为图形显示器的常规形式。5. 图形输入和输出设备可以分为 矢量型 和 光栅扫描型 两类。6. 为了在帧缓存单元的位数不增加的情况下,具有大范围内挑选颜色的能力,可以采用 颜色查找表 ;高分辨率和高刷新频率要高带宽,解决方法可以采用 隔行扫描 (现在已经基本不用,主流显示器都采用逐行扫描方式)。7. 在计算机图形学中,字符可以用不同的方法表达和生成,常用的描述方法有 点阵式字符 、 矢量式字符 、 方向编码式字符 和 轮廓字形技术 。8. 求交问题可以分为两类: 求交点 和 求交线 。9. 图形变换及可以看作是 图形不动而坐标系变动 ,变动后该图形在新的坐标系下具有新的坐标值;也可以看作是 坐标系不动而图形变动 ,变动后的图形在坐标系中的坐标值发生变化。 10. 用户域 是程序员用来定义草图的整个自然空间(WD), 窗口区 是用户指定的任一区域(W), 屏幕域 是设备输出图形的最大区域(DC), 视图区 是任何小于或等于屏幕域的区域(v)。11. 屏幕坐标 系统也称 设备坐标 系统,它主要用于某种特殊的计算机图形显示设备的表面的点的定义。12. 平行投影根据 标准线与投影面的交角不同 可以分为 正交平行 投影和 斜交平行 投影。13. 在交互输入过程中,图形系统中有_请求 、 采样 、 事件 和它们的组合形式等几种输入(控制)模式。14. 图段 是GKS图形标准中采用的基本数据结构, 结构 则是PHIGS图形标准中所采用的基本数据结构。15. 线消隐 是以场景中的物体为处理单元,将一个物体与其余的k1个物体逐一比较,仅显示它可见的表面以达到消隐的目的。此类算法通常用于 消除隐藏线 , 面消隐藏 是以窗口内的每个像素为处理单元,确定在每一个像素处,场景中的物体哪一个距离观察点最近(可见),从而用它的颜色来显示该像素。此类算法通常用于 消除隐藏面 。16. 图形是计算机图形学的研究对象,是能在人的视觉系统中产生视觉印象的客观对象,包括自然景物、拍摄到的图片、以及用 数学方法描述的图形等等。17. 计算机中表示图形的方法包括 点阵表示 :枚举出图形中所有的点(强调图形由点构成),简称为图像(数字图像); 参数表示 :由图形的形状参数(方程或分析表达式的系数,线段的端点坐标等)+属性参数(颜色、线型等)来表示图形,简称为图形。18. 计算机图形学的研究起源于美国 麻省理工学院 ,在美国工业界,研制交互式图形显示器的工作在初期起作用最重要的是 IBM公司 。19. 计算机图形学的应用领域主要有 用户接口 、 计算机辅助设计与制造 、 地形地貌和自然资源图 、 计算机动画和艺术 、 科学计算可视化 和 游戏 等几个方面。20. 常用的图形绘制设备也称为硬复制设备有 打印机 和 绘图仪 。21. 液晶显示器与其他显示器不同,它是由 6 层薄板组成的平板式显示器;等离子显示器是用许多 小氖气灯泡 构成的平板阵列,每个灯泡处于开或关状态,等离子板不需要刷新。22. 求交运算是比较复杂的,在进行真正的求交计算之前,往往先用 凸包 等辅助结构进行粗略地比较,排除那些显然不相交的情形;在数学上两个浮点数可以严格相等,但在计算机内表示时有误差,相应地,求交运算中也要引入 容差 。 23. 假设直线的端点为P1、P2,则直线可以用向量形式表示为P(t) = A + Bt, 0t1;其中,A= p1 ,B= p2-p1 。24. 齐次坐标表示就是用 n+1 维向量表示n维向量,如n维向量(P1,P2,Pn)表示为(hP1,hP2,hPn,h),其中h称为哑坐标,当h=1时产生的齐次坐标称为 规格化坐标 ,因为前n个坐标就是普通坐标系下的n维坐标。25. 基本的几何变换研究物体坐标在直角坐标系内的 平移 、 旋转 和 变化 的规律。26. 平面几何投影根据 投影面角度的不同 可以分为 平行投影 和 透视投影 。27. PHIGS和GKS将各种图形输入设备从逻辑上分为六种:定位设备、笔划设备、 定值设备 、 选择设备 、 拾取设备 和 字符串设备 。28. 交互技术 指使用输入设备进行输入的技术,常见的有 定位技术 、 定值技术 、 菜单技术、 拖拽技术 、 拾取技术 、 网格与吸附技术 、 橡皮条技术 ,这些技术可作为设计应用系统用户接口的基本要素。29. 构成结构的基本的数据实体称为 结构元素 ,它用来表示应用问题所需要的各种几何与非几何数据,其中 控制结构元素 用来把若干结构相互联系起来构成一个结构网络。30. 光照模型分3个部分描述物体表面的色彩明暗同光源特性、物体表面特性之间的关系,即 漫射光线情况 、 直射光线情况 和 透射光线情况 。1. 构成图形的要素可分为两类:刻画形状的点、线、面、体的非几何要素与反映物体表面属性或材质的明暗、色彩等的几何要素。( )2. 参数法描述的图形叫图形;点阵法描述的图形叫图像。( )3. EGA/VGA为增强图形显示效果的一种图形处理软件的名称。( )4. 对山、水等不规则对象进行造型时,大多采用过程式模拟方法。( )5. 若两个图形是拓扑等价的,则一个图形可通过做弹性运动与另一个图形相重合。( )6. 0阶参数连续性和0阶几何连续性的定义是相同的。( )7. Bezier曲线可做局部调整。( )8. 字符的图形表示分为点阵和矢量两种形式。( )9. LCD表示发光二极管显示器。( )10. 使用齐次坐标可以将n维空间的一个点向量唯一的映射到n+1维空间中。( )11. 存储颜色和亮度信息的相应存储器称为帧缓冲存储器,所存储的信息被称为位图。()12. 矢量字符表示法用(曲)线段记录字形的边缘轮廓线。()13. 多边形的扫描变换算法不需要预先定义区域内部或边界的像素值。()14. 平面多面体表面的平面多边形的边最多属于两个多边形,即它的表面具有二维流形的性质。()15. 实体的扫描表示法也称为推移表示法,该表示法用一个物体和该物体的一条移动轨迹来描述一个新的物体。()16. 当投影中心到投影面的距离为有限值时,相应的投影为平行投影。()17. 用DDA算法生成圆周或椭圆不需要用到三角运算,所以运算效率高。()18. 平行投影分为正(射)投影和斜(射)投影。()19. 当投影面与x,y和z垂直时所得到的投影分别称为正(主)视图、侧视图和俯视图,统称为三视图。()20. 观察空间位于前后裁剪面之间的部分称为裁剪空间或视见体。()1 简述数字成像的一般处理过程。答:(1)建立模拟对象的几何模型,按照需要的逼近精度将模型简化为平面多面体。不少系统为了简化、统一运算过程,还进一步将多面体的各个棱面分解为三角形单元;(2)将单个物体进行组装,施加平移、旋转和比例变换等操作,形成整体模拟环境;(3)确定观察点位置,进行显示对象的透视变换;(4)确定显示范围,相当于照相时的取景。窗口的有效范围用上、下、左、右、前、后6个平面规定。将所有准备输出的图元与窗口范围进行比较,剪裁出落在窗口有效边界以内的部分;(5)确定图形显示器屏面上的显示范围(称做视区),将用户定义的三维空间(称做世界坐标系)内的物体映射到显示器的屏面坐标系中;(6)计算各单元三角形的法向矢量,根据光照模型确定可见三角形表面的亮度和色彩;(7)显示所有可见的三角形单元。2 简述扫描线填色算法(区域填充)的基本思想,指出需要解决和改进之处并加以解决和改进。答:多边形以n、x_array、y_array的形式给出,其中,x_array、y_array中存放着多边形的n个顶点的x,y坐标。用水平扫描线从上到下扫描由点线段构成的多段定义成的多边形。每根扫描线与多边形各边产生一系列交点。这些交点按照x坐标进行排序,将排序后的交点成对取出,作为两个端点,以所需要填的色彩画水平直线。多边形被扫描完毕后,填色也就完成。上述基本思想中,有几个问题需要解决或改进: 左、右顶点处理。当以1、2、3的次序画多边形外框时,多边形的左顶点和右顶点如图中所示的顶点2。它们具有以下性质。左顶点2:y1y2y2y3;其中y1、y2、y3是3个相邻的顶点的y坐标。当扫描线与多边形的每个顶点相交时,会同时产生2个交点。这时,填色就会因扫描交点的奇偶计数出错而出现错误。因此,对所有左、右顶点作如下处理:左、右顶点的入边(以该顶点为终点的那条边,即12边)之终点删去。对于左顶点,入边端点(x1, y1)、(x2, y2)修改为(x1, y1)、(x2-1/m, y2-1);对于右顶点,入边端点(x1, y1)、(x2, y2)修改为(x1, y1)、(x2+1/m, y2+1);其中m= y2- y1/ x2- x1,即入边的斜率。对于多边形的上顶点(y2y1、y2y3)或下顶点(y2y1、y2y3),奇偶计数保持正确。 水平边处理。水平边(y1=y2)与水平扫描线重合无法求交点。因此,将水平边画出后删去,不参加求交点及求交点以后的操作。 扫描线与边的求交点方法采用递归算法。以(x1, y1)、(x2, y2)为端点的边与第i+1条扫描线的交点为 减少求交计算量,采用活性边表。对于一根扫描线而言,与之相交的边只占多边形全部边的一部分,每根扫描线与多边形所有边求交的操作是一种浪费,需要加以改进。活性边表(Active List of Side)的采用将多边形的边分成两个子集:与当前扫描线相交的边的集合,以及与当前扫描线不相交的边的集合。对后者不必进行求交运算,这样就提高了算法的效率。3 写出图段定义,数据结构及其常见属性。答:图形学软件在输出基元和画面之间设置一个中间数据结构,称为图段(Segment)。图段是由一组输出基元和一组性质(Attribute of Segment)所构成的集合。可以表示为:Segment = Id, primitives, S-attributes 图段的数据结构 图段的数据结构可分为两个部分:1.图段头(head of segment)包括图段名、图段的性质以及指向图段体的指针;2. 图段体(body of segment) 一张线性表,其中每一个结点是构成该图段的一个基元。图段的常见性质如下: 可见性 优先度 突出性 变换矩阵。4 试画出GKSM的结构示意图。5 试阐述深度缓存(Z-buffer)算法基本思想和步骤。答:帧缓冲器 保存各像素颜色值(CB) z缓冲器 -保存各像素处物体深度值(ZB) z缓冲器中的单元与帧缓冲器中的单元一一对应思路:先将z缓冲器中个单元的初始值置为+Zmax (大于场景中的所有Z值)。当要改变某个像素的颜色值时,首先检查当前多边形的深度值是否小于该像素原来的深度值(保存在该像素所对应的Z缓冲器的单元中),如果小于,说明当前多边形更靠近观察点,用它的颜色替换像素原来的颜色;否则说明在当前像素处,当前多边形被前面所绘制的多边形遮挡了,是不可见的,像素的颜色值不改变。 Z-buffer算法的步骤如下: 初始化ZB和CB,使得ZB(i, j)=Zmax,CB(i, j)=背景色。其中,i=1, 2, , m,j=1, 2, , n。 对多边形a,计算它在点(i, j)处的深度值zi, j。 若zij0,则yi+1=yi+1,否则yi+1=yi。将式(1)、(2)、(3)代入d1-d2,再用dx乘等式两边,并以Pi=(d1-d2) dx代入上述等式,得Pi = 2xidy-2yidx+2dy+(2b-1) dx (4)d1-d2是用以判断符号的误差。由于在1a象限,dx总大于0,所以Pi仍旧可以用作判断符号的误差。Pi+1为Pi+1 = Pi+2dy-2(yi+1-yi) dx (5)求误差的初值P1,可将x1、y1和b代入式(2.4)中的xi、yi而得到 P1 = 2dy-dx综述上面的推导,第1a象限内的直线Bresenham算法思想如下: 画点(x1, y1),dx=x2-x1,dy=y2-y1,计算误差初值P1=2dy-dx,i=1; 求直线的下一点位置 xi+1 = xi + 1 如果Pi0,则yi+1=yi+1,否则yi+1=yi; 画点(xi+1, yi+1); 求下一个误差Pi+1,如果Pi0,则Pi+1=Pi+2dy-2dx,否则Pi+1=Pi+2dy; i=i+1;如果i|dy|为分支,并分别将2a、3a象限的直线和3b、4b象限的直线变换到1a、4a和2b、1b象限方向去,以实现程序处理的简洁。2. 试根据下图推导直线DDA算法(要求写清原理和递推公式),用伪代码描述直线DDA算法并分析算法效率。解:假设 直线的起点坐标为P1 (x1,y1),终点坐标为P2 (x2,y2)。x方向的增量为 xx2x1 ;y方向上增量为 yy2y1;直线的斜率为 kyx。当 xy 时,让 x 从 x1 到 x2 变化,每步递增 1,那么,x 的变化可以表示为 xi+1xi1,y 的变化可以表示为 yi+1yik用上式可求得图中直线 P1P2 和 y向网格线的交点,但显示时要用舍入找到最靠近交点处的象素点来表示。当 x|dy|? DxDy1a true 1 m1b false 1/m 12a true -1 m2b false -1/m 13a true -1 -m3b false -1/m -14a true 1 -m4b false 1/m -1研究表中的数据,可以发现两个规律。 当|dx|dy|时|Dx| = 1,|Dy| = m否则|Dx| = 1/m,|Dy| = 1 Dx、Dy的符号与dx、dy的符号相同。算法描述如下:dda_line(xa, ya, xb, yb, c)int xa, ya, xb, yb, c;float delta_x, delta_y, x, y;int dx, dy, steps, k;dx=xb-xa;dy=yb-ya;if(abs(dx)abs(dy)steps=abs(dx);else steps=abs(dy);delta_x=(float)dx/(float)steps;delta_y=(float)dy/(float)steps;x=xa;y=ya;set_pixel(x, y, c);for(k=1;k=steps;k+)x+=delta_x;y+=delta_y;set_pixel(x, y, c);使用DDA算法,每生成一条直线做两次除法,画线中每一点做两次加法。因此,用DDA法生成直线的速度是相当快的。1 假设两条直线的端点分别为P1、P2和Q1、Q2,利用直线段的向量参数方程和向量的基本性质求这两条直线段的交点。解:假设两条直线的端点分别为P1、P2和Q1、Q2,则直线可以用向量形式表示为P(t) = A + Bt, 0t1;Q(s) = C + Ds, 0s1;其中,A=P1,B=P2-P1,C=Q1,D=Q2-Q1。构造方程A + Bt = C + Ds。对三维空间中的直线段来说,上述方程组实际上是一个二元一次方程组,由3个方程式组成。可以从其中两个解出s、t,再用第三个验证解的有效性。当所得的解(ti, si)是有效解时,可用两个方程之一计算交点坐标,例如P(ti)=A+Bti。 根据向量的基本性质,可直接计算s与t。对方程两边构造点积得(CD) (A+Bt) = (CD) (C+Ds)由于CD同时垂直于C和D,等式右边为0。故有 类似地有2 根据下图(绕任意轴P1P2旋转的前4个步骤)写出绕任意轴旋转的三维变换过程,要求计算出相应参数和变换矩阵,假设P1坐标为(a,b,c),P2坐标为(d,e,f)。解:(1)T(-a,-b,-c),使P1点与原点重合; (2)Rx(),使得轴p1p2落入平面xoz内; (3)Ry(),使得

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论