内容发布更新时间 : 2025/1/5 17:59:27星期一 下面是文章的全部内容请认真阅读。
A 4.6 2 1 B 2 5 1 C 0 -1 1 可以写出顶点坐标: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)的编码裁剪
100
y
1 4 3 000P1(0,2
) 2
1 S
0100
0110
1000
P2(3,3) 0000
0010 1010
1 0 101
0
1 2 3 4 x
1)窗口边界划分的9个区间的编码原则; 编码 窗口外 条件 D3 上边top y>wyt wyt=4 D2 下边bottom y P1 code1=0001, P2 code2=0000 3)裁剪的主要步骤; 输入 P1(0,2), P2(3,3), wyt=4, wyb=1, wxr=4, wxl=1; P1 code1=0001, P2 code2=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)。