计算机图形学第6章习题.ppt

上传人:夺命阿水 文档编号:619993 上传时间:2023-09-14 格式:PPT 页数:22 大小:520.50KB
返回 下载 相关 举报
计算机图形学第6章习题.ppt_第1页
第1页 / 共22页
计算机图形学第6章习题.ppt_第2页
第2页 / 共22页
计算机图形学第6章习题.ppt_第3页
第3页 / 共22页
计算机图形学第6章习题.ppt_第4页
第4页 / 共22页
计算机图形学第6章习题.ppt_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《计算机图形学第6章习题.ppt》由会员分享,可在线阅读,更多相关《计算机图形学第6章习题.ppt(22页珍藏版)》请在课桌文档上搜索。

1、计算机图形学基础,习题6.2/P182,6.2 已知二维变换矩阵T2D=a b p c d q l m s试说明矩阵T2D中各元素在变换中的具体作用。答:缩放:a,d 平移:l,m 旋转:a,b,c,d 透视:p,q 全局缩放:s 错切:b,c,习题6.3/P182,6.3 试推导将二维平面上任意直线段p1(x1,y1)p2(x2,y2)转换成为与x轴重合的变换矩阵(直线段p1p2与x轴的交角45)。答:sin()=(y2-y1)/sqrt(x2-x1)2+(y2-y1)2)cos()=(x2-x1)/sqrt(x2-x1)2+(y2-y1)2)平移T1(-x1,-y1)=1 0 0 0 1

2、0-x1-y1 1旋转R1(-)=cos-sin 0 sin cos 0 0 0 1T=T1(-x1,-y1)R1(-),习题6.4/P182,6.4 已知点P(xp,yp)及其直线L的方程Ax+By+C=0,试推导一个相对L作对称变换的变换矩阵T,使点P的对称点P满足P=PT。答:设:k=-A/B,b=-C/B sin()=-A/sqrt(A2+B2)cos()=-B/sqrt(A2+B2)平移T1(0,-b)=1 0 0 0 1 0 0-b 1,习题6.4/P182,旋转R1(-)=cos-sin 0 sin cos 00 0 1关于x轴对称RFx=1 0 0 0-1 0 0 0 1反旋转

3、R2()=cos sin 0-sin cos 0 0 0 1,习题6.4/P182,反平移T2(0,b)=1 0 0 0 1 0 0 b 1T=T1(0,-b)R1(-)RFxR2()T2(0,b),习题6.6/P183,6.6 试证明相对于原点的旋转变换可以等价为一个比例变换和一个错切变换的复合变换。cos sin 0 sx 0 0 1 b 0 sx bsx 0-sin cos 0=0 sy 0 c 1 0=csy sy 0 0 0 10 0 1 0 0 1 0 0 1sx=cos,sy=sin,bsx=sin,csy=-sinb=sin/cos=tg,c=-sin/cos=-tg cos

4、sin 0 cos 0 0 1 tg 0-sin cos 0=0 sin 0-tg 1 0 0 0 1 0 0 1 0 0 1,习题6.7/P183,6.7 如图所示四边形ABCD,求绕点P(5,4)分别旋转45和90的变换矩阵,并求出各端点的坐标,画出变换后的图形。90T=0 1 0-1 0 0 9-1 14 1 1 0 1 0 8 3 17 3 1-1 0 0=6 6 17 7 1 9-1 1 2 6 11 4 1 5 0 1A(8,3),B(6,6),C(2,6),D(5,0),45T=T(-5,-4)R(45)T(5,4)=2/2 2/2 0-2/2 2/2 0 5-2/2 4-2/2

5、 14 1 1 5+2 4-22 17 3 1 T=5+32/2 4+2/2 1 7 7 1 5-2/2 4+52/2 1 1 4 1 5-22 4-22 1四舍五入后:A(6,1),B(7,5),C(4,8),D(2,1),习题6.11/P183,6.11 试用编码裁剪法(Cohen-Sutherland)裁剪图6-40的线段。,codeA=1010,codeB=0101k=5/4,b=-3/4,y=kx+bcodeA|codeB0 不在窗口内codeA&codeB=0 AB不在窗口同一外侧根据codeA的从低到高寻找编码位为1所对应的窗口边界为右边界。求AB与右边界的交点为PR(2,7/4

6、)。令PR-A(2,7/4),codeA=0000,并用A代替A,PR,交换,使得A-B(2,7/4)、0000;B-A(-1,-2)、0101根据codeA的从低到高寻找编码位为1所对应的窗口边界为左边界,求AB与左边界的交点PL(0,-3/4)。令PL-A(0,-3/4),codeA=0100,并用A代替A根据codeA的从低到高寻找编码位为1所对应的窗口边界为底边界,求AB与底边界的交点PB(3/5,0)。令PB-A(3/5,0),codeA=0000,并用A代替A,至此,裁剪结束,求得裁剪线段为:(2,7/4),(3/5,0)四舍五入后,裁剪线段为:(2,2),(1,0),习题6.13

