《计算机图形学》练习测试题及参考答案

Fi≥0: X方向走一步 i+1点坐标: Xi+1=Xi-1,Yi+1=Yi

Fi?1?Yi?1XA?Xi?1YA?YiXA?Xi?1YA

∵第Ⅱ象限,Xi<=0,YA>0,??Xi-1?=? XA?+1, ?YA?= Y Fi?1?YiXA?XiYA?YA?Fi?YA

Fi<0: Y方向走一步 i+1点坐标: Xi+1=Xi,Yi+1=Yi+1

Fi?1?Yi?1XA?Xi?1YA?Yi?1XA?XiYA

∵第Ⅱ象限,Xi<0,YA>0,??Yi-1?=? Yi?+1, ?XA?= XA Fi?1?YiXA?XiYA?XA?Fi?XA 得:

(1)Fi?0时,

?Xi?1?Xi?1?Yi?Yi(1)Fi?0时,? ?F?i?1?Fi?YA?Xi?1?Xi??Yi?Yi?1 ?F?F?XiA?i?16、图中ABCD为矩形窗口,P1P2为待裁剪线段。试用中点分割法求出P1的最远可见

点,当线段长度≤0.5时算法结束。

已知窗口及线段的坐标分别为A(0,0)、B(0,6)、C(10,6)、D(10,0),P1(-1,10)、P2(11,0)。

解:

设P1P2的中点为P12(x1,y1)

x1=(-1+11)/2=5, y1=(11+0)/2=5

P1 因为P12 P2不是完全不可见,故对P12 P2作进一步处理

设P12 P2的中点为P22(x2,y2) x2=(5+11)/2=8, y2=(5+0)/2=2.5

因为P22 P2不是完全不可见,故对P22 P2作进一步处理

设P22 P2的中点为P32(x3,y3)

x3=(8+11)/2=9.5, y3=(2.5+0)/2=1.25

因为P32 P2不是完全不可见,故对P32 P2

P2 作进一步处理

设P32 P2的中点为P42(x4,y4)

x4=(9.5+11)/2=10.25, y4=(1.25+0)/2=1.125 因为P42 P2是完全不可见,故对作进一步处理 设P32P42的中点为P52(x5,y5)

x5=(9.5+10.25)/2=9.875, y5=(1.25+1.125)/2=1.1875

P24P25?P25P23?(X5?X3)2?(Y5?Y3)2?(9.875?9.5)2?(1.1875?1.25)2?0.380172?0.5

所以P1的最远可见点为P52(9.875,1.1875)

7、已知三角形ABC各顶点的坐标A(1,2)、B(5,2)、C(3,5),相对直线Y=4做对称变换后到达A’、B’、C’。

试计算A’、B’、C’的坐标值。(要求用齐次坐标进行变换,列出变换矩阵) 解:

(1)将坐标系平移至P1 (0,4)点

?100???TA??010???0?41??

(2) 以X轴对称

?100???TB??0?10?

??001??

(3)将坐标系平移回原处

?100???TC??010???041??

(4)

?100??变换矩阵:T=TA*TB*TC= ??0?10?

??081??

(5) 求变换后的三角形ABC各顶点的坐标A’、B’、C’ A’: ?X'AY'A?100???1???121??T??121???0?10???161?

??081??XA'=1, Y A'=6 B’: ?X'BYB1???5?100???21??T??521???0?10???561???081??

XB'=5, Y B'=6 C’: ?X'CY'C?100???1???351??T??351???0?10???331?

??081??XA'=3, Y A'=3

8、设窗口左下角点坐标为(XW1,YW1),宽为LW,高为HW,视区左下角点坐标为(XV1,YV1),宽为LV,高为HV,已知窗口中有一点A(XA,YA),在视区中对应的坐标为A’(X’A,Y’A)。试计算A’的坐标值。(要求用齐次坐标进行变换,列出变换矩阵,列出计算式子,不要求计算

A θo (XW1,YW1)

(XV1,YV1)

联系客服:779662525#qq.com(#替换为@)