A. 正 B. 负 C. 无符号 D. 递增
三、简答题:
试写出画线的数值微分(DDA)算法(提示:①假定直线的斜率在0和1之间;②可用任何程序设计语言或伪代码表达)
假设线段的两个端点为(x0, y0),(x1, y1),其斜率为k,0 第四章 一、选择题: 1、使用X扫描线算法对多边形进行填充时,对扫描线和多边形边相交的检测,下述操作正确的是(B、D) A. 当扫描线与多边形交于某顶点时且该点的两个邻边在扫描线的一侧时, 计数0次 B. 当扫描线与多边形交于某顶点时且该点的两个邻边在扫描线的上面一侧时, 计数2次 C. 当扫描线与多边形交于某顶点时且该点的两个邻边在扫描线的下面一侧时, 计数1次 D. 当扫描线与多边形的某边重合时, 计数1次 2、X-扫描线算法涉及到哪些主要的操作步骤?(A、B、E、D) A. 求交; B. 排序; C. 建立多边形表; D. 区间添色; E. 交点配对; 3、下面关于反走样的方法中论述错误的是(D) A. 提高分辨率; B. 把像素当作平面区域进行采样; C. 采用特定形状的滤波器进行加权区域采样; D. 增强图像的显示亮度 4、多边形填充时,下述论述错误的是(C) A. 多边形被两条扫描线分割成许多梯形,梯形的底边在扫描线上,腰在多边形的边上,并且相间排列; B. 多边形与某扫描线相交得到偶数个交点,这些交点间构成的线段分别在多边形内、外,并且相间排列; C. 在判断点是否在多边形内时,一般通过在多边形外找一点,然后根据该线段与多边形的交点数目为偶数即可认为在多边形内部,若为奇数则在多边形外部,而且不需考虑任何特殊情况; D. 边的连贯性告诉我们,多边形的某条边与当前扫描线相交时,很可能与下一条扫描线相交; 5. 点阵字符的存储是(C)。 A. 笔画的端点坐标 B. ASCII码 C. 字符点阵的行或列编码 D. 区位码 6. 用边相关扫描线填充算法,写出AB边的边记录(A) A. B. C. D. 7. 多边形填充需要的填充条件为(A、B、C、D、E、F)。 A. 多边形内的一点的坐标 B. 边界色 C. 填充色 D. 多边形的顶点序列 E. 背景色 F. 填充模式 8. 种子填充需要的填充条件为(A、E、C)。 A. 区域内一点的坐标 B. 多边形的顶点序列 C. 边界色 D. 背景色 E. 填充色 F. 填充模式 二、判断题: 1、边标志算法与活性边表算法比较,更适合于软件实现。(F) 2、在种子填充算法中所提到的八向连通区域算法同时可填充四向连通区。(T) 3、扫描线种子填充算法中,种子代表的是它所在的尚未填充的区段。(T) 三、简答题: 1、描述x扫描线进行区域填充的算法。 2、在多边形扫描线算法中,找出下面多边形中哪些位置的多边形边与扫描线的交点需要特殊考虑,将其实际需要考虑的交点个数写入下面表格中(不需要特殊处理的位置留置空白即可)。 12345678910 3、给出一个多边形A,其顶点坐标序列为p1(2, 2), p2(7, 4), p3(0, 6)。试写出使用活性边表算法沿着X从小到大对该多边形进行扫描时,该多边形的边表,并给出扫描位置为3时,对应的活性边表。 4、给出一个多边形A,其顶点坐标序列为p1(3, 1), p2(8, 3), p3(1, 6)。试写出使用活性边表算法沿着X从小到大对该多边形进行扫描时,该多边形的边表,并给出扫描线Y=3时,对应的活性边表。 第五章 一、选择题: 1、在多边形的逐边裁剪法中,对于某条多边形的边(方向为从端点S到端点P)与某条裁剪线(窗口的某一边)的比较结果共有以下四种情况,分别需输出一些顶点.请问哪种情况下输出的顶点是错误的(A) A. S和P均在可见的一侧,则输出S和P. B. S和P均在不可见的一侧,则输出0个顶点. C. S在可见一侧,P在不可见一侧,则输出线段SP与裁剪线的交点. D. S在不可见的一侧,P在可见的一侧,则输出线段SP与裁剪线的交点和P. 2、使用Weiler-Atherton算法进行多边形裁减,顶点按逆时针顺序表示的多边形P的各个顶点中,哪些属于进点(灰色为裁减窗口)?(C) A. p1, p2, p3 B. 1, 3 C. 2, 4 D. 1, 2, 3, 4 3、使用Weiler-Atherton算法进行多边形裁减,下面的顶点按照逆时针顺序表示的多边形P各个顶点中,哪些属于进点(灰色为裁减窗口)?(C) A. P1, P2, P3, P4, P5; B. 1, 3, 5 C. 2, 4, 6 D. 1, 2, 3, 4 4. 中点分割法求交点的规则,当线段P1P2求出中点P后,如果P1与P不同侧,移动P2点,P1与P不同侧的表达式为:(D)。 A. (C1&& C)!=0 B. (C1& C)!=0 C. (C1&& C)= =0 D. (C1& C)= =0 5. 直线的编码裁剪算法中,判断直线是否位于同一边界外侧的表达式(C)。 A. (c1&&c2)!=0 B. (c1&&c2)=0 C. (c1&c2)!=0 D. (c1&c2)=0 6. 如图,用Cohen-Sutherland编码算法,对直线作裁剪。已知窗口左下角坐标(50,50),右上角坐标(300,300),直线两个端点的坐标为(150,30)和(330,250),直线两个端点的编码分别为:(E、C) A. 1001 B. 0000 C. 0010 D. 0110 E. 0100 F. 0101 7. 用Weiler-Atherton多边形裁剪算法进行内裁剪时,当被裁剪多边形和裁剪窗口的顶点序 列都按顺时针方向排列,正确的裁剪思想为(A、E)。 A. 碰到入点,沿被裁剪多边形按顺时针方向搜集顶点序列 B. 碰到入点,沿被裁剪多边形按逆时针方向搜集顶点序列 C. 碰到入点,沿裁剪窗口按逆时针方向搜集顶点序列 D. 碰到出点,沿裁剪窗口按逆时针方向搜集顶点序列 E. 碰到出点,沿裁剪窗口按顺时针方向搜集顶点序列 F. 碰到出点,沿被裁剪多边形按顺时针方向搜集顶点序列 8. 直线裁剪的Liang—Barsky算法中,参数u1的值由线段从外到内遇到的矩阵边界所决定,因此u1取0到各个交点参数的(D)。 A. 最小值 B. 中间值 C. 最终值 D. 最大值 9. 多边形裁剪后,新的结果多边形含有:(A、D、E、F)。 A. 若干原始多边形在界内的顶点 B. 必须有窗口顶点 C. 可能有窗口顶点 D. 交点 E. 原始多边形在界外的顶点 F. 其他顶点 二、判断题: Weiler-Atherton多边形裁减算法可以处理任何非自相交多边形。(T) Sutherland-Hodgman多边形裁减算法可以处理任何非自相交多边形。(F) Sutherland-Hodgeman多边形裁剪中,常用向量叉积法来测试当前点P是否在边界内侧。当窗口边界A(30,100)、B(40,180),某点P(50,200),通过计算v=AB*AP,可知P点在边界内侧。(F) 用Weiler-Atherton多边形裁剪算法进行外裁剪时,当被裁剪多边形和裁剪窗口的顶点序列都按顺时针方向排列时,裁剪思想为:碰到入点沿裁剪窗口按逆时针方向搜索顶点序列,碰到出点沿被裁剪多边形按顺时针方向搜索顶点序列。(F) Sutherland-Hodgeman多边形裁剪算法是一次完成对所有窗口边界的全部裁剪。(F) 在进行点的裁剪时,已知窗口的左下角坐标(50,100),右上角坐标(300,200),点P(150,300)在窗口内。(F) 三、简答题: 简述点与多边形之间的包含性检测算法。 第六章 一、选择题: 1、以下关于图形变换的论述不正确的是(D) A. 平移变换不改变图形大小和形状,只改变图形位置; B. 拓扑关系不变的几何变换不改变图形的连接关系和平行关系; C. 旋转变换后各图形部分间的线性关系和角度关系不变,变换后直线的长度不变