《计算机图形学》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:Donald Hearn,M. Pauline Baker著;蔡士杰等译
  • 出 版 社:电子工业出版社;Prentice Hall出版公司
  • 出版年份:1998
  • ISBN:7505345974
  • 页数:484 页
图书介绍:

第1章 计算机图形学综述 1

1.1 计算机辅助设计 1

1.2 图示图形学 3

1.3 计算机艺术 3

1.4 娱乐 5

1.5 教学与培训 6

1.6 可视化 7

1.7 图象处理 7

1.8 图形用户接口 8

第2章 图形系统综述 10

2.1 视频显示设备 10

2.1.1 刷新式CRT 10

2.1.2 光栅扫描显示器 13

2.1.3 随机扫描显示器 14

2.1.4 彩色CRT监视器 15

2.1.5 直视存储管 17

2.1.6 平板显示器 17

2.1.7 三维观察设备 19

2.1.8 立体感和虚拟现实系统 21

2.2 光栅扫描系统 21

2.2.1 视频控制器 21

2.2.1 光栅扫描显示处理器 23

2.3 随机扫描系统 24

2.4 图形监视器与工作站 25

2.5 输入设备 27

2.5.1 键盘 27

2.5.2 鼠标 27

2.5.3 跟踪球和空间球 28

2.5.4 操纵杆 28

2.5.5 数据手套 29

2.5.6 数字化仪 30

2.5.7 图象扫描仪 31

2.5.8 触摸板 32

2.5.9 光笔 33

2.5.10 声音系统 33

2.6 硬拷贝设备 34

2.7 图形软件 35

2.7.1 坐标表示 36

2.7.2 图形功能 37

2.7.3 软件标准 38

2.7.4 PHIGS工作站 38

小结 39

参考文献 40

练习题 40

第3章 输出图元 42

3.1 点和线 42

3.2 画线算法 43

3.2.1 DDA算法 44

3.2.2 Bresenham画线算法 45

3.2.3 并行画线算法 50

3.3 帧缓冲器的装载 51

3.4 画线函数 52

3.5 圆生成算法 53

3.5.1 圆的特征 53

3.5.2 中点圆算法 54

3.6 椭圆生成算法 58

3.6.1 椭圆的特征 58

3.6.2 中点椭圆算法 59

3.7 其它曲线 66

3.7.1 圆锥曲线 67

3.7.2 多项式和样条曲线 68

3.8 并行曲线算法 69

3.9 曲线函数 69

3.10 象素编址和物体的几何表示 69

3.10.1 屏幕网格坐标 70

3.10.2 保留显示物体的几何特性 70

3.11 填充区域图元 71

3.11.1 扫描线多边形填充算法 72

3.11.2 内-外测试 80

3.11.3 曲线边界区域的扫描线填充 81

3.11.4 边界填充算法 81

3.11.5 泛滥填充算法 83

3.12 区域填充函数 85

3.13 单元阵列 85

3.14 字符生成 86

小结 87

参考文献 94

练习题 94

第4章 输出图元的属性 96

4.1 线属性 96

4.1.1 线型 96

4.1.2 线宽 98

4.1.3 笔和刷选择 100

4.1.4 线颜色 101

4.2 曲线属性 102

4.3 颜色和亮度等级 103

4.3.1 彩色表 105

4.3.2 灰度等级 106

4.4 区域填充属性 106

4.4.1 填充模式 106

4.4.2 图案填充 107

4.4.3 软填充 110

4.5 字符属性 112

4.5.1 文本属性 112

4.5.2 标记属性 115

4.6 束属性 116

4.6.1 线的束属性 116

4.6.2 区域填充束属性 117

4.6.3 文本的束属性 117

4.6.4 标记的束属性 117

4.7 查询函数 117

4.8 反走样 118

4.8.1 直线段的过取样 119

4.8.2 象素加权掩模 120

4.8.3 直线段的区域取样 120

4.8.4 过滤技术 121

4.8.5 象素移相 121

4.8.6 线亮度差的校正 121

4.8.7 反走样区域边界 122

小结 124

参考文献 125

练习题 126

第5章 二维几何变换 128

