您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 其它文档 > 计算机图形学课后习题答案部分
一、问答题(25分,每题5分)1、列举三种常见的颜色模型,简要说明其原理和特点。答:所谓颜色模型就是指某个三维颜色空间中的一个可见光子集,它包含某颜色。常用的颜色模型有RGB、CMY、HSV等。RGB颜色模型通常用于彩色阴极射线管等彩色光栅图形显示设备中,它多、最熟悉的颜色模型。它采用三维直角坐标系,红、绿、蓝为原色,各个可以产生复合色CMY颜色模型以红、绿、蓝的补色青(Cyan)、品红(Magenta)、黄(Yellow)为原色构成,常用于从白光中滤去某种颜色,又被称为减性原色系统。印刷行业中CMY颜色模型。HSV(Hue,Saturation,Value)颜色模型是面向用户的,对应于画家的配色方5.1.2中点Bresenham算法(P109)斜率K误差项d理想点Q取下一个点d更新10在中点上取上点d+2△x-2△y=0在中点下取下点d-2△y10在中点右取右点d-2△x+2△y=0在中点左取左点d-2△x-10在中点左取左点d-2△x+2△y=0在中点右取右点d-2△x-10在中点下取下点d+2△x-2△y=0在中点上取上点d-2△y5.1.2改进Bresenham算法(P112)斜率K改进误差项e理想点Q取下一个点e更新10在中点上取上点e-2△x=0在中点下取下点e+2△y10在中点右取右点e-2△y=0在中点左取左点e+2△x-10在中点左取左点e-2△y=0在中点右取右点e+2△x-10在中点下取下点e-2△x=0在中点上取上点e+2△y习题5(P144)5.3试用中点Bresenham算法画直线段的原理推导斜率为负且大于1的直线段绘制过程(要求写清原理、误差函数、递推公式及最终画图过程)。(P111)解:k=-1|△y|/|△x|=1y为最大位移方向故有构造判别式:推导d各种情况的方法(设理想直线与y=yi+1的交点为Q):所以有:yQ-kxQ-b=0且yM=yQd=f(xM-kxM-b-(yQ-kxQ-b)=k(xQ-xM)所以,当k0,d0时,M点在Q点右侧(Q在M左),取左点Pl(xi-1,yi+1)。d0时,M点在Q点左侧(Q在M右),取右点Pr(xi,yi+1)。d=0时,M点与Q点重合(Q在M点),约定取右点Pr(xi,yi+1)。所以有递推公式的推导:d2=f(xi-1.5,yi+2)当d0时,d2=yi+2-k(xi-1.5)-b增量为1+k=d1+1+k当d0时,d2=yi+2-k(xi-0.5)-b增量为1=d1+1当d=0时,5.11如图5-59所示多边形,若采用扫描转换算法(ET边表算法)进行填充,试写出该多边形的边表ET和当扫描线Y=4时的有效边表AET(活性边表)。(P125)解:1)边表ET表x|yminymax1/knext2)y=4时的有效边表AETxymax1/knext注意:水平线不用计算。5.22构造两个例子,一个是4-连通图,其边界是8-连通的,另一个是8-连通图,其边界是4-连通的。(P132)解:4-连通区域8-连通区域6.7求四边形ABCD绕P(5,4)旋转45度的变换矩阵和端点坐标,画出变换后的图形。(P147P148P155)解:变换的过程包括:1)平移:将点P(5,4)平移至原点(0,0),2)旋转:图形绕原点(0点)旋转45度,3)反平移:将P点移回原处(5,4),4)变换矩阵:平移—旋转—反平移5)变换过程:四边形ABCD的规范化齐次坐标(x,y,1)*3阶二维变换矩阵由旋转后四边形ABCD的规范化齐次坐标(x',y',1)可写出顶点坐标:A'(6.4,1.2)B'(7.1,4.7)C'(4.3,8.5)D'(2.2,1.2)3.求三角形绕B点(2,5)旋转θ的变换矩阵。求三角形绕B点顺时针旋转90度后各端点坐标。(P125)解:1)三角形绕B点(2,5)旋转θ的变换矩阵T=Tt*TR*Tt-1平移到坐标原点旋转角度θ反平移回原来位置100010-2-51cosθsinθ0-sinθcosθ00011000102512)三角形绕B点顺时针旋转90度的变换矩阵,θ=-90°T=Tt*TR*Tt-1平移到坐标原点旋转角度θ反平移回原来位置100010-2-51cos90°-sin90°0sin90°cos90°0001100010251变换过程:三角形ABC的规范化齐次坐标(x,y,1)*3阶二维变换矩阵P=P*T得到三角形ABC变换后的规范化齐次坐标(x',y',1)顶点xy1ABC4.6212510-11可以写出顶点坐标:A'(4.6,2)B'(2,5)C'(0,-1)4.用编码裁剪算法裁剪线段P1(0,2)P2(3,3)。要求写出:(164)1)窗口边界划分的9个区间的编码原则;2)线段端点的编码;3)裁剪的主要步骤;4)裁剪的输出结果。解:线段P1(0,2)P2(3,3)的编码裁剪y10011000101040001P2(3,3)0000S00103P1(0,2)2101010100011001234x1)窗口边界划分的9个区间的编码原则;编码D3D2D1D0窗口外上边top下边bottom右边right左边left条件ywytwyt=4ywybwyb=1xwxrwxr=4xwxlwxl=1取值D3=1D2=1D1=1D0=12)线段端点的编码;P1code1=0001,P2code2=00003)裁剪的主要步骤;输入P1(0,2),P2(3,3),wyt=4,wyb=1,wxr=4,wxl=1;P1code1=0001,P2code2=0000;code1|code2≠0不能简取;code1&code2=0不能简弃;求线段P1(0,2)P2(3,3)和窗口左界wxl=1的交点,把wxl=1代入直线方程求出y=kx+b=(1/3)*x+2=2.3交点坐标S(1,2.3)替换端点坐标P1(0,2),使P1坐标为(1,2.3);去掉P1S线段,输出线段P1P2。4)裁剪的输出结果:P1(1,2.3)P2(3,3)。
本文标题:计算机图形学课后习题答案部分
链接地址:https://www.777doc.com/doc-2098420 .html