7、/P183,6.13 试用中点分隔算法裁剪如图6-40的线段,分隔一直到误差小于0.5为止。,codeA=1010,codeB=0101中点Pm(x1+x2)/2,(y1+y2)/2)求A的最远可见点codeB0 B不在窗口内codeA&codeB=0 AB不在窗口同一外侧用二分法求AB中点Pm(1,1/2)、0000。Pm在窗口内,令Pm-A(1,1/2)、0000,并用A代替A,用二分法求AB中点Pm(0,-3/4)、0100。Pm在窗口外,codePm&codeB0 PmB在窗口同一外侧,令Pm-B(0,-3/4)、0100,并用B代替B用二分法求AB中点Pm(1/2,-1/8)、010

8、0。同理,令Pm-B(1/2,-1/8)、0100,并用B代替B用二分法求AB中点Pm(3/4,3/16)、0100。分析Pm和B的误差小于0.5,则不再分隔。四舍五入得B(1,0)、0000,为A的最远可见点。,codeA=1010,codeB=0101中点Pm(x1+x2)/2,(y1+y2)/2)求B的最远可见点codeA0 A不在窗口内codeA&codeB=0 AB不在窗口同一外侧用二分法求AB中点Pm(1,1/2)、0000。Pm在窗口内,令Pm-B(1,1/2)、0000,并用B代替B,用二分法求AB中点Pm(2,7/4)、0000。Pm在窗口内,令Pm-B(2,7/4)、000

9、0,并用B代替B,用二分法求AB中点Pm(5/2,19/8)、1010。Pm在窗口外,codePm&codeA0 PmA在窗口同一外侧,令Pm-A(5/2,19/8)、1010,并用A代替A,用二分法求AB中点Pm(9/4,33/16)、1010。分析Pm和A的误差小于0.5,则不再分隔。四舍五入得A(2,2)、0000,为B的最远可见点。至此,裁剪结束,求得裁剪线段为:(2,2),(1,0),习题6.14/P183,6.14 试用Liang-Barsky算法裁剪如图6-40的线段。,P1=-(-x2-x1)=-(-1-3)=4;q1=x1-xWL=3-0=3;P2=x2-x1=-1-3=-4

10、;q2=xWR-x1=2-3=-1;P3=-(-y2-y1)=-(-2-3)=5;q3=y1-yWB=3-0=3;P4=y2-y1=-2-3=-5;q4=yWT-y1=2-3=-1;Pi0 不存在直线与窗口边界的平行,Umax,Umin,Umin=min(1,u1,u3)=3/5 Umax=max(0,u2,u4)=1/4 UmaxUmin 有交 X=x1+Umax(x2-x1)=3+1/4(-1-3)=2 Y=y1+Umax(y2-y1)=3+1/4(-2-3)=1.75 X=x1+Umin(x2-x1)=3+3/5(-1-3)=0.6 Y=y1+Umin(y2-y1)=3+3/5(-2-3

11、)=0得交点(2,1.75)、(0.6,0)至此,四舍五入后,求得裁剪线段为:(2,2),(1,0),习题6.15/P183,6.15 试用Sutherland-Hodgeman算法裁剪如图6-41的多边形,要求画出每次裁剪对应的图形,并标出输入和输出的顶点。,输入:ABCDE 输出:ABCD12A,输入:ABCD12A 输出:3B45D126,输入:3B45D126 输出:3B7D126,输入:3B7D126 输出:3B789126,习题6.16/P183,6.16 试用Weiler-Atherton算法裁剪如图6-41的多边形,要求写出输入和输出的顶点。,主顶点序列:A I1 B I2 C

12、 D I3 I4 E I5 I6 A蓝点:进点緑点:出点裁顶点序列:a I4 I5 b I6 I1 c I2 d I3 a结果顶点序列:I1BI2dI3I4I5I6I1,6,2,A,2,6,B,C,D,E,a,b,c,d,I1,I2,I3,I4,I5,I6,补充习题1,补充1 已知窗口如图所示,以NDC为视图,要求保持纵横比不变,求T窗口-视图。,为了保持纵横比不变,则:w窗/h窗=w视/h视=3/2取w视=1,得视区(0,0)、(1,2/3)Sx=1/3,Sy=1/3,T窗-视=T(-1,-1)S(1/3,1/3)T(0,0)=1 1/3 1 1 1/3 1-1-1 1 1 1,补充习题2,补充2 已知窗口如图所示,以NDC为视图,要求保持纵横比不变,求T窗口-视图。,为了保持纵横比不变,则:w窗/h窗=w视/h视=3/2取w视=1,得视区(0,0)、(1,2/3)Sx=1/3,Sy=1/3,T窗-视=T(-1,-1)R(-30)S(1/3,1/3)T(0,0)=1 cos30-sin30 1/3 1 1 sin30 cos30 1/3 1-1-1 1 1 1 1,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号