《计算机图形学》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:何援军编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2006
  • ISBN:7111182340
  • 页数:345 页
图书介绍:本书介绍计算机图形学基本理论和技术。

第1章 绪论 1

1.1 计算机图形学及它与其他学科的关系 1

前言 1

1.2 计算机图形学发展简史 2

1.3 计算机图形学的应用领域 3

1.3.1 计算机辅助设计与制造 3

1.3.2 科学计算可视化 4

1.3.3 虚拟现实 4

1.3.4 计算机艺术 5

1.3.5 计算机动画 5

1.4.1 图形输入 6

1.3.6 图形用户接口 6

1.4 计算机图形学研究的基本问题 6

1.4.2 图形描述 7

1.4.3 图形变换 7

1.4.4 图形运算 8

1.4.5 图形输出 8

1.4.6 几何算法、几何复杂性和计算效率 9

1.5 计算机图形学的相关开发技术 10

1.5.1 OpenGL 10

1.5.3 DirectX 11

1.5.2 ACIS 11

1.5.4 Java3D 12

1.5.5 VRML 12

第2章 光栅图形学 14

2.1 直线光栅化显示算法 14

2.1.1 直线光栅化显示的数字微分分析法(DDA) 14

2.1.2 直线光栅化显示的Bresenham算法 16

2.2 圆光栅化算法 19

2.2.1 利用圆的八方对称性画圆 20

2.2.2 简单的方程画圆方法 20

2.2.3 Bresenham画圆算法 21

2.2.4 中点圆算法 23

2.3 椭圆光栅化算法 25

2.4 多边形填充 26

2.4.1 扫描线填充算法 27

2.4.2 边填充算法 28

2.4.3 种子填充算法 29

2.5 字符和汉字显示 31

2.5.1 点阵字符 31

2.6.1 图形走样 32

2.5.2 矢量字符 32

2.6 反走样 32

2.6.2 超采样 33

2.7 本章要点 34

2.8 本章作业 35

第3章 图形裁剪 36

3.1 线裁剪算法 36

3.1.1 Cohen-Sutherland算法 36

3.1.2 Liang-Barsky算法 38

3.2.1 Sutherland-Hodgon多边形裁剪算法 41

3.2 多边形裁剪 41

3.2.2 图形求交集多边形裁剪法 42

3.3 本章要点 43

3.4 本章作业 43

第4章 基本几何 44

4.1 基本几何的描述 44

4.1.1 直线的描述 44

4.1.2 圆的描述 46

4.1.3 圆弧的描述 46

4.1.4 基本几何的统一描述 47

4.2.1 基本几何及其方向的定义 48

4.1.5 圆弧曲线 48

4.2 基本几何及图形边界的方向 48

4.2.2 几何元素定向的优点 51

4.3 直线和圆弧的相交 52

4.3.1 坐标系变换求交 52

4.3.2 几何计算求交 53

4.4 曲线和曲线的相交 54

4.4.1 劣弧段最小外接矩形求取 55

4.4.2 圆弧曲线的相交算法 56

4.5 本章要点 57

4.6 本章作业 58

第5章 二维几何 59

5.1 向量和向量的交点 59

5.2 包容性测试 60

5.2.1 符号判别法 60

5.2.2 角度判别法 60

5.2.3 半射线交点计数判别法 61

5.2.4 Griffiths判别法 63

5.3 直线段和图形公共部分的求取 63

5.4.1 一般图形的描述 65

5.4.2 一般图形的填充算法 65

5.4 一般图形的填充算法 65

5.5 二维布尔运算 66

5.5.1 环 67

5.5.2 二维几何构型中的图形描述 67

5.5.3 两个环的交、并、差几何运算 68

5.5.4 两个环运算的数据结构 75

5.5.5 两个环运算的算法 76

5.5.6 扩展到圆弧 77

5.5.7 含有多个内环图形的运算 80

5.6 平面多角形面积的求取 81

5.5.8 算法复杂度分析 81

5.7 本章要点 82

5.8 本章作业 82

第6章 图形变换 83

6.1 图形变换的理论基础 83

6.1.1 坐标系、基底、坐标行 83

6.1.2 基底变换 84

6.1.3 线性变换及其乘积 85

6.2 图形变换的基本描述 87

6.2.1 齐次坐标 87

6.1.4 不同基底下的线性变换 87

6.2.2 齐次坐标变换矩阵 88

6.2.3 二维图形变换 88

6.2.4 三维图形变换 88

6.3 图形变换的几何化表示 91

6.3.1 几何化表示的基本理论 91

6.3.2 图形变换的几何化表示 92

6.3.3 图形变换几何化表示的实施 92

6.3.4 图形变换几何化表示的应用 93

6.3.5 三维变换的几何化表示 95

6.3.6 图形变换几何化表示与基本几何 98

6.4 投影与投影变换 99

