7、当x1>x2时,xin的符号是什么?
A、正B、负
B
8、当y1>y2时,xin的符号是什么?
A、负B、正
A
9、讨论圆的算法时,为了简单起见,通常考虑圆心位于坐标原点的圆的扫描转换。请问如何生成圆心不在原
点的圆?
对于圆心不在原点的圆,可先用平移变换,将它的圆心平移到原点,然后进行扫描转换,最后再将圆心平移到
原来的位置。
10、考虑圆的对称性时,有哪四个对称轴?
圆心位于原点的圆有四条对称轴:x=0、y=0、x=y和x=y。
11、若已知圆弧上一点(x,y),得到关于四条对称轴的七个对称点,关于八分对称的这些点分别为:
(x,y)、(x,y)、(x,y)、(x,y)、
(y,x)、(y,x)、(y,x)、(y,x)。
图中有两条圆弧A和B,假定当前取点为(xi,yi),那么下一点只能是正右方的E(xi+1,yi)或右下方的SE(xi+1,
yi1)两者之一。
假设M是E和SE的中点,即,利用中点画圆算法,回答下列问题:
12、当F(M)<0时,下一点应取哪个点?
下一点应取E点。
13、当F(M)>0时,下一点应取哪个点?
下一点应取SE点。
14、当F(M)=0时,下一点应取哪个点?
在E与SE之中随便取一个即可,我们约定取SE点。
15、什么叫局部极值点,如何处理局部极值点?
进入该点的边线和离开该点的边线位于过该点扫描线的同一侧,这样的点叫做局部极值点。处理局部极值点
时,一个点应看成两个点。
16、什么叫非极值点,如何处理非极值点?
进入该点的边线和离开该点的边线位于过该点扫描线的两侧,这样的点叫做非极值点。处理非极值点时,一个
点应看成一个点。
17、八连通区域的边界线有什么要求?
八连通区域的边界线必须是四连通的。
18、区域内对尚未填充内点(x,y)的检测条件有哪两种?推荐使用哪一种进行象素点检测。区域内对尚未填充内
点(x,y)的检测条件有下面两种:
(1)if(getpixel(x,y)!=边界色&&getpixel(x,y)!=填充色)
(2)if(getpixel(x,y)!=背景色)
推荐使第一种进行象素点检测。
19、用边相关扫描线填充算法做出图中多边形的ET表和AET表。
20、边标志填充算法是用什么作为标志?如何实施填充的?
边标志填充算法利用边界色作为标志来进行填充。
当扫描线从左到右扫描时碰到边界色,立刻改变标志的状态,再根据标志的状态决定某象素点是否填充。
21、将扫描线种子填充算法由实面积填充改为图案填充,则要改变哪些代码?改动代码为:
(1)原程序的画点函数putpixel()改为图案填充函数maskpixel();
(2)加上maskpixel()函数代码;