资源描述
第三章作业
1. (6分)名词解释:扫描转换、增量算法、反走样。
扫描转换:基本图形的光栅化就是在像素点阵中确定最佳逼近和理想图形的像素点集,并用指定颜色显示这些像素点集的过程。当光栅化和按扫描线顺序绘制图形的过程集合在一起时,也称为扫描转移。
增量算法:在一个迭代算法中,如果每一步X,Y值是用前一步的值加上一个增量来获得的,那么,这个算法就称为增量算法。
反走样:用于减轻走样的技术称为反走样或者称为抗锯齿。
2. (10分)计算起点坐标为(0,0),终点坐标(12,9)直线的中点算法的每一步坐标值以及中点偏差判别式d的值,填入表3-1中,并用黑色绘制图3-29中的直线段的扫描转换像素。
图3-29 像素点阵
x
y
d
x
y
d
0
0
-0.25
7
5
-0.5
1
1
0
8
6
-0.25
2
1
-0.75
9
6
0
3
2
-0.5
10
7
-0.75
4
3
-0.25
11
8
-0.5
5
3
0
12
9
-0.25
6
4
-0.75
表3-1 和d的值
第四章作业
1. (10分)名词解释:四邻接点、八邻接点、四连通域、八连通域、种子填充算法。
四邻接点:对于多边形区域内部任意一个种子像素,其上、下、左、右这四个像素,称为四邻接点。
八邻接点:对于多边形区域内部任意一个种子像素,其上、下、左、右以及左上、左下、右上、右下这八个像素,称为八邻接点。
四连通域:对于多边形区域内部任意一个种子子素出发,通过访问其上、下、左、右这四个邻接点可以遍历区域内部的所有像素,该多边形区域称为四连通域。
八连通域:对于多边形区域内部任意一个种子子素出发,通过访问其上、下、左、右以及左上、左下、右上、右下这八个邻接点可以遍历区域内部的所有像素,该多边形区域称为八连通域。
种子填充算法:从区域内任意一个种子像素开始,由内向外将填充色扩散到整个多边形区域的填充过程。
2. (10分)试写出图4-43所示多边形的边表和扫描线y=4的有效边表。
图4-43 多边形
解:表
4时的表
3. (10分)图中已知种子O,试根据简单四连通种子填充算法按左、上、右、下入栈的顺序给出象素点填充的次序。
●
●
●
●
●
●
3
O
4
5
●
●
2
1
●
6
●
●
●
●
●
●
第五章作业
1. (10分)名词解释:坐标变换、、、窗口、视区、窗视变换、裁剪、
坐标变更:是坐标系发生变换,但物体位置不发生改变,然后在新坐标系下表示所有物体上的顶点。
:( )世界坐标系,描述现实世界中场景的固定坐标系。
:( )用户坐标系,描述物体几何模型的坐标系。有时也称为局域坐标系( ,)。用户坐标系也是实数域坐标系、
窗口:在观察坐标系中定义的确定显示内容的矩形区域称为窗口。
视区:在屏幕坐标系中定义的输出图形的矩形区域称为视区。
窗视变换:图形输出需要进行窗口到视区的变换,只有在窗口内的图形才能在视区中输出,并且输出的形状要根据视区的大小进行调整,这称为窗视变换。
裁剪:在二维观察中,需要在观察坐标系下根据窗口大小对世界坐标系中的二维图形进行裁剪,只将位于窗口内的图形变换到视区输出。
2. (10分)如图5-51所示,求P0(4,1)、P1(7,3)、P2(7,7)、P3(1,4)构成的四边形绕 Q(5,4)逆时针旋转45°的变换矩阵和变换后图形的顶点坐标。
图5-51 四边形旋转
解:变换的过程包括:
(1) 平移:将P点平移至原点,变换矩形为:
(2) 旋转:图形绕原点(P点)旋转45度,变换矩形为:
(3) 反平移:将P点移回原处,变换矩阵为:
变换矩阵为:
变换过程为:
3. (14分)用编码裁剪算法裁剪线段P0(0,2),P1(3,3),裁剪窗口为1,6,1,5,如图5-54所示。要求写出:
(1)窗口边界划分的9个区间的编码原则。
(2)线段端点的编码。
(3)裁剪的主要步骤。
(4)裁剪后窗口内直线段的端点坐标。
图5-54 直线段裁剪
解:1)首先对直线段的端点进行编码,即对直线段的任一端点(x,y),根据其坐标所在的区域,赋予一个四位的二进制码D3D2D1D0
若x<,则D0=1,否则D0=0;
若x>,则D1=1,否则D1=0;
若y<,则D2=1,否则D2=0;
若y>,则D3=1,否则D3=0.
2)线段端点的编码:1=0001 2=0000
3)裁剪的主要步骤:
(1)输入直线的两端点坐标:P0(0,2),P1(3,3),以及窗口的四边界坐标:1,6,1,5
(2)对p0,p1进行编码:点p0的编码为1=0001,点p1的编码为2=0000。
(3)若1|2=0,对直线应减取之,转(6);否则1& 2≠0,对直线段可简弃之,转(7);当上述两条不满足时,进行步骤(4)
(4)确保p0在窗口外部:若p0在窗口内,则交换p0和p1的坐标值和编码。
(5)按左、右、下、上的顺序检查编码并要求出直线段和窗口边界的交点,用该交点的坐标值替换p0的坐标值。求线段p0(0,2)p1(3,3)和窗口左界1的交点,把1代入直线方程求出(1/3)*2=2.3交点坐标S(1,2.3)替换端点坐标p0(0,2),使p0坐标为(1,2.3);也即为交点,假定为s,s处把线段一分为二,并去掉p0S这一段(考虑p0是窗口外的一点,因此可以去掉p0S)转(2)
(6)用直线扫描转换算法画出当前的p0p1
(7)算法结束
4)裁剪后窗口内直线段的端点坐标P0(1,2.3),P1(3,3)
第六章作业
1. (10分)名词解释:投影、主视图、下视图、左视图、灭点。
投影:投影就是从投影中心发出射线,经过三维物体上的每一点后,和投影面相交所形成的的交点集合。
主视图:从物体的前面向后面投射所得的视图为主视图(前视图)。
下视图:从物体的上面向下面投射所得的视图为俯视图(下视图)。
左视图:从物体的左面向右面投射所得的视图为侧视图(左视图)。
灭点:和平行投影相比,透视投影的特点是所有投影线都从空间一点(称为视点或投影中心)投射,离视点近的物体投影大,离视点远的物体投影小,小到极点消失,称为灭点。
2. (10分)长方体如图6-33所示,8个坐标分别为A(0,0,0),B(2,0,0),C(2,3,0),D(0,3,0),E(0,0,2),F(2,0,2),G(2,3,2),H(0,3,2)。试对长方体进行=1/2,=1/3,=1/2的比例变换,求变换后的长方体各顶点坐标。
图6-32 长方体比例变换
解:
X’*,Y’*
A’=(0*1/2,0*1/3,0*1/2)=(0,0,0)
B’=(2*1/2,0*1/3,0*1/2)=(1,0,0)
C’=(2*1/2,3*1/3,0*1/2)=(1,1,0)
D’=(0*1/2,3*1/3,0*1/2)=(0 ,1,0)
E’=(0*1/2,0*1/3,2*1/2)=(0 ,0,1)
F’=(2*1/2,0*1/3,2*1/2)=(1,0,1)
G’=(2*1/2,3*1/3,2*1/2)=(1,1,1)
H’=(0*1/2,3*1/3,2*1/2)=(0,1,1)
所有变换后的长方体各顶点坐标为A’(0,0,0),B’(1,0,0),C’(1,1,0),D’(0,1,0),E’(0,0,1),F’(1,0,1),G’(1,1,1),H’(0,1,1)
展开阅读全文