当前位置:首页 > 工业技术
C与C++高级图形程序设计
C与C++高级图形程序设计

C与C++高级图形程序设计PDF电子书下载

工业技术

  • 电子书积分:15 积分如何计算积分?
  • 作 者:(美)R.T.Steven,(美)C.D.Watkins著;朴享硕译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:1994
  • ISBN:7505326651
  • 页数:456 页
图书介绍:
《C与C++高级图形程序设计》目录

为什么要阅读本书 1

0.1 数学模块 2

0.2 图形界面模块 3

0.3 使用数学和图形模块 3

0.4 实体建模理论和数据库结构 3

0.5 在画面中增加物体 4

0.6 在屏幕上排序并显示物体 4

0.7 描述文件编制程序 4

0.8 实体建模程序 4

0.12 硬件和软件要求 5

0.11 光线照射和光线追踪 5

0.10 Z缓冲区 5

0.9 为实体类型生成数据 5

0.13 总结 6

第一部分 通用程序 13

第一章 数学模块 13

1.1 数字函数 13

1.2 简单的数学函数 13

1.3 Radians和Degrees函数 14

1.4 CosD和SinD函数 14

1.5 Power函数 26

1.6 Log函数 26

1.11 向量和数组程序 27

1.10 IntPower函数 27

1.7 Exp10函数 27

1.8 Sign和IntSign函数 27

1.9 IntSqrt函数 27

1.12 Vec和VecInt函数 28

1.13 UnVec和UnVeclnt函数 28

1.14 VecDot函数 28

1.15 VecCross函数 28

1.16 VecLen函数 28

1.17 VecNormalize函数 28

1.21 VecCopy函数 29

1.23 VecScalMult和VecScalMultInt函数 29

1.22 VecLinComb函数 29

1.20 VecAdd和VecAdd3函数 29

1.19 VecSub和VecSubInt函数 29

1.18 VecMatxMult函数 29

1.24 VecAddScalMult函数 30

1.25 VecNull和VecNullInt函数 30

1.26 VecElemMult函数 30

1.27 仿射变换程序 30

1.28 ZeroMatrix函数 30

1.29 Translate3D函数 30

1.32 MultiPly3DMatrices函数 31

1.31 Rotate3D函数 31

1.30 Scale3D函数 31

1.33 PrepareMatrix函数 32

1.34 PrepareInvMatrix函数 32

1.35 Transform函数 32

第二章 图形界面模块 33

2.1 SemMode函数 33

2.2 PreCale函数 33

2.3 Plot函数 33

2.4 ClearPaltte函数 33

2.5 SetPalette函数 34

2.6 InitPalette1函数 47

2.7 InitPalette2函数 48

2.8 循环调色板函数 48

2.9 Swap函数 48

2.10 Circle函数 49

2.11 Draw 函数 49

2.12 InitGraphics函数 50

2.13 WaitForkey函数 50

2.14 ExitGraphics函数 50

2.15 Title函数 50

2.16 三维画图程序 50

2.17 InitPlotting函数 50

2.19 MapCoordinates函数 51

2.18 InitPerspective函数 51

2.20 CartesianPlot3D函数 52

2.21 CylindricalPlot3D函数 52

2.22 SphericalPlot3D函数 53

2.23 DrawLine3D函数 53

2.24 PutPixel函数 53

2.25 GetPixel函数 53

2.26 显示坐标轴和彩色调色板 53

第三章 如何使用模块 55

3.1 在Mandelbrot集上散步 55

3.2 模拟两个沿轨道飞行的粒子 63

3.3 Orbit-2P.c程序 65

3.4 Orbit-3P.c程序 68

3.5 三个粒子轨道 73

3.6 生成塞平斯基三角形 73

3.7 分叉图 76

3.8 生成一个奇异的有吸引力的人 78

3.9 生成Lorenz Attractor 81

第二部分 线框和实体建模 87

第四章 实体建模理论和数据库结构 87

4.1 比例因子 87

4.2 顶点和小平面数组 87

