第一章 绪论 1
1.1 计算机图形学 1
1.2 计算机图形学的应用领域 1
1.2.1 计算机辅助设计与制造(CAD/CAM) 2
1.2.2 动画 2
1.2.3 艺术 2
1.2.4 科学计算可视化 2
1.2.5 图形显示和绘制 2
1.2.6 计算机辅助教学(CAI) 2
习题 3
第二章 计算机图形系统 4
2.1 系统的构成 4
2.2 常用图形输入设备 4
2.2.1 鼠标器 5
2.2.2 数字化仪 5
2.2.3 图形扫描仪 5
2.3 常用图形输出设备 6
2.3.1 图形显示器 6
2.3.2 绘图仪 9
2.3.3 激光打印机 10
2.3.4 喷墨打印机 11
习题 12
第三章 计算机图形学的基本算法 13
3.1 直线的扫描转换 13
3.2 圆的生成 16
3.2.1 正多边形逼近算法 16
3.2.2 Bresenham算法 18
3.3 多边形填充 20
3.3.1 多边形的扫描转换 20
3.3.2 边标志填充算法 25
3.3.3 种子填充算法 26
习题 28
第四章 裁剪与变换 30
4.1 二维坐标系统 30
4.1.1 世界坐标系 30
4.1.2 设备坐标系 30
4.1.3 规格化设备坐标系 30
4.2 窗口—视区的变换 31
4.3 二维图形的裁剪 33
4.3.1 点的裁剪 33
4.3.2 直线的裁剪 33
4.3.3 多边形的裁剪 37
4.4 二维图形的几何变换 40
4.4.1 图形的变换方法 40
4.4.2 二维图形的基本变换 40
4.4.3 组合变换 46
4.5 三维形体的几何变换 48
4.5.1 比例变换 49
4.5.2 平移变换 49
4.5.3 对称变换 50
4.5.4 错切变换 50
4.5.5 旋转变换 52
5.4.6 组合变换 54
4.6 投影变换 57
4.6.1 投影的概念 57
4.6.2 三视图的变换矩阵 58
4.6.3 轴测投影的变换矩阵 59
4.6.4 透视投影的变换矩阵 62
4.7 三维形体的观察流水线 69
4.7.1 PHIGS坐标系统和坐标变换 69
4.7.2 观察方向变换 69
4.7.3 观察映射变换 72
习题 78
第五章 曲线曲面 80
5.1 曲线、曲面参数表示的基础知识 80
5.1.1 矢量 80
5.1.2 曲线与曲面的参数表示 80
5.1.3 插值、逼近、拟合与光顺 82
5.1.4 曲线的参数连续性和几何连续性 82
5.2 参数三次样条曲线 83
5.2.1 参数三次样条曲线的力学背景 83
5.2.2 三次曲线方程 84
5.2.3 三切矢方程 85
5.2.4 边界条件 87
5.2.5 计算插值 89
5.3 贝齐尔曲线 90
5.3.1 贝齐尔曲线的表示式 90
5.3.2 贝齐尔曲线的性质 93
5.3.3 贝齐尔曲线的线性运算 94
5.3.4 贝齐尔曲线的分割 95
5.3.5 贝齐尔曲线的拼接 97
5.4 B样条曲线 99
5.4.1 基本概念 100
5.4.2 各种类型的B样条曲线 104
5.4.3 计算B样条曲线上点的德布尔算法 113
5.4.4 B样条曲线转换为分段贝齐尔曲线的算法 115
5.4.5 B样条曲线的反算 117
5.5 贝齐尔曲面 120
5.5.1 定义贝齐尔曲面的张量积方法 120
5.5.2 贝齐尔曲面的性质 121
5.5.3 贝齐尔曲面的拼接 122
5.5.4 贝齐尔曲面的片分割与三角化 123
5.6 B样条曲面 128
5.6.1 B样条曲面及其性质 128
5.6.2 B样条曲面的正算 129
5.6.3 B样条曲面的反算 129
习题 132
第六章 图形的数据结构 134
6.1 概述 134
6.2 构成图形的几何信息和拓扑信息 135
6.2.1 几何元素的定义 135
6.2.2 平面立体的拓扑关系 135
6.3 形体的三种模型 136
6.3.1 线框模型 136
6.3.2 表面模型 137
6.3.3 实体模型 137
6.4 线性表 138
6.4.1 线性表的逻辑结构及插入和删除 138
6.4.2 线性表的顺序存储结构 139
6.4.3 数组 141
6.5 矩阵压缩存储 142
6.5.1 特殊矩阵的存储 142
6.5.2 稀疏矩阵的存储及其乘法 143
6.6 线性表的链式存储结构 149
6.6.1 线性链表 149
6.6.2 循环链表 154
6.6.3 双向链表 155
6.7 排序 155
6.7.1 概述 156
6.7.2 起泡排序 156
6.7.3 选择排序法 157
6.7.4 插入排序法 158
习题 161
第七章 隐藏面、线的消除 162
7.1 概述 162
7.2 消隐算法常用的几种几何计算方法 164
7.2.1 两直线段的交点 164
7.2.2 平面多边形的外法矢量 165
7.2.3 包含性检验 165
7.2.4 包围盒检验 166
7.2.5 交矩形检验 166
7.2.6 深度检验 167
7.2.7 平面和棱边的分类 168
7.3 凸多面体的消隐 169
7.4 任意平面立体的隐藏线消除 170
7.4.1 算法的基本思路 170
7.4.2 剔除朝后面和建立潜在可见面表 170
7.4.3 建立潜在可见棱边表 171
7.4.4 求每条潜在可见棱边与各个朝前面的隐藏关系 172
7.5 深度(z)缓冲器算法 173
7.6 扫描线深度缓冲器算法 175
习题 176
第八章 真实感图形的显示 177
8.1 基本光照模型 177
8.2 颜色 181
8.3 法线矢量的计算 181
8.4 镜面反射光线矢量的计算 182
8.5 多边形的明暗处理 182
8.5.1 兰伯特明暗处理法 183
8.5.2 古兰德明暗处理法 183
8.5.3 冯氏明暗处理法 184
习题 185
参考文献 186