您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 计算机图形学5套模拟题
组卷规则:每套模拟题5个问答或者计算或者证明题,每题20分。《计算机图形学基础》模拟试题(1)1、简述Cohen-Sutherland裁剪方法的思想,并指出与之相比,中点裁剪方法的改进之处,及这种改进的理由。答:Cohen-Sutherland裁剪算法的思想是:对于每条线段P1P2分为三种情况处理。(1)若P1P2完全在窗口内,则显示该线段P1P2简称“取”之。(2)若P1P2明显在窗口外,则丢弃该线段,简称“弃”之。(3)若线段既不满足“取”的条件,也不满足“弃”的条件,则求线段与窗口交点,在交点处把线段分为两段。其中一段完全在窗口外,可弃之。然后对另一段重复上述处理。中点分割算法的大意是,与Cohen-Sutherland算法一样首先对线段端点进行编码,并把线段与窗口的关系分为三种情况:全在、完全不在和线段和窗口有交。对前两种情况,进行同样的处理。对于第三种情况,用中点分割的方法求出线段与窗口的交点。即从P0点出发找出距P0最近的可见点A和从P1点出发找出距P1最近的可见点B,两个可见点之间的连线即为线段P0P1的可见部分。从P0出发找最近可见点采用中点分割方法:先求出P0P1的中点P𝑚,若P0P𝑚不是显然不可见的,并且P0P1在窗口中有可见部分,则距P0最近的可见点一定落在P0P𝑚上,所以用P0P𝑚代替P0P1;否则取P𝑚P1代替P0P1。再对新的P0P1求中点P𝑚。重复上述过程,直到P𝑚P1长度小于给定的控制常数为止,此时P𝑚收敛于交点。改进之处在于,对第三种情况,不直接解方程组求交,而是采用二分法收搜索交点。这种改进的理由是:计算机屏幕的象素通常为1024×1024,最多十次二分搜索即可倒象素级,必然找到交点。而且中点法的主要计算过程只用到加法和除2运算,效率高,也适合硬件实现。2、在Phong模型I=𝐼𝑎𝐾𝑎+𝐼𝑝𝐾𝑑(𝐿∙𝑁)+𝐼𝑝𝐾𝑠(𝑅∙𝑉)𝑛中,三项分别表示何含义?公式中的各个符号的含义指什么?答:三项分别代表环境光、漫反射光和镜面反射光。𝐼𝑎为环境光的反射光强,𝐼𝑝为理想漫反射光强,𝐾𝑎为物体对环境光的反射系数,𝐾𝑑为漫反射系数,𝐾𝑠为镜面反射系数,𝑛为高光指数,L为光线方向,N为法线方向,V为视线方向,R为光线的反射方向。3、针对多面体模型,直接用Phong模型绘制会有什么问题?简述两种增量式光照明模型(明暗处理)的基本思想,并指出两个算法的主要区别。答:针对多面体模型,使用Phong模型绘制会在多边形与多边形之交界处产生明暗的不连续变化,影响了曲面的显示效果,即马赫带效应。如果增加多边形个数,减小每个多边形的面积,当然也能改善显示效果。但是这样一来,数据结构将迅速膨胀,导致操作的空间与时间上升。增量式光照模型的基本思想是在每一个多边形的顶点处计算合适的光照明强度或法向量,然后在各个多边形内部进行均匀插值,得到多边形光滑的颜色分布。它包含两个主要的算法:双线性光强插值和双线性法向插值,又被分别称为Gouraud明暗处理和Phong明暗处理。两种算法的主要区别为:Gouraud明暗处理采用光强插值,而Phong明暗处理采用法向插值。4、解释走样和反走样的概念,并给出三种以上反走样方法(只写名称)。答:在光栅显示器上显示图形时,直线段或图形边界或多或少会呈锯齿状。原因是图形信号是连续的,而在光栅显示系统中,用来表示图形的却是一个个离散的象素。这种用离散量表示连续量引起的失真现象称之为走样;用于减少或消除这种效果的技术称为反走样。反走样的方法有:提高分辨率、区域采样和加权区域采样。5、依次写出用中点画线法进行直线扫描转换,从点(5,5)到(15,11)经过的象素点。答:(55)、(66)、(76)、(87)、(97)、(108)、(119)、(129)、(1310)、(1410)、(1511)《计算机图形学基础》模拟试题(2)1、设一条二次Bezier曲线的控制顶点为P0、P1、P2,另一条二次Bezier曲线的控制顶点为Q0、Q1、Q2,P2=Q0,写出两条曲线可以精确合并(表示)为一条二次Bezier曲线的条件。解:如下图所示,由于可以精确合并,说明两曲线是由一条曲线在参数0λ1处分割而来,假设原曲线的控制顶点为P0,X,Q2.由deCastejau算法,首先要求P0,P2(Q0),Q1三点共线,其次𝑄2−𝑄1𝑄1−𝑋=𝑄1−𝑄0𝑃2−𝑃1=𝑋−𝑃1𝑃1−𝑃0,于是:𝑄1−𝑄2−𝑄1𝑄1−𝑄0(𝑃2−𝑃1)=𝑃1+𝑃1−𝑃0𝑃2−𝑃1(𝑄1−𝑄0)。P1P0Q2Q1P2=Q0X2、设一条三次Bezier曲线的控制顶点为P0、P1、P2、P3,对曲线上一点P(12)及一个给定的目标点T,给出一种调整Bezier曲线形状的方法,使得P(12)精确通过点T。解:假设我们改变其中的一个控制顶点,比如将P1调整到P1+λ,使得P(12)精确通过点T,改变后的曲线记为𝑃̂(𝑡),则有:𝑃̂(𝑡)|𝑡=12=∑𝑃𝑖𝐵𝑖,3(𝑡)3𝑖=0|𝑡=12+𝜆∙𝐵1,3(12)即:𝑇=𝑃(12)+𝜆∙𝐵1,3(12),所以,只需将P1调整到P1+(𝑇−𝑃(12))/𝐵1,3(12),即可。3、写出只用点Z-Buffer(一个变量)的消隐算法,比较其和传统Z-Buffer(一个二维数组)的消隐算法的区别。答:只用点Z-Buffer(一个变量)的消隐算法如下:Z-Buffer(){帧缓存全置为背景色//扫描整个屏幕for(屏幕上的每个象素(i,j)){深度缓存变量zb置最小值MinValuefor(多面体上的每个多边形Pk){if(象素点(i,j)在pk的投影多边形之内){计算Pk在(i,j)处的深度值depth;if(depth大于zb){zb=depth;indexp=k;}}}if(zb!=MinValue)计算多边形Pindexp在交点(I,j)处的光照颜色并显示}}传统的Z-Buffer算法需要有帧缓存和一个二维数组的z深度缓存。在把显示对象的每个面上每一点的属性(颜色或灰度)值填入帧缓冲器相应单元前,要把这点的z坐标值和z缓冲器中相应单元的值进行比较。是遍历多边形;而点Z-buffer算法是遍历象素,再判有哪些多边形的投影包含此象素,作深度比较。但是在不用开二维数组的Z-buffer的同时,带来了缺点是:反复进行点在多边形内部的判断,使算法效率降低。4、(1)写出光线跟踪递归函数的伪代码。(2)描述光线跟踪加速的层次包围盒方法。解:(1)RayTracing(start,direction,weight,color){if(weightMinWeight)color=black;else{计算光线与所有物体的交点中离start最近的点;if(没有交点)color=black;else{localI=在交点处用局部光照模型计算出的光强;计算反射方向R;RayTracing(最近的交点,R,weight*wr,Ir);计算折射方向T;RayTracing(最近的交点,T,weight*wt,It);color=Ilocal+srKI+ttKI;}}}(2)包围盒技术的基本思想是用一些形状简单的包围盒(如球面、长方体等)将复杂景物包围起来,求交的光线首先跟包围盒进行求交测试,若相交,则光线再与景物求交,否则光线与景物必无交。它是利用形状简单的包围盒与光线求交的速度较快来提高算法的效率的。简单的包围盒技术效率并不高,因为被跟踪的光线必须与场景中每一个景物的包围盒进行求交测试。包围盒技术的一个重要改进是引进层次结构,其基本原理是根据景物的分布情况,将相距较近的景物组成一组局部场景,相邻各组又组成更大的组,这样,将整个景物空间组织成树状的层次结构。进行求交测试的光线,首先进入该层次的根节点,并从根节点开始,从上向下与各相关节点的包围盒进行求交测试。若一节点的包围盒与光线有交,则光线将递归地与其子节点进行求交测试,否则,该节点的所有景物均与光线无交,该节点的子树无需作求交测试。5、已知4阶B样条曲线的节点矢量为0,0,0,0,0.5,1,1,1,1,deBoor递推公式为:𝑑𝑗𝑙={𝑑𝑗𝑙=0(1−𝛼𝑗𝑙)𝑑𝑗−1𝑙−1+𝛼𝑗𝑙𝑑𝑗𝑙−1𝑙=1⋯𝑘,𝛼𝑗𝑙=𝑡−𝑡𝑗𝑡𝑗+𝑘+1−𝑙−𝑡𝑗,以下是t=0.4处求值的deBoor三角形,请补齐空的中间点底坐标。𝑑0(100,100)𝑑1(150,200)→𝑑11(,)𝑑2(200,250)→𝑑21(,)→𝑑22(,)𝑑3(300,200)→𝑑31(240,230)→𝑑32(198,224)→𝑑33(191.2,221.6)解:《计算机图形学基础》模拟试题(3)1、列举三种常见的颜色模型,简要说明其原理和特点。答:所谓颜色模型就是指某个三维颜色空间中的一个可见光子集,它包含某个颜色域的所有颜色。常用的颜色模型有RGB、CMY、HSV等。RGB颜色模型通常用于彩色阴极射线管等彩色光栅图形显示设备中,它是我们使用最多、最熟悉的颜色模型。它采用三维直角坐标系,红、绿、蓝为原色,各个原色混合在一起可以产生复合色。CMY颜色模型以红、绿、蓝的补色青(Cyan)、品红(Magenta)、黄(Yellow)为原色构成,常用于从白光中滤去某种颜色,又被称为减性原色系统。印刷行业中基本使用CMY颜色模型。HSV(Hue,Saturation,Value)颜色模型是面向用户的,对应于画家的配色方法。2、列举三种以上常见的曲面、曲面求交方法。答:曲面与曲面求交的基本方法有代数方法、几何方法、离散方法和跟踪方法四种。代数方法:代数方法利用代数运算,特别是求解代数方程的方法求出曲面的交线。几何方法:几何方法是利用几何的理论,对参与求交的曲面的形状大小、相互位置以及方向等进行计算和判断,识别出交线的形状和类型,从而可精确求出交线。对于交线退化或者相切的情形,用几何方法求交可以更加迅速和可靠。离散方法:离散方法求交是利用分割的方法,将曲线不断离散成较小的曲面片,直到每一子曲面片均可用比较简单的面片,如四边形或者三角形平面片来逼近,然后用这些简单面片求交得到一系列交线段,连接这些交线段即得到精确交线的近似结果。跟踪方法:跟踪方法求交是通过先求出初始交点,然后从已知的初始交点出发,相继跟踪计算出下一交点,从而求出整条交线的方法。3、给出四次Bezier曲线退化为三次Bezier曲线,控制顶点P0、P1、P2、P3、P4应满足的条件。答:退化条件是将曲线展开成幂级数形式后,所有𝑡4的系数和为零,即∑∆𝑖4𝑖=0P0=0或∑𝑃𝑖𝐶4𝑖(−1)4−𝑖=04𝑖=0。4、线消隐中,最基本的运算是什么?简述其算法流程。答:线消隐中,最基本的运算为:判断面对线的遮挡关系。体也要分解为面,再判断面与线的遮挡关系。平面对直线段的遮挡判断算法①若线段的两端点及视点在给定平面的同侧,线段不被给定平面遮挡,转7②若线段的投影与平面投影的包围盒无交,线段不被给定平面遮挡,转7③求直线与相应无穷平面的交。若无交点,转4。否则,交点在线段内部或外部。若交点在线段内部,交点将线段分成两段,与视点同侧的一段不被遮挡,另一段在视点异侧,转4再判;若交点在线段外部,转4。④求所剩线段的投影与平面边界投影的所有交点,并根据交点在原直线参数方程中的参数值求出Z值(即深度)。若无交点,转5。⑤以上所求得的各交点将线段的投影分成若干段,求出第一段中点。⑥若第一段中点在平面的投影内,则相应的段被遮挡,否则不被遮挡;其他段的遮挡关系可依次交替取值进行判断。⑦结束。5、试描述中点裁剪法的算法原理及算法流程。解:首先对线段端点进行编码,并把每条线段𝑃1𝑃2分为三种情况处理。(1)若𝑃1𝑃2完全在窗口内,则显示该线段𝑃1𝑃2简称“取”之。(2)若𝑃1𝑃2明显在窗口外,则丢弃该线
本文标题:计算机图形学5套模拟题
链接地址:https://www.777doc.com/doc-2042293 .html