6.4.1 平行投影 99

6.4.2 投影变换、深度坐标与三维观测流水线 99

6.4.3 投影示意图 100

6.5 轴测 变换 101

6.5.1 轴测变换的定义 101

6.5.2 正轴测变换 102

6.5.3 轴测投影变换的一般公式 104

6.5.4 斜二测变换 105

6.6.1 罗盘变换的基本原理 106

6.6.2 罗盘变换公式 106

6.6 罗盘变换 106

6.6.3 屏幕轴三角架的实时产生 107

6.7 透视变换 108

6.7.1 透视变换的基本原理 108

6.7.2 透视变换矩阵 109

6.7.3 透视投影转化为平行投影 109

6.7.4 灭点及其产生 110

6.8 坐标变换矩阵小结 116

6.9 视图变换 117

6.9.1 视图变换的基本原理 117

6.9.2 视图变换的实施 118

6.10 本章要点 119

6.11 本章作业 120

第7章 三维几何 121

7.1 坐标系统 122

7.2 物体的描述 122

7.3 几何计算 124

7.3.1 最小最大判定法 124

7.3.2 标准平面方程的建立 125

7.3.3 通过N个顶点求取平面方程 126

7.3.4 深度测试 126

7.3.5 面对棱的遮挡 127

7.3.6 隐藏线的表示 128

7.3.7 一维交集算法 129

7.4 凸多面体的隐藏线消除 130

7.4.1 凸多面体的描述 131

7.4.2 全体凸多面体的数据结构 132

7.4.3 棱的表示与输出 132

7.4.4 凸多面体消隐算法的基本原理 134

7.4.5 凸多面体落影区的求取 135

7.4.6 凸多面体对其他物体的遮挡计算 136

7.4.7 凸多面体的自消隐 137

7.4.8 凸多面体场景消隐算法的实施 138

7.5 一般多面体的隐藏线消除 140

7.5.1 物体的描述和面的构造 140

7.5.2 棱分类——一般多面体的自消隐 141

7.5.3 面对棱的遮挡 141

7.5.4 面消隐时特殊情况的处理 145

7.5.5 消隐算法的数据结构 147

7.5.6 一般多面体消隐算法的实施 149

7.6 一般多面体的隐藏面消除 151

7.6.1 隐藏面消除的基本原理 151

7.6.2 隐藏面消除的实施 153

7.8 本章作业 156

7.7 本章要点 156

第8章 几何造型 158

8.1 垂直扫掠物体生成算法 159

8.1.1 垂直扫掠算法的输入参数 159

8.1.2 垂直扫掠算法的顶点编号与坐标值定值 160

8.1.3 垂直扫掠算法的构造过程 160

8.1.4 垂直扫掠算法的三维物体记录 160

8.1.5 垂直扫掠算法边的重复显示处理 161

8.1.6 垂直扫掠算法的扩展 161

8.1.8 进一步扩展 162

8.1.7 垂直扫掠物体产生程序 162

8.2 旋转物体的生成算法 163

8.2.1 旋转体的输入参数 163

8.2.2 旋转体的顶点编号与坐标定值 163

8.2.3 旋转体的构造过程 164

8.2.4 旋转体的三维物体记录 165

8.2.5 旋转体边的重复显示处理 165

8.2.6 特殊情况处理 165

8.2.8 旋转体的物体产生程序 166

8.2.9 旋转体产生示例 166

8.2.7 旋转体算法的扩展 166

8.3 物体装配 167

8.3.1 基本构件的输入 167

8.3.2 装配数据的输入 169

8.4 布尔运算 170

8.4.1 布尔运算的基本原理——拓扑重构 171

8.4.2 布尔运算的几何信息重构——误差处理 174

8.5 本章要点 175

8.6 本章作业 175

9.1.1 人对世界的视觉感知 176

9.1.2 光源的种类 176

9.1 光和颜色 176

第9章 光照模型 176

9.1.3 物体表面的种类 177

9.1.4 颜色论 177

9.1.5 三色学说 178

9.1.6 CIE色度图 178

9.1.7 色彩应用 181

9.2 颜色模型 182

9.2.1 原色系统 182

9.2.2 RGB颜色模型 182

9.2.4 HSV颜色模型 183

9.2.3 CMY颜色模型 183

9.3 光照模型 184

9.3.1 环境光 184

9.3.2 漫反射和Lambert模型 185

9.3.3 镜面反射和Phong模型 186

9.3.4 透明模型 188

9.3.5 简单局部光照模型 189

9.4 插值算法 189

9.4.1 恒定明暗处理 189

9.4.3 Phong明暗处理(法向插值算法) 190

9.4.2 Gouraud明暗处理(光强插值算法) 190

9.5 光线跟踪 191

9.5.1 Whitted整体光照模型 191

9.5.2 光线跟踪基本原理 191

9.5.3 光线跟踪算法 192