5.1 基本变换 128

5.1.1 平移 128

5.1.2 旋转 129

5.1.3 缩放 131

5.2 矩阵表示和齐次坐标 132

5.3 复合变换 134

5.3.1 平移 134

5.3.2 旋转 134

5.3.3 缩放 135

5.3.4 通用基准点旋转 135

5.3.5 通用固定点缩放 136

5.3.6 通用定向缩放 136

5.3.7 合并特性 137

5.3.8 通用复合变换和计算效率 138

5.4 其它变换 143

5.4.1 反射 143

5.4.2 错切 145

5.5 坐标系间的变换 147

5.6 仿射变换 149

5.7 变换函数 149

5.8 变换的光栅方法 151

小结 152

参考文献 154

练习题 154

第6章 两维观察 156

6.1 观察流程 156

6.2 观察参考坐标系 158

6.3 窗口到视区的坐标变换 158

6.4 两维观察函数 160

6.5 裁剪操作 162

6.6 点的裁剪 162

6.7 线段的裁剪 163

6.7.1 Cohen-Sutherland线段裁剪算法 164

6.7.2 梁友栋-Barsky直线裁剪算法 167

6.7.3 Nicholl-Lee-Nicholl直线裁剪算法 170

6.7.4 非矩形裁剪窗口的线段裁剪 172

6.7.5 划分凹多边形 172

6.8 多边形的裁剪 173

6.8.1 Sutherland-Hodgeman多边形裁剪 173

6.8.2 Weiler-Atherton算法 178

6.8.3 其它多边形的裁剪算法 179

6.9 曲线的裁剪 179

6.10 文字的裁剪 180

6.11 外部裁剪 181

小结 181

参考文献 184

练习题 184

第7章 结构和层次模型 186

7.1 结构的概念 186

7.1.1 基本结构函数 186

7.1.2 设置结构属性 187

7.2 编辑结构 188

7.2.1 结构表和元素指针 189

7.2.2 设置编辑模式 190

7.2.3 插入结构元素 190

7.2.4 替代结构元素 190

7.2.5 删除结构元素 191

7.2.6 标识结构元素 192

7.2.7 从一个结构中将元素拷贝到另一个结构 194

7.3 基本建模概念 194

7.3.1 模型表示 194

7.3.2 符号层次 195

7.3.3 建模软件包 196

7.4 用结构来建立层次式模型 197

7.4.1 局部坐标和建模变换 197

7.4.2 模型变换 197

7.4.3 结构层次 198

小结 199

参考文献 200

练习题 200

第8章 图形用户接口和交互输入方法 201

8.1 用户对话 201

8.1.1 窗口和图符 201

8.1.2 适应多种熟练程度的用户 202

8.1.3 一致性 202

8.1.4 减少记忆量 202

8.1.5 回退和出错处理 203

8.1.6 反馈 203

8.2 图形数据的输入 204

8.2.1 输入设备的逻辑分类 204

8.2.2 定位设备 204

8.2.3 笔画设备 205

8.2.4 字符串设备 205

8.2.5 定值设备 205

8.2.6 选择设备 206

8.2.7 拾取设备 206

8.3 输入功能 208

8.3.1 输入模式 208

8.3.2 请求模式 209

8.3.3 取样模式 211

8.3.4 事件模式 211

8.3.5 输入模式的并行使用 213

8.4 输入设备参数的初值 213

8.5 交互式构图技术 214

8.5.1 基本的定位方法 214

8.5.2 约束 214

8.5.3 网格 215

8.5.4 引力场 216

8.5.5 橡皮条方法 216

8.5.6 拖曳 216

8.5.7 着色和绘图 216

8.6 虚拟现实环境 217

小结 218

参考文献 219

练习题 219

第9章 三维概念 221

9.1 三维显示方法 221

9.1.1 平行投影 221

9.1.2 透视投影 222

9.1.3 深度提示 222

9.1.4 可见线面的标识 222

9.1.5 面绘制 223

9.1.6 分解图和剖面图 223

9.1.7 三维和立体视图 223

9.2 三维图体软件包 223

第10章 三维物体的表示 225

10.1 多边形表面 225

