第1章 图形环境管理 1
1.1 初始化程序 2
1.2 存储整体状态属性 6
第2章 画法 7
2.1 高性能画法 7
2.1.1 高性能画法 9
2.1.2 顶点子程序 10
2.1.3 闭合线 12
2.1.4 点集 13
2.2 多边形 14
2.2.1 用取样点法描述多边形 17
2.2.2 三角形联网 19
2.2.3 四边形联网 27
2.2.4 控制多边形的描绘方式 29
2.3 高级子程序 30
2.3.1 矩形 30
2.3.2 圆 33
2.3.3 圆弧 35
2.4 老版本格式画法 36
2.4.1 当前图形位置 37
2.4.2 点 38
2.4.3 线段 39
2.4.4 多边形 40
2.5.1 修改线型模式 42
2.5 线型 42
2.6 模式 43
第3章 字符和字体 45
3.1 字符 45
3.2 字体 49
3.3 字体查询子程序 54
第4章 显示及颜色模式 55
4.1 彩色显示 55
4.1.1 位平面 56
4.1.2 抖动 57
4.2 R.G.B模式 57
4.3 Gouraud造影 62
4.2.1 RGBcolor子程序 62
4.4 彩色图像模式 71
4.4.1 在彩图模式下的Gouraud造影 73
4.4.2 闪烁 77
4.5 获得颜色信息 79
4.6 单图和多图模式 80
4.7 Gamma修正 82
第5章 输入子程序 86
5.1 登记、查询与排队 88
5.2 登记查询一个设备 88
5.3 事件排队 89
5.4 特殊设备 96
5.4.1 键盘设备 96
5.5 赋值器 97
5.4.2 窗口管理 97
5.5.1 记时器 98
5.5.2 光标 98
5.5.3 重像设备 98
5.6 控制外围输入/输出设备 98
5.7 确定视频选择方案 100
5.8 空间球TM设备 103
第6章 动画 105
6.1 双缓冲器 105
6.2 双缓冲器方式 105
7.1 坐标系统 115
第7章 坐标变换 115
7.2 投影变换 117
7.3 视像变换 123
7.4 模型变换 127
7.5 控制变换次序 129
7.5.1 当前矩阵模式(mmode) 130
7.5.2 用堆栈矩阵分级绘图 130
7.6 视见区、屏幕框和屏幕盒 139
7.7 附加裁剪平面 142
7.8 用户定义的变换 143
第8章 隐藏面的消隐 145
8.1 Z缓冲器 145
8.3 特殊性能 146
8.3.1 进入Z缓冲器绘图 146
8.2 控制Z值 154
8.3.2 交互比较 163
8.3.3 Z缓冲器写标记 164
8.3.4 在IRIS_4D/VGX系统上的模板 164
8.4 消除背面多边形 170
8.5 ALPHA比较 171
第9章 光照 176
9.1 什么是图形库光照 176
9.1.1 光源和表面特征 176
9.2 物体对光线的反射 176
9.3 设置图形库光照 177
9.2.4 物体本身的光辐射 177
9.2.3 环境光反射 177
9.2.2 镜面反射 177
9.2.1 漫反射 177
9.3.1 曲面法线 178
9.3.2 设置光照单元 179
9.4 改变光照设置 182
9.5 其他光照性能 183
9.5.1 无限远的光源 183
9.5.2 无限远视点 183
9.5.3 环境光和环境光发射 184
9.5.4 非单位长度的法线 184
9.6 高级光照特性 185
9.6.1 光照的衰减 185
9.6.2 锥形点光源 186
9.6.3 两面光照 187
9.6.4 快速更改材料特性 188
9.6.5 缺省设置 190
9.6.6 透明度 191
9.6.7 多窗口光照 192
9.6.8 对模型观察矩阵和投影矩阵的限制 192
9.7 光照的运行 192
9.8 彩图光照 193
9.9 光照程序实例 194
第10章 像素点 198
10.1 像素点格式 198
10.2 像素点的源及其目标 199
10.3 有效地读/写像素点 200
10.4 使用像素点的方式 204
10.4.1 对像素点进行移位 204
10.4.2 扩展像素点数据的位数 205
10.4.3 向像素点添加数据 206
10.4.4 为Z缓冲器指定像素点 206
10.4.5 改变像素点填充方和 206
10.4.6 在图像中的子图像 207
10.4.7 拼接组合和分解像素点数据 208
10.4.8 像素点操作顺序 210
10.5 老格式像素点的存取 211
第11章 帧缓冲器和绘图模式 212
11.1 配置覆盖位平面和垫底位平面 214
11.2 绘图模式 217
11.3 写掩码 219
11.4 光标技术 229
11.4.1 十字准线光标 231
第12章 选择图项 238
12.1 选取模式 238
12.1.1 使用名字堆栈 241
12.1.2 定义选取区域 242
12.2 选择模式 249
第13章 深度提示 256
13.1 深度提示 256
13.1.1 设置深度提示 257
13.1.2 在彩图模式和RGB模式下的深度提示 259
13.2 大气效果 263
13.2.1 雾 265
13.2.2 雾的特征 265
13.2.3 雾的计算 266
13.2.4 雾的参数 266
第14章 曲线和曲面 268
14.1 非均匀有理B样条(NURBS) 268
14.1.1 什么是B样条曲线和曲面 268
14.1.2 NURBS界面综述 270
14.1.3 NURBS曲面描述 270
14.1.4 裁剪NURBS曲面 274
14.1.5 控制显示属性 278
14.3 绘制曲线的教学方法 286
14.2.1 综述 286
14.2 最格式曲线和曲面 286
14.3.1 Bezier三维曲线 287
14.3.2 Cardinal样条三维曲线 289
14.3.3 B样条三维曲线 289
14.4 曲线画法 290
14.4.1 有理曲线 300
14.5 曲面画法 301
第15章 反混淆 311
15.1 精确取样 311
15.2 混合 314
15.3.1 高性能的反混淆点 319
15.3 一次性反混淆——光滑图形元素 319
15.3.2 高性能反混淆线 325
15.3.3 高性能反混淆多边形 331
15.4 用累加缓冲器进行多次反混淆 340
第16章 图形目标 346
16.1 定义一个目标 346
16.2 运用目标 349
16.3 编辑目标 352
16.3.1 使用标记 352
16.3.2 在目标中进行插入、删除和替代 354
16.3.3 目标存储管理 356
16.3.4 将屏幕坐标映射到世界坐标 357
17.1 在IRIS_4D/GT/GTX系统上的反馈 362
第17章 反馈 362
17.2 在Personal IRIS系统上的反馈 363
17.3 在IRIS_4D/VGX系统上的反馈 365
17.4 有关反馈的其他信息 365
17.5 反馈的例子 366
第18章 结构 369
18.1 结构映射 372
18.2 定义一个结构 373
18.2.1 装载结构图像矩阵 373
18.2.2 使用结构筛选器 375
18.3 结构坐标 379
18.4 结构函数 382
18.5 结构环境 384
18.6 结构编程注意事项 386
第19章 图形库的综合应用实例 397
19.1 C语言应用程序与图形库的编译链接 397
19.2 GIS真实感地形图编制方法 397
19.2.1 图形的环境设置 397
19.2.2 图形的绘制 399
19.3 综合应用举例 404
附录一 图形库子程序目录清单 432
附录二 图形库子程序的作用域 435
附录三 全局状态特征 452
附录四 变换矩阵 457
附录五 图形库错误信息提示 460
附录六 图形库子程序及其相关技术内容信息提示 466