二、课程内容
第一节 直线的扫描转换
(一) 数值微分法(DDA算法) (二) 中点Bresenham画直线算法
为便于硬件实现,对中点Bresenham画直线算法改进,产生了一般的Bresenham画直线算法。
第二节 圆的扫描转换
(一) 八分法画圆
(二) 中点Bresenham画圆算法
第三节 椭圆的扫描转换
(一) 椭圆的特征
(二)椭圆的中点Bresenham算法
第四节 多边形的扫描转换与区域填充
(一) 多边形的扫描转换
多边形的扫描转换的概念; x-扫描线算法;
采用活化边表的有序边表算法
(二) 边缘填充算法
对边填充进一步改进,引入了栅栏填充算法。
(三) 区域填充
简单的种子填充算法;扫描线种子填充算法
它和简单的种子填充算法均适用于填充带有内孔的多边形区域。
(四) 其他相关概念
第五节 字符处理
(一) 点阵字符 (二) 矢量字符
第六节 属性处理
(一) 线型与线宽 (二) 字符的属性 (二) 区域填充属性
第七节 图形反走样
(一)走样和反走样的概念 (二)常用的几种反走样技术
三、 重点、难点提示和教学手段
重点掌握常见图元的生成的各种算法的原理、方法及实现、优缺点。 教学方法: 课堂讲授与自学(课外)相结合。
四、思考与练习
1. 分别用简单DDA算法、Bresenham画直线算法生成AB线段,请分别写出轨迹点的坐标。 (已知A(100,100),B(104,98))
2.有一个五边形,其边界顶点为 P1(6,1),P2(8,5),P3(6,7),P4(2,6),
P5(2,3)。用有序边表算法填充该多边形,请写出边的分类表(EL表)和各步骤的活化边表(AEL表)的内容。
3. 设种子像素S(4,4),用扫描线种子填充算法填充该多边形,请写出填充过程中各堆栈的内容。堆栈的最大深度是多少?
第六章 二维变换及二维观察
一、学习目的
通过本章的学习,理解和掌握几何变换的原理和变换矩阵、二维观察的步骤,掌握直线段和多边形裁剪的常用算法。本章计划8学时。
二、课程内容
第一节 基本概念
(一) 什么是几何变换 (二) 齐次坐标的概念
用n+1维向量来表示n维向量。一个向量的齐次坐标表示不是唯一的。 (三) 二维变换矩阵
第二节 基本几何变换
(一)二维图形的比例变换、对称变换、错切变换、旋转变换、平移变换的原理及变换矩阵。
(二)二维图形几何变换的计算的一般形式
第三节 复合变换
复合变换是指图形作一次以上的几何变换,变换结果是每次变换矩阵的相乘。 (一)二维复合平移、比例、旋转变换的原理及变换矩阵。 (二)其他二维复合变换
(三)相对于任一参考点的二维几何变换 (四)相对于任意方向的二维几何变换 (五)坐标系之间的变换 (六)变换的性质
第四节 二维观察
(一)一些基本的概念
(二)用户坐标系到观察坐标系的变换 (三)窗口到视区的变换
第五节 裁剪
(一) 点的裁剪 (二)直线段的裁剪
1. Cohen-Sutherland端点编码算法
用4位二进制码来表示线段端点相对矩形裁剪窗口的位置。
若线段的两个端点的编码“与”结果非零,则认为该线段”完全不可见”,算法结束; 若线段的两个端点的编码均是零,则认为该线段”完全可见”,显示该线段,算法结束; 否则,需要进一步处理。 2.中点分割算法
分别求出直线段两个端点各自的最远可见点,再显示这两个最远可见点之间的线段即可。
(三) 多边形的裁剪
1.Sutherland-Hodgman逐次多边形裁剪算法
可实现凸边形裁剪窗口对任一个凹、凸的主多边形进行裁剪。依次用窗口的每条边对主多边形裁剪。
2. Weiler-Atherton多边形裁剪算法
可实现任意形状的多边形裁剪窗口(凸、凹、带内孔)对任意形状的主多边形(凹、凸、带内孔)进行裁剪。
进点、出点的概念;裁剪多边形顶点表的建立、主多边形顶点表的建立;内侧多边形的
生成、外侧多边形的生成。 (四) 其他裁剪
三、重点、难点提示和教学手段
重点掌握二位几何变换的原理和变换矩阵,学会分析与求解二维复合变换;重点掌握线段裁剪和多边形裁剪的原理及实现算法。 教学方法: 课堂讲授与自学(课外)相结合。
四、思考与练习
1.填空题
在二维Sutherland-Cohen端点编码算法中,一条直线段与矩形裁剪窗口的边界最多求 次交点。
2.编程序实现二维Cohen-Sutherland端点编码算法。
3.用Sutherland-Hodgman逐次多边形裁剪算法实现一个矩形窗口对某六边形进行裁剪,请简述裁剪过程。
4.用Weiler-Atherton多边形裁剪算法实现一个矩形窗口对某六边形进行裁剪,请简述裁剪过程。
5.试推导把通过点P1(x1,y1)和P2(x2,y2)的直线变成与x轴重合的变换矩阵. 6. 证明二维点相对x轴作对称,紧跟着相对y=-x作对称变换完全等价于该点相对坐标原点作旋转变换.
第七章 三维变换及三维观察
一、学习目的
通过本章的学习,掌握三维几何变换的原理和变换矩阵。本章计划6学时。
二、课程内容
第一节 三维几何变换的基本概念
(一) 三维齐次坐标变换矩阵 (二) 平面几何变换
第二节 三维基本几何变换
(一)三维图形的基本变换
三维图形的比例变换、对称变换、错切变换、旋转变换、平移变换的原理及变换矩阵。 ( 二)复合变换
第三节 三维投影变换
投影的定义: 把n维坐标系中的点变成小于n维坐标系的点。
平面几何投影的分类:投影平面、投影线、投影中心;根据投影中心离投影面的距离的不同,平面几何投影可分为平行投影和透视投影两大类。
平行投影又分为正投影、斜投影。 (一) 正投影
三视图(主视图、侧视图、俯视图); 正轴测(正等测、正二测、正三测)。
(二)斜投影
斜等测、斜二测。
第四节 透视投影
(一)一点透视投影 (二)二点透视投影
了解一点透视、两点透视与三点透视的区别、灭点与主灭点的定义。
第五节 观察坐标系及观察空间
了解观察坐标系及观察空间的概念
第六节 三维观察流程
了解三维观察流程
三、重点、难点提示和教学手段
重点掌握三维图形的基本变换和变换矩阵,重点掌握投影的定义、分类,灭点、主灭点的定义。
教学方法: 课堂讲授与自学(课外)相结合。
四、思考与练习
计算并完成下面图形的绘制:
(1) 画出立方体的正等测投影、正二测投影和正三测投影; (2)画出立方体的斜等测投影、斜二测投影; (3)画出立方体的一点透视图。
第八章 曲线和曲面