答:平移点C与点P重合的平移矩阵为
?10?01T1???00??0?20010?10?2?3?0?? 绕z轴旋转60°矩阵为T2??2?00???1???032120000100??0? ?0?1??所以,复合变换后的矩阵为T1*T2,有:
?A??0?B??1????C??1???D???T1*T2??0?E??0???F???1?G??1???H???0?3001??1001??2?3??1?23101??3?101?*T1*T2??2?3021??1?021??2?3?1?3121??2?3121???2?101??A'????3?1012??B'?3?101??C'?2????101???D'? 2?121??E'????121??F'?3?121??G'?2????121?2??H'?其中A’B’C’D’E’F’G’H’为变换后对应的齐次坐标
6.(第4章)已知直线段的两点P1(-200,-100)和P2(700,600),使用Sutherland-Cohen算法计算对于窗口xL=0,yB=0,xR=500,yT=600裁剪后的直线段,要求写出计算过程。
答:裁剪顺序为上下右左,区域编码如下:
本作业题共7页,第16页
1001 1000 1010 0001 0000 0010 0101 0100 0110 (1)P1点的??????????1=0101,P2点的??????????2=0010 ∵(??????????1!=0||??????????2!=0)&&(??????????1&????????P2==0) ∴进行裁剪
(2)P1点在窗口外部,??????????1=0101,说明P1点在窗口的左侧,因此求出P1P2与窗口左边界的交点L:
;
摒弃P1L;剩下LP2;
(3)L点在窗口内部,考虑P2点,P2点在窗口外部,c????????2=0010,说明P2点在窗口的右侧,因此求出LP2与窗口左边界的交点R:
;
摒弃RP2;剩下LR ;
(4)R点在窗口内部, LR为所求。
7.(第4章)已知直线段的两点P1(-200,-100)和P2(700,600),使用梁友栋-Barsky算法计算对于窗口xL=0,yB=0,xR=500,yT=600裁剪后的直线段,要求写出计算过程。 答:
???=700?(?200)=900;???=600?(?100)=700;
???≥0且???≥0,因此: x=xL,y=yB为始边,x=xR,y=yT为终边;
本作业题共7页,第17页
因此
所以:起点坐标
终点坐标:
本作业题共7页,第18页
本作业题共7页,第19页