9.5.4 光线跟踪算法中的关键技术 195

9.5.5 光线跟踪的反走样 196

9.6 阴影 197

9.6.1 自身阴影 197

9.6.2 投射阴影 198

9.6.3 阴影算法 198

9.7 纹理 200

9.7.1 纹理的定义 201

9.7.2 颜色纹理 202

9.7.3 几何纹理 205

9.8 本章要点 206

9.9 本章作业 206

第10章 曲线和曲面 208

10.1 曲线曲面的基本理论 209

10.1.1 曲线与曲面的参数表示 209

10.1.2 曲线的切矢及自然参数表示 209

10.2 参数三次曲线曲面 210

10.1.3 曲面论 210

10.2.1 参数三次曲线方程 211

10.2.2 参数三次曲面 212

10.2.3 参数连续性和几何连续性 212

10.3 Bézier曲线和曲面 213

10.3.1 Bézier曲线方程 214

10.3.2 Bernstein基函数的性质 215

10.3.3 Bézier曲线的性质 216

10.3.4 Bézier曲线的升阶 217

10.3.5 Bézier曲线的拼接 218

10.3.6 Bézier曲面 219

10.4.1 B样条曲线方程及其与Bézier曲线的比较 220

10.4.2 B样条基函数的递推定义及其性质 220

10.4 B样条曲线和曲面 220

10.4.3 B样条曲线的类型划分 222

10.4.4 一般非均匀B样条曲线 222

10.4.5 B样条曲面方程及其性质 224

10.4.6 B样条曲面的矩阵表示和常见的B样条曲面 225

10.5.1 NURBS的提出 226

10.5.2 NURBS曲线方程及其性质 226

10.5 NURBS曲线和曲面 226

10.5.3 NURBS曲面方程及其性质 227

10.6 Coons曲面 228

10.7 曲面的三角化表示 228

10.7.1 曲面三角化描述 229

10.7.2 曲面三角化遍历 230

10.7.3 三角形曲面的简化 231

10.7.4 三角形曲面的压缩 232

10.8 本章要点 234

10.9 本章作业 234

11.1 小挠度样条函数的建立 235

11.1.1 小挠度样条函数基本方程的导出 235

第11章 曲线拟合与双圆弧逼近 235

11.1.2 小挠度样条函数的边界条件 239

11.2 大挠度分段三次样条函数的建立 240

11.2.1 大挠度样条函数基本方程组的导出 240

11.2.2 大挠度样条基本方程组的解法 242

11.3 双圆弧逼近 244

11.3.1 平均切线法 244

11.3.2 双圆弧公切点的轨迹 245

11.3.3 公切点的确定 245

11.3.4 双圆弧的求法 246

11.3.5 样条曲线的直线逼近 247

11.3.6 一般函数曲线的双圆弧逼近 248

11.4 圆的直线逼近 249

11.5 本章要点 250

11.6 本章作业 251

第12章 交互技术 252

12.1 设计原则 252

12.2 界面和菜单设计 253

12.2.1 建立一个新应用 254

12.2.2 定义主菜单 254

12.2.3 定义一个执行菜单 254

12.2.6 加标题 256

12.2.4 添加源代码 256

12.2.5 C语言(*.c)程序文件的加入 256

12.3 交互设计的基本技术 257

12.3.1 定位技术 257

12.3.2 橡皮筋技术 257

12.3.3 拖拉技术 257

12.3.4 选择技术 258

12.4 数据结构设计 258

12.4.4 辅助图元的数据结构设计 259

12.4.3 基本图元的数据结构设计 259

12.4.2 层的数据结构设计 259

12.4.1 图形的数据结构设计 259

12.4.5 其他数据结构设计 260

12.5 UNDO和REDO技术 260

12.5.1 UNDO和REDO功能的数据结构设计 261

12.5.2 UNDO和REDO功能命令执行时的操作 262

12.5.3 交互应用系统中的命令接口 263

12.5.4 UNDO或REDO时的动作流程 264

12.6 本章要点 265

12.7 本章作业 265

第13章 参数设计 266

13.1 几何约束满足问题 267

13.2 基于点簇归约的几何推理算法 268

13.2.1 基于点簇的几何推理算法原理 268

13.2.2 基于点簇的几何推理算法 271

13.3 基于图形构造模型的参数设计方法 273

13.3.1 基本模型 273

13.3.2 表示点的各种节点 275

13.3.3 表示直线的各种节点 277

13.3.4 表示圆的各种节点 278

13.3.5 模型扩展 280

13.3.6 模型求解 282

13.4 参数化图库建库工具 283

13.4.1 文件转换器 283

13.4.2 图形校正 284

13.4.3 用户界面 284

13.5 本章要点 285

13.6 本章作业 285

附录A 基础算法程序 286

附录B 图形接口 337

附录C 教学网站 344

参考文献 345