4.3 装入和存储顶点和小平面数据 94

4.6 一个手工生成数据文件的例子 95

4.4 画一个线框小平面 95

4.5 在屏幕上画一个实体小平面 95

第五章 给画面增加物体 97

5.1 初始化物体缓冲区 97

5.2 在物体缓冲区插入物体信息 97

5.3 给画面增加边缘反射 107

5.4 从一个磁盘文件给画面增加物体 108

第六章 在屏幕上排序和显示物体 109

6.1 以放置到屏幕上的物体进行排序 109

6.2 在屏幕上放置物体 122

6.3 显示物体和反射 123

第七章 Model.c描述文件生成程序 125

第八章 3-D建模程序 129

8.1 观察者和光源向量 129

8.2 装入描述文件和画面数据 130

8.3 仿射变换 146

8.4 求出表面的法向向量 146

8.5 光照模型 147

8.6 检查小平面是否可见 147

8.7 反射屏幕缓冲区 147

8.9 在屏幕上画一个实体小平面 148

8.10 Model.c程序 148

8.8 获得小平面屏幕坐标 148

第九章 生成物体的数据库 151

9.1 增加顶点 151

9.2 生成顶点前的初始化 154

9.3 使用程序MakeObj.c生成物体 155

9.4 生成一个圆锥体或金字塔数据文件 158

9.5 为一个圆柱体生成数据文件 161

9.6 为一个半球生成数据文件 165

9.7 生成一个圆球的数据文件 168

9.8 为方程式生成数据文件 171

9.10 为旋转实体生成数据文件 179

9.9 为一个环生成数据文件 179

第十章 生成画面文件 187

10.1 使用程序ScnMaker.c 187

10.2 键盘响应程序 190

10.3 程序ScnMaker.c 190

第三部分 Z缓冲和水平描绘 199

第十一章 Z缓冲理论和数据库结构 199

11.1 比例因子 199

11.2 清除、装入和存储高度数据 199

11.3 获得一个物体文件 203

11.4 显示物体颜色名 203

12.1 键盘响应程序 205

12.2 主函数 205

第十二章 描述文件生成器DesMake.c 205

第十三章 Z缓中描绘程序 213

13.1 屏幕函数 213

13.2 光照模型 213

13.3 装入描述数据 230

13.4 Render.c程序 231

13.5 显示高度区 231

13.6 在屏幕上放置AddOns 232

13.7 Julia集图像 237

13.8 生成溶为一体的天空 239

14.1 为半球生成数据库 241

第十四章 生成并使用Z缓冲区数据库 241

14.2 为半环生成数据库 244

14.3 为方程式生成数据库 247

14.4 生成磁场数据库 251

14.5 在高度数组中寻找最高点和最低点 253

14.6 浏览数据库的一部分 255

14.7 删除不连续的零值 258

第十五章 使用分形程序生成数据库 261

15.1 生成分形山 261

15.2 从Plasmas生成的Mountains 267

15.3 三维Mandelbrot集 268

15.4 三维Julia集 274

15.5 使用Quaternions的分形 278

15.6 四元数学 279

15.7 生成Quaternion分形数据库 282

15.8 抹除高度数据 289

第四部分 光线跟踪 295

第十六章 光线跟踪技术基础 295

16.1 编译器内存方式 297

第十七章 高分辨率图形 299

第十八章 定义画面的.RT文件 329

18.1 格式限制 329

第十九章 光线跟踪程序 371

19.1 光线跟踪概略 371

19.3 装入一个.RT文件 421

19.2 主程序 421

19.4 初始化噪音函数 423

19.5 扫描画面 424

19.6 跟踪光线 424

19.7 确定颜色 427

19.8 生成纹理的表面 427

19.9 结束光线跟踪 428

第二十章 显示光线跟踪文件 429

20.1 生成一个VGA彩色显示 429

附录A 实体建模画面定义文件 437

附录B 光线跟踪中使用的材料 451

相关图书
作者其它书籍
返回顶部