10.1.1 多边形表 225

10.1.2 平面方程 227

10.1.3 多边形网格 229

10.2 曲线和曲面 229

10.3 二次曲面 230

10.3.1 球面 230

10.3.2 椭球面 230

10.3.3 环面 230

10.4 超二次曲面 231

10.4.1 超椭圆 231

10.4.2 超椭球面 232

10.5 柔性物体 233

10.6 样条表示 234

10.6.1 插值和逼近样条 235

10.6.2 参数连续性条件 237

10.6.3 几何连续性条件 237

10.6.4 样条描述 237

10.7 三次样条插值方法 239

10.7.1 自然三次样条 239

10.7.2 Hermite插值 240

10.7.3 Cardinal样条 242

10.7.4 Kochanek-Bartels样条 244

10.8 Bézier曲线和曲面 245

10.8.1 Bézier曲线 245

10.8.2 Bézier曲线的特性 248

10.8.3 使用Bézier曲线的设计技术 248

10.8.4 三次Bézier曲线 250

10.8.5 Bézier曲面 251

10.9 B-样条曲线和曲面 252

10.9.1 B-样条曲线 253

10.9.2 均匀周期性B-样条曲线 254

10.9.3 三次周期性B-样条曲线 256

10.9.4 开放均匀B-样条曲线 258

10.9.5 非均匀B-样条曲线 259

10.9.6 B-样条曲面 261

10.10 Beta-样条曲线 261

10.10.1 Beta-样条连续性条件 262

10.10.2 三次周期性Beta-样条曲线矩阵表示 263

10.11 有理样条 263

10.12 两种样条表达式间的转换 265

10.13 样条曲线和曲面的显示 266

10.13.1 Horner规则 266

10.13.2 向前差分计算 267

10.13.3 细分方法 268

10.14 扫描表示 270

10.15 结构实体几何法 271

10.16 八叉树 273

10.17 BSP树 276

10.18 分形几何方法 276

10.18.1 分形生成过程 277

10.18.2 分形分类 277

10.18.3 分形的维数 277

10.18.4 确定性自相似分形几何构造 279

10.18.5 统计自相似分形几何构造 282

10.18.6 仿射分形构造方法 282

10.18.7 随机中点位移方法 283

10.18.8 地面图控制 285

10.18.9 自平方分形 286

10.18.10 自逆分形 292

10.19 形状语法和其它过程性方法 293

10.20 微粒系统 293

10.21 基于物理的建模 294

10.22 数据集的可视化 295

10.22.1 标量场的可视表示 296

10.22.2 向量场的可视表示 297

10.22.3 张量场的可视表示 298

10.22.4 多变量数据场的可视表示 299

小结 299

参考文献 299

练习题 300

第11章 三维几何和建模变换 302

11.1 平移 302

11.2 旋转 302

11.2.1 坐标轴旋转 303

11.2.2 一般三维旋转 305

11.2.3 四元数旋转 311

11.3 缩放 313

11.4 其它变换 314

11.4.1 反射 314

11.4.2 错切 315

11.5 复合变换 315

11.6 三维变换函数 318

11.7 建模变换和坐标变换 319

小结 320

参考文献 321

练习题 321

第12章 三维观察 323

12.1 观察流水线 323

12.2 观察坐标 323

12.2.1 指定观察平面 324

12.2.2 从世界坐标到观察坐标的变换 326

12.3 投影 328

12.3.1 平行投影 328

12.3.2 透视投影 332

12.4 观察体和一般投影变换 335

12.4.1 一般平行投影变换 339

12.4.2 一般透视投影变换 341

12.5 裁剪 343

12.5.1 规范化观察体 345

12.5.2 视口裁剪 346

12.5.3 齐次坐标裁剪 348

12.6 硬件实现 349

12.7 三维观察函数 349

小结 351

参考文献 352

练习题 352

第13章 可见面判别算法 354

13.1 可见面判别算法的分类 354

13.2 后向面判别 354

13.3 深度缓冲器算法 355

13.4 A缓冲器算法 357

13.5 扫描线算法 359

13.6 深度排序算法 361

13.7 BSP树算法 363

