第1章 绪论 1
1.1计算机图形学的概念及研究内容 1
1.1.1图形与图像 1
1.1.2研究内容 2
1.1.3相关学科 3
1.2计算机图形学的发展 4
1.2.1图形硬件的发展 4
1.2.2图形软件及图形软件标准的发展 6
1.2.3图形专用算法的发展 6
1.3计算机图形学的应用 7
1.3.1计算机辅助设计(CAD)及计算机辅助制造(CAM) 7
1.3.2科学计算可视化 9
1.3.3计算机动画 10
1.3.4人机交互 10
1.3.5计算机艺术 11
1.3.6计算机辅助教学(CAI) 11
习题1 12
第2章 计算机图形系统 13
2.1计算机图形系统构成和功能 13
2.1.1计算机图形系统构成 13
2.1.2计算机图形系统功能 15
2.2输入设备 15
2.2.1键盘 15
2.2.2鼠标 16
2.2.3光笔 16
2.2.4触摸屏 17
2.2.5数字化仪 18
2.2.6扫描仪 18
2.2.7游戏杆 和跟踪球 18
2.2.8数据手套 19
2.3输出设备 19
2.3.1显示设备 19
2.3.2硬拷贝设备 24
2.4光栅扫描显示系统 26
2.4.1光栅扫描显示系统的组成 26
2.4.2相关概念 27
2.4.3 PC图形显示卡 30
2.5计算机图形标准 31
习题2 34
第3章 基本图形的生成算法 35
3.1直线的扫描转换 35
3.1.1数值微分算法 35
3.1.2中点画线算法 36
3.1.3 Bresenham画线算法 38
3.2圆的扫描转换 39
3.2.1中点画圆算法 39
3.2.2 Bresenham画圆算法 41
3.3椭圆的扫描转换 42
3.4实面积图形的生成 46
3.4.1多边形的填充 46
3.4.2种子填充算法 51
3.5光栅图形反走样算法 52
3.5.1过取样 52
3.5.2简单区域取样 53
3.5.3加权区域取样 53
3.6属性处理 54
3.6.1线属性 54
3.6.2区域填充属性 56
3.7字符处理 56
3.7.1点阵式字符 56
3.7.2矢量式字符 57
3.8 OpenGL基本图元的绘制 58
3.8.1点的绘制 59
3.8.2线的绘制 62
3.8.3多边形的绘制 65
习题3 67
第4章 几何变换 69
4.1几何变换的数学基础 69
4.1.1矩阵运算 69
4.1.2矩阵运算的基本性质 70
4.1.3二维坐标系统 71
4.2二维图形几何变换 72
4.2.1二维图形的基本变换 72
4.2.2组合变换 74
4.3三维图形的几何变换 74
4.3.1三维图形的基本变换 74
4.3.2组合变换 77
4.4投影变换 79
4.4.1基本概念 79
4.4.2平行投影 80
4.4.3透视投影变换 81
4.5窗口—视区变换 83
4.5.1基本概念 83
4.5.2视窗变换实例Window To Viewport的设计 83
4.5.3编写过程中的技术要点 84
4.6二维图形的裁剪 85
4.6.1点的裁剪 85
4.6.2直线的裁剪 86
4.6.3多边形的裁剪 91
4.6.4曲线和文字的裁剪 94
4.7 OpenGL图形变换基础 95
习题4 101
第5章 曲线与曲面 102
5.1曲线、曲面参数表示的基础知识 102
5.1.1矢量 102
5.1.2曲线与曲面的参数表示 103
5.1.3插值、逼近、拟合与光顺 104
5.1.4曲线的参数连续性和几何连续性 107
5.2 Bezier曲线 108
5.2.1 Bezier曲线的定义 108
5.2.2 Bezier曲线的性质 108
5.2.3 Bezier曲线的矩阵表示 110
5.2.4 Bezier曲线的拼接 111
5.3 B样条曲线 112
5.3.1 B样条曲线的定义 112
5.3.2 B样条曲线的性质 113
5.3.3 B样条曲线分类 115
5.4非均匀有理B样条曲线 115
5.4.1 NURBS曲线的定义 115
5.4.2 NURBS的齐次坐标表示 116
5.4.3 NURBS的优缺点 116
5.5 Bezier曲面 117
5.5.1 Bezier曲面的定义 117
5.5.2 Bezier曲面片的拼接 118
5.6 B样条曲面 119
5.6.1 B样条曲面的数学表示 119
5.6.2 B样条曲面片的拼接 120
5.7非均匀有理B样条曲面 120
5.8 OpenGL中自由曲线的绘制 120
5.8.1 Bezier曲线的绘制 120
5.8.2 NURBS曲线的绘制 124
习题5 129
第6章 真实感图形 131
6.1消除隐藏线 131
6.1.1消隐的基础知识 131
6.1.2凸多面体的隐藏线消除 131
6.1.3 凹多面体的隐藏线消除 132
6.1.4二次曲面体的隐藏线消除 133
6.2消除隐藏面 134
6.2.1区域排序算法 134
6.2.2 Z缓冲区算法 135
6.2.3扫描线算法 136
6.2.4区域采样算法 137
6.3纹理 139
6.3.1纹理的定义和映射 139
6.3.2纹理的反走样处理 140
6.4光照模型 142
6.4.1光源特性和物体表面特性 142
6.4.2光照模型与处理 143
6.4.3明暗模型与处理 144
6.4.4 阴影生成 145
6.4.5整体光照模型 147
6.5光线跟踪 148
6.5.1光线跟踪的基本原理 148
6.5.2光线与实体的求交 149
6.6颜色模型 151
6.6.1基本概念 151
6.6.2 CIE色度图 152
6.6.3常用的颜色模型 154
6.6.4颜色的选择插值与复制 155
习题6 156
第7章 交互式绘图技术 157
7.1交互式绘图概述 157
7.1.1交互式绘图的概念 157
7.1.2交互式绘图系统的任务 157
7.1.3交互式绘图系统的设计原则 158
7.2交互式输入的基本模式 159
7.3基本交互式绘图技术 160
7.4交互式绘图系统的构造 163
7.4.1交互式用户接口的内容 164
7.4.2交互式用户接口的工作方式 164
7.4.3交互式用户接口实现 166
7.5 OpenGL中的交互操作 168
7.5.1物体的选择 168
7.5.2反馈 169
习题7 175
第8章 计算机动画 176
8.1计算机动画起源与发展 176
8.2计算机动画的过程与分类 179
8.3计算机动画功能及应用 181
8.4计算机动画控制方法 182
8.5关键帧系统 183
8.5.1变形 184
8.5.2模拟加速度 186
8.6运动的描述 188
8.6.1直接运动描述 188
8.6.2目标导向系统 189
8.6.3运动学和动力学 189
习题8 189
第9章 实用CAD系统介绍 191
9.1 AutoCAD系统介绍 191
9.1.1 AutoCAD概述 192
9.1.2 AutoCAD系统简介 193
9.1.3系统功能与技术特点 209
9.1.4系统的体系结构 211
9.2 3DMAX系统介绍 211
9.2.1 3DMAX概述 212
9.2.2 3DMAX系统简介 212
9.2.3 3DMAX系统功能 224
9.2.4 3DMAX体系结构 225
习题9 227
参考文献 228