《交互式计算机图形学 基于OpenGL的自顶向下方法》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:爱德伍德·安吉尔著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2009
  • ISBN:9787121088698
  • 页数:601 页
图书介绍:本书基于自顶向下和面向图形应用编程的方法,采用C语言并结合OpenGL系统地介绍了现代计算机图形学的核心概念、原理、技术和方法,其内容包括基于OpenGL的交互式图形编程、基于图形绘制流水线的各种几何变换操作和基本算法、光与材质的相互作用、可编程着色器、层级建模、过程建模、曲线和曲面建模、反走样、纹理映射、图像融合和高级绘制等内容。本书最新版本充分反映了计算机图形学领域的最新发展现状,是一本“基础性与先进性、理论性与应用性、科学性与通俗性”相结合的内容全面而又系统的国外经典计算机图形学教材。

第1章 图形系统和模型 1

1.1 计算机图形学的应用 1

1.2 图形系统 3

1.3 图像:物理的和合成的 7

1.4 成像系统 11

1.5 虚拟照相机模型 14

1.6 程序员接口 16

1.7 图形绘制系统的体系结构 22

1.8 可编程流水线 25

1.9 性能特征 25

小结和注释 26

建议阅读资料 27

习题 27

第2章 图形学编程 29

2.1 Sierpinski镂垫 29

2.2 编写二维图形应用程序 30

2.3 OpenGL API 34

2.4 图元和属性 37

2.5 颜色 44

2.6 观察 49

2.7 控制函数 52

2.8 Sierpinski镂垫绘制程序 56

2.9 多边形和递归 57

2.10 三维Sierpinski镂垫 59

2.11 绘制隐函数曲线 63

小结和注释 69

建议阅读资料 70

习题 71

第3章 输入和交互 74

3.1 交互 74

3.2 输入设备 75

3.3 客户和服务器 80

3.4 显示列表 81

3.5 显示列表和建模 87

3.6 事件驱动输入编程 88

3.7 菜单 93

3.8 拾取 94

3.9 一个简单的CAD程序 100

3.10 建立交互式模型 105

3.11 交互式动画程序 108

3.12 交互式程序的设计 111

3.13 逻辑运算 112

小结和注释 117

建议阅读资料 117

习题 118

第4章 几何对象和变换 121

4.1 标量、点和向量 121

4.2 三维图元 129

4.3 坐标系和标架 130

4.4 OpenGL中的标架 140

4.5 建模一个彩色立方体 143

4.6 仿射变换 149

4.7 平移、旋转和缩放 151

4.8 变换的齐次坐标表示 154

4.9 变换的级联 158

4.10 OpenGL变换矩阵 164

4.11 三维应用程序的接口 167

4.12 四元数 171

小结和注释 174

建议阅读资料 174

习题 175

第5章 观察 177

5.1 经典观察和计算机观察 177

5.2 计算机观察 181

5.3 定位照相机 182

5.4 简单的投影 191

5.5 OpenGL中的投影 194

5.6 隐藏面消除 196

5.7 交互式网格显示 198

5.8 平行投影变换矩阵 202

5.9 透视投影变换矩阵 206

5.10 投影和阴影 210

小结和注释 212

建议阅读资料 213

习题 213

第6章 光照和明暗绘制 215

6.1 光线和材质 215

6.2 光源 218

6.3 Phong光照模型 221

6.4 向量的计算 227

6.5 多边形明暗绘制 231

6.6 通过递归细分逼近球面 234

6.7 OpenGL中的光源 237

6.8 OpenGL中的材质属性 239

6.9 球面模型的明暗绘制 240

6.10 全局照明 242

小结和注释 243

建议阅读资料 244

习题 244

第7章 从顶点到片元 246

7.1 图形绘制流水线的基本实现策略 246

7.2 图形绘制系统的4个主要任务 248

7.3 裁剪 251

7.4 线段的裁剪 251

7.5 多边形的裁剪 255

7.6 其他图元的裁剪 257

7.7 三维裁剪 258

7.8 光栅化 260

7.9 Bresenham算法 263

7.10 多边形光栅化算法 264

7.11 隐藏面消除 267

7.12 反走样 276

7.13 显示方面的问题 278

小结和注释 283

建议阅读资料 284

习题 284

第8章 离散技术 287

8.1 缓存 287

8.2 数字图像 288

8.3 缓存的写操作 290

8.4 OpenGL中的位操作与像素操作 293

8.5 举例 298

8.6 映射方法 300

8.7 纹理映射 301

8.8 OpenGL中的纹理映射 306

8.9 纹理生成 314

8.10 环境贴图 315

8.11 合成技术 319

8.12 多通道绘制与累积缓存 324

8.13 采样与走样 328

小结和注释 333

建议阅读资料 334

习题 334

第9章 可编程着色器 336

9.1 可编程流水线 336

9.2 着色语言 337

9.3 OpenGL扩展 338

9.4 OpenGL着色语言 339

9.5 OpenGL着色语言 342

9.6 着色器与OpenGL程序的连接 346

9.7 移动顶点 350

9.8 基于顶点程序的光照计算 354

9.9 片元着色器 357

9.10 基于顶点与基于片元的光照计算 358

9.11 sampler变量类型 359

9.12 立方体贴图 361

9.13 凹凸映射 366

小结和注释 372

建议阅读资料 372

习题 373

第10章 层级建模方法 374

10.1 图符和实例 374

10.2 层级模型 375

10.3 机器人手臂 377

10.4 树与树的遍历 379

10.5 使用树形数据结构 382

10.6 动画 385

10.7 图形对象 386

10.8 场景图 391

10.9 一个简单的场景图API 393

10.10 开放场景图(OSG) 406

10.11 图形和因特网 408

10.12 其他树形结构 410

小结和注释 414

建议阅读资料 415

习题 415

第11章 过程建模方法 417

11.1 基于算法的模型 417

11.2 基于物理的模型和粒子系统 418

11.3 牛顿粒子 419

11.4 求解粒子系统方程 423

11.5 约束条件 425

11.6 一个简单的子系统 428

11.7 基于语言的模型 431

11.8 递归方法和分形 434

11.9 过程噪声 439

小结和注释 442

建议阅读资料 442

习题 442

第12章 曲线和曲面 444

12.1 曲线和曲面的表示形式 444

12.2 设计准则 448

12.3 三次参数多项式曲线 450

12.4 插值 450

12.5 Hermite曲线和曲面 454

12.6 Bezier曲线和曲面 457

12.7 三次B样条 460

12.8 普通B样条 464

12.9 曲线和曲面的绘制 467

12.10 Utah茶壶模型 472

12.11 代数曲面 473

12.12 OpenGL中的曲线和曲面 477

小结和注释 481

建议阅读资料 482

习题 482

第13章 高级绘制 484

13.1 超越流水线绘制结构 484

13.2 光线跟踪 485

13.3 构建一个简单的光线跟踪器 487

13.4 绘制方程 491

13.5 辐射度方法 493

13.6 RenderMan 498

13.7 并行绘制 499

13.8 基于图像的绘制 504

小结和注释 506

建议阅读资料 507

习题 507

附录A 示例程序 509

附录B 空间 567

附录C 矩阵 574

附录D OpenGL函数简介 581

参考文献 593