13.8 区域细分算法 364

13.9 八叉树算法 366

13.10 光线投射算法 369

13.11 曲面 370

13.11.1 曲面表示 370

13.11.2 曲面的层位线显示 370

13.12 线框算法 371

13.13 可见性判别函数 371

小结 372

参考文献 373

练习题 373

第14章 光照模型和面绘制算法 375

14.1 光源 375

14.2 基本光照模型 376

14.2.1 环境光 377

14.2.2 漫反射 377

14.2.3 镜面反射和Phong模型 379

14.2.4 多光源漫反射和镜而反射的合并 383

14.2.5 Warn模型 383

14.2.6 强度衰减 384

14.2.7 颜色 384

14.2.8 透明度 385

14.2.9 阴影 387

14.3 光强度显示 387

14.3.1 分配强度等级 388

14.3.2 Gamma校正和视频查找表 389

14.3.3 显示连续色调的图象 390

14.4 半色调模式和抖动技术 390

14.4.1 半色调近似 391

14.4.2 抖动技术 394

14.5 多边形绘制算法 396

14.5.1 恒定光强度的明暗处理 397

14.5.2 Gouraud明暗处理 397

14.5.3 Phong明暗处理 399

14.5.4 快速Phong明暗处理 399

14.6 光线跟踪算法 400

14.6.1 基本光线跟踪算法 401

14.6.2 光线与物体表面的求交计算 402

14.6.3 减少物体求交计算量 405

14.6.4 空间分割方法 406

14.6.5 光线跟踪反走样 408

14.6.6 分布式光线跟踪 410

14.7 幅射度光照模型 412

14.7.1 基本幅射度模型 412

14.7.2 逐步求精幅射度方法 415

14.8 环境映射 416

14.9 添加表面细节 417

14.9.1 用多边形模拟表面细节 417

14.9.2 纹理映射 417

14.9.3 过程式纹理映射方法 419

14.9.4 凹凸映射 420

14.9.5 帧映射 421

小结 421

参考文献 422

练习题 423

第15章 颜色模型和颜色应用 425

15.1 光的特性 425

15.2 标准基色和色彩图 427

15.2.1 XYZ颜色模型 427

15.2.2 CIE色度图 428

15.3 直观的颜色概念 429

15.4 RGB颜色模型 430

15.5 YIQ颜色模型 431

15.6 CMY颜色模型 432

15.7 HSV颜色模型 433

15.8 HSV和RGB模型之间的转换 434

15.9 HLS颜色模型 436

15.10 颜色选择及其应用 436

小结 437

参考文献 438

练习题 438

第16章 计算机动画 439

16.1 动画序列的设计 439

16.2 通用计算机动画功能 440

16.3 光栅动画 440

16.4 计算机动画语言 440

16.5 关键帧系统 441

16.5.1 变形 442

16.5.2 模拟加速度 443

16.6 运动的描述 446

16.6.1 直接运动描述 446

16.6.2 目标导向系统 446

16.6.3 运动学和动力学 447

小结 448

参考文献 448

练习题 448

附录A 计算机图形学的数学基础 450

A.1 坐标参照系 450

A.1.1 二维笛卡儿参照系 450

A.1.2 xy平面的极坐标 450

A.1.3 三维笛卡儿参照系 451

A.1.4 三维曲线坐标系 452

A.1.5 立体角 453

A.2 点与向量 453

A.2.1 向量加与定比例乘 455

A.2.2 两向量的标量积 456

A.2.3 两向量的向量积 456

A.3 基向量和度量张量 457

A.3.1 正交基 458

A.3.2 度量张量 458

A.4 矩阵 459

A.4.1 标量乘法与矩阵加法 460

A.4.2 矩阵乘法 460

A.4.3 矩阵转置 461

A.4.4 矩阵的秩 461

A.4.5 矩阵的逆 462

A.5 复数 462

A.6 四元数 464

A.7 非参数表示 465

A.8 参数表示 466

A.9 数值方法 467

A.9.1 求解线性方程组 467

A.9.2 非线性方程的求根 468

A.9.3 积分估值 469

A.9.4 为数据集拟合曲线 471

总参考文献 473