书籍详情
实战OpenGL三维可视化系统开发与源码精解
作者:吕希奎,周小平 编著
出版社:电子工业出版社
出版时间:2009-06-01
ISBN:9787121084966
定价:¥69.50
购买这本书可以去
内容简介
本书以“铁路三维可视化系统”实例作为全书的主线,以循序渐进的讲解方式,通过实际应用系统来讲解OpenGL在实际三维可视化系统开发中所应用到的编程方法、技术和技巧。系统包括大规模三维地形可视化系统、三维线路设计系统、三维场景漫游系统、第三方模型(3DS、DXF)管理和应用系统、纹理管理和应用系统、多媒体输出系统(三维动画录制、图像序列录制、打印输出、导出到AutoCAD等外部模型)。内容涵盖了OpenGL程序框架、OpenGL几何模型、坐标变换、纹理映射、材质、计算机动画技术、双目立体真三维、OpenGL扩展应用、OpenGL图像处理、三维图形学基础、摄像漫游、构造天空和地形、模型载入、高级纹理映射、图元处理、OpenGL缓冲区、显示列表、空间信息查询、基于OpenGL和遥感图像的地形三维动态显示技术、Oracle 数据库编程、Oracle OCI编程技术等多个方面。本书附带光盘1张,内容为本书实例的源文件、系统运行所需要的影像纹理和数字高程模型文件;此外,还包括程序功能运行动画和OCI程序示例。本书讲解清晰,言简意赅,书中所有程序均取材于实际系统,全部具有详细注释,具有极高的可复用价值,可直接应用于其他相关系统开发中,帮助读者快速进入三维可视化设计开发领域。本书深入浅出、内容广泛,既可以作为从事可视化系统、虚拟现实、计算机图形学研究及其他图形应用程序开发的工作人员的必备用书,也可作为大学相关专业师生的参考书,还可作为OpenGL三维图形编程的培训教程,或供其他相关专业人士和计算机爱好者阅读。
作者简介
吕希奎,博士,毕业于西南交通大学道路与铁道工程专业。主要从事道路勘测设计现代技术、城市轨道交通、选线设计理论、工程信息技术与虚拟环境仿真技术的研究,已发表及被录用论文近20篇,导师是第二届全国教学名师易思蓉教授。先后参与国家自然科学基金“基于GIS的虚拟环境选线系统智能环境建模方法及应用”(0278082)、铁道部“高速磁悬浮铁路线路平纵面技术参数初步研究”、 国家863“高速磁悬浮铁路线路设计参数研究”项目的研究。3年软件公司的工作经验,高级程序员,具有多年的OpenGL、Oracle数据库开发经验。目前正在主持“交通安全与控制”河北省重点实验室开放课题资助项目(城市轨道交通三维可视化规划与设计系统,211001)研究。
目录
第1篇 系统开发基础
第1章 三维图形世界
1.1 计算机三维图形技术的发展
1.2 科学计算可视化技术
1.3 三维可视化工程设计
1.4 本书的适用对象
1.5 全书概览
第2章 OpenGL概述
2.1 OpenGL概念建立
2.1.1 OpenGL基本理解
2.1.2 OpenGL的特点及功能
2.1.3 OpenGL工作流程
2.1.4 OpenGL绘图流程
2.2 OpenGL的版本和扩展
2.2.1 OpenGL版本
2.2.2 OpenGL扩展
2.3 OpenGL编程基础
2.3.1 OpenGL数据类型
2.3.2 OpenGL库函数
2.3.3 OpenGL句法
2.3.4 OpenGL状态变量
2.3.5 OpenGL变换
2.4 OpenGL程序框架建立
2.4.1 OpenGL像素格式
2.4.2 着色描述表
2.4.3 设置像素格式
2.4.4 创建着色描述表
2.4.5 创建Visual C++程序
2.5 本章小结
第3章 Oracle与OCI技术及编程基础
3.1 Oracle数据库简介
3.2 Oracle数据库的安装
3.3 Oracle数据类型
3.4 Oracle编程接口
3.4.1 ADO开发接口
3.4.2 Pro* C/C++
3.4.3 Oracle OCI
3.4.4 ADO、Pro*C/C++、Oracle OCI的对比分析
3.5 OCI编程
3.5.1 OCI编程基础
3.5.2 OCI数据结构
3.5.3 OCI程序的基本结构
3.5.4 OCI执行SQL的步骤
3.6 VC ++ 6.0下OCI编程实例
3.6.1 数据的准备
3.6.2 建立工程
3.6.3 加入OCI的头文件与库文件
3.6.4 在VC中应用OCI编程
3.7 本章小结
第2篇 大规模地形三维可视化系统设计与实现
第4章 地形三维可视化系统框架与OCI类模块设计
4.1 系统程序框架建立
4.1.1 建立Visaul C ++工程
4.1.2 添加OpenGL框架代码和文件
4.1.3 程序实现
4.2 OCI公共类的实现
4.2.1 新类的添加
4.2.2 类变量的添加
4.2.3 类函数的实现
4.3 本章涉及到的OpenGL函数与知识点
4.4 本章小结
第5章 地形三维可视化系统的地形渲染实现
5.1 地形三维可视化概述
5.2 地形三维可视化的主要算法
5.2.1 主要算法概述
5.2.2 四叉树结构的多分辨率地形模型
5.3 地形三维可视化系统的实现
5.3.1 海量地形与影像纹理数据的获取方法
5.3.2 海量地形自分块程序实现
5.3.3 大影像的自分块及程序实现
5.3.4 状态栏指示器的实现
5.3.5 地形与影像子块的调度
5.3.6 三维地形纹理映射
5.3.7 地形节点评价系统
5.3.8 系统优化算法
5.3.9 三维地形的渲染
5.3.10 真三维立体的实现
5.4 本章涉及到的OpenGL函数与知识点
5.5 本章小结
第6章 地形三维可视化系统项目管理与辅助功能
6.1 项目管理
6.1.1 新建项目
6.1.2 打开项目
6.2 背景天空的实现
6.3 绘图模式的控制
6.4 空间查询
6.4.1 查询算法实现
6.4.2 查询标识设置
6.4.3 查询三维坐标
6.4.4 查询空间距离
6.5 照相机模块的设计与实现
6.5.1 键盘控制的实现
6.5.2 鼠标控制的实现
6.6 本章涉及到的OpenGL函数与知识点
6.7 本章小结
第3篇 线路三维可视化系统设计与实现
第7章 三维交互技术与三维线路数据结构
7.1 三维交互技术
7.1.1 交互环境概述
7.1.2 正射投影模式实现
7.1.3 正射投影模式下场景控制
7.1.4 透视投影模式实现
7.2 三维地面坐标的获取
7.2.1 正射投影模式下的获取
7.2.2 透视投影模式下的获取
7.3 三维线路数据结构设计
7.3.1 边坡数据结构
7.3.2 桥梁数据结构
7.3.3 隧道数据结构
7.3.4 水沟数据结构
7.3.5 线路数据结构
7.4 本章涉及到的OpenGL函数与知识点
7.5 本章小结
第8章 三维线路设计实现
8.1 线路方案主要参数设计
8.2 设计交点信息输入实现
8.3 线路中心线定位
8.4 设计方案保存与平面方案生成
8.4.1 设计方案保存
8.4.2 平面方案的自动生成
8.5 纵断面设计模块的实现
8.6 边坡模型的生成算法
8.7 线路路基三维建模
8.8 隧道三维建模与绘制
8.8.1 隧道三维建模
8.8.2 隧道参数设置实现
8.8.3 隧道绘制实现
8.9 桥梁三维建模与绘制
8.9.1 桥梁三维建模
8.9.2 桥梁参数设置实现
8.9.3 桥梁绘制实现
8.10 线路三维模型绘制
8.11 本章涉及到的OpenGL函数与知识点
8.12 本章小结
第9章 道路整体三维建模
9.1 道路整体三维模型的实现
9.1.1 线路封闭区域确定与分割算法
9.1.2 地形块综合数据点计算
9.1.3 分块TIN模型的构网实现
9.1.4 封闭区域内数据点的剔除
9.1.5 整体构网的实现
9.2 纹理管理
9.2.1 边坡纹理
9.2.2 路肩纹理
9.2.3 桥梁护坡面纹理
9.2.4 隧道内墙纹理
9.2.5 隧道洞门纹理
9.3 本章涉及到的OpenGL函数与知识点
9.4 本章小结
第10章 三维漫游的实现
10.1 飞行路径建立
10.1.1 飞行路径简介
10.1.2 飞行路径设置方法
10.1.3 飞行路径插值算法
10.1.4 飞行路径的保存
10.1.5 打开飞行路径
10.1.6 显示/关闭飞行路径
10.2 沿飞行路径漫游实现
10.2.1 沿固定高度漫游实现
10.2.2 沿相对高度漫游实现
10.3 沿线路方案线三维漫游实现
10.3.1 飞行路径的获取
10.3.2 漫游的实现
10.4 三维漫游的控制
10.4.1 开始/暂停漫游
10.4.2 停止漫游
10.4.3 单步前进
10.5 三维漫游的调整
10.5.1 飞行视野调整
10.5.2 飞行高度调整
10.5.3 飞行倾角调整
10.5.4 飞行速度调整
10.5.5 三维漫游调整的热键实现
10.6 三维漫游的相关计算
10.6.1 三维漫游帧频的计算
10.6.2 三维漫游速度的计算
10.6.3 三维漫游里程的计算
10.7 本章涉及到的OpenGL函数与知识点
10.8 本章小结
第4篇 线路三维可视化系统辅助功能实现
第11章 显示模式控制及实现
11.1 显示模式控制及实现
11.1.1 双目立体方式
11.1.2 正射投影方式
11.1.3 透视投影方式
11.2 时钟指北针的实现
11.3 缩略图的实现
11.4 本章涉及到的OpenGL函数与知识点
11.5 本章小结
第12章 3D模型载入与应用
12.1 常用3D模型概述
12.1.1 3DS模型
12.1.2 OBJ模型
12.1.3 ASE模型
12.1.4 MD2/MD3模型
12.1.5 MS3D模型
12.2 3DS模型的载入
12.2.1 3DS文件基本构成
12.2.2 第三方软件转换法
12.2.3 程序直接载入
12.2.4 程序直接载入的实现
12.3 3DS模型在系统中应用实例
12.4 本章涉及到的OpenGL函数与知识点
12.5 本章小结
第13章 系统输出接口与动画录制实现
13.1 输出线路三维模型到AutoCAD
13.1.1 输出格式DXF简介
13.1.2 DXF输出模块的设计
13.1.3 输出的实现
13.2 AVI动画录制
13.2.1 动画录制类实现
13.2.2 动画录制参数设置
13.2.3 开始录制动画
13.2.4 暂停录制动画
13.2.5 结束录制动画
13.3 屏幕图形的打印
13.3.1 图形打印类的实现
13.3.2 打印预览的实现
13.3.3 打印设置的实现
13.3.4 打印的实现
13.4 录制图像
13.4.1 图像采集频率
13.4.2 图像录像
13.4.3 停止录像图像
13.5 保存屏幕到位图
13.6 本章小结
第14章 系统简介与运行实例
14.1 系统介绍
14.1.1 系统主要特点
14.1.2 系统运行环境
14.2 系统功能模块简介
14.3 系统运行实例
14.4 本章小结
附录
附录A 相关数学程序模块
附录B OpenGL核心函数库和应用函数库
附录C OpenGL常用编程技巧
附录D OpenGL资源网站
参考文献
第1章 三维图形世界
1.1 计算机三维图形技术的发展
1.2 科学计算可视化技术
1.3 三维可视化工程设计
1.4 本书的适用对象
1.5 全书概览
第2章 OpenGL概述
2.1 OpenGL概念建立
2.1.1 OpenGL基本理解
2.1.2 OpenGL的特点及功能
2.1.3 OpenGL工作流程
2.1.4 OpenGL绘图流程
2.2 OpenGL的版本和扩展
2.2.1 OpenGL版本
2.2.2 OpenGL扩展
2.3 OpenGL编程基础
2.3.1 OpenGL数据类型
2.3.2 OpenGL库函数
2.3.3 OpenGL句法
2.3.4 OpenGL状态变量
2.3.5 OpenGL变换
2.4 OpenGL程序框架建立
2.4.1 OpenGL像素格式
2.4.2 着色描述表
2.4.3 设置像素格式
2.4.4 创建着色描述表
2.4.5 创建Visual C++程序
2.5 本章小结
第3章 Oracle与OCI技术及编程基础
3.1 Oracle数据库简介
3.2 Oracle数据库的安装
3.3 Oracle数据类型
3.4 Oracle编程接口
3.4.1 ADO开发接口
3.4.2 Pro* C/C++
3.4.3 Oracle OCI
3.4.4 ADO、Pro*C/C++、Oracle OCI的对比分析
3.5 OCI编程
3.5.1 OCI编程基础
3.5.2 OCI数据结构
3.5.3 OCI程序的基本结构
3.5.4 OCI执行SQL的步骤
3.6 VC ++ 6.0下OCI编程实例
3.6.1 数据的准备
3.6.2 建立工程
3.6.3 加入OCI的头文件与库文件
3.6.4 在VC中应用OCI编程
3.7 本章小结
第2篇 大规模地形三维可视化系统设计与实现
第4章 地形三维可视化系统框架与OCI类模块设计
4.1 系统程序框架建立
4.1.1 建立Visaul C ++工程
4.1.2 添加OpenGL框架代码和文件
4.1.3 程序实现
4.2 OCI公共类的实现
4.2.1 新类的添加
4.2.2 类变量的添加
4.2.3 类函数的实现
4.3 本章涉及到的OpenGL函数与知识点
4.4 本章小结
第5章 地形三维可视化系统的地形渲染实现
5.1 地形三维可视化概述
5.2 地形三维可视化的主要算法
5.2.1 主要算法概述
5.2.2 四叉树结构的多分辨率地形模型
5.3 地形三维可视化系统的实现
5.3.1 海量地形与影像纹理数据的获取方法
5.3.2 海量地形自分块程序实现
5.3.3 大影像的自分块及程序实现
5.3.4 状态栏指示器的实现
5.3.5 地形与影像子块的调度
5.3.6 三维地形纹理映射
5.3.7 地形节点评价系统
5.3.8 系统优化算法
5.3.9 三维地形的渲染
5.3.10 真三维立体的实现
5.4 本章涉及到的OpenGL函数与知识点
5.5 本章小结
第6章 地形三维可视化系统项目管理与辅助功能
6.1 项目管理
6.1.1 新建项目
6.1.2 打开项目
6.2 背景天空的实现
6.3 绘图模式的控制
6.4 空间查询
6.4.1 查询算法实现
6.4.2 查询标识设置
6.4.3 查询三维坐标
6.4.4 查询空间距离
6.5 照相机模块的设计与实现
6.5.1 键盘控制的实现
6.5.2 鼠标控制的实现
6.6 本章涉及到的OpenGL函数与知识点
6.7 本章小结
第3篇 线路三维可视化系统设计与实现
第7章 三维交互技术与三维线路数据结构
7.1 三维交互技术
7.1.1 交互环境概述
7.1.2 正射投影模式实现
7.1.3 正射投影模式下场景控制
7.1.4 透视投影模式实现
7.2 三维地面坐标的获取
7.2.1 正射投影模式下的获取
7.2.2 透视投影模式下的获取
7.3 三维线路数据结构设计
7.3.1 边坡数据结构
7.3.2 桥梁数据结构
7.3.3 隧道数据结构
7.3.4 水沟数据结构
7.3.5 线路数据结构
7.4 本章涉及到的OpenGL函数与知识点
7.5 本章小结
第8章 三维线路设计实现
8.1 线路方案主要参数设计
8.2 设计交点信息输入实现
8.3 线路中心线定位
8.4 设计方案保存与平面方案生成
8.4.1 设计方案保存
8.4.2 平面方案的自动生成
8.5 纵断面设计模块的实现
8.6 边坡模型的生成算法
8.7 线路路基三维建模
8.8 隧道三维建模与绘制
8.8.1 隧道三维建模
8.8.2 隧道参数设置实现
8.8.3 隧道绘制实现
8.9 桥梁三维建模与绘制
8.9.1 桥梁三维建模
8.9.2 桥梁参数设置实现
8.9.3 桥梁绘制实现
8.10 线路三维模型绘制
8.11 本章涉及到的OpenGL函数与知识点
8.12 本章小结
第9章 道路整体三维建模
9.1 道路整体三维模型的实现
9.1.1 线路封闭区域确定与分割算法
9.1.2 地形块综合数据点计算
9.1.3 分块TIN模型的构网实现
9.1.4 封闭区域内数据点的剔除
9.1.5 整体构网的实现
9.2 纹理管理
9.2.1 边坡纹理
9.2.2 路肩纹理
9.2.3 桥梁护坡面纹理
9.2.4 隧道内墙纹理
9.2.5 隧道洞门纹理
9.3 本章涉及到的OpenGL函数与知识点
9.4 本章小结
第10章 三维漫游的实现
10.1 飞行路径建立
10.1.1 飞行路径简介
10.1.2 飞行路径设置方法
10.1.3 飞行路径插值算法
10.1.4 飞行路径的保存
10.1.5 打开飞行路径
10.1.6 显示/关闭飞行路径
10.2 沿飞行路径漫游实现
10.2.1 沿固定高度漫游实现
10.2.2 沿相对高度漫游实现
10.3 沿线路方案线三维漫游实现
10.3.1 飞行路径的获取
10.3.2 漫游的实现
10.4 三维漫游的控制
10.4.1 开始/暂停漫游
10.4.2 停止漫游
10.4.3 单步前进
10.5 三维漫游的调整
10.5.1 飞行视野调整
10.5.2 飞行高度调整
10.5.3 飞行倾角调整
10.5.4 飞行速度调整
10.5.5 三维漫游调整的热键实现
10.6 三维漫游的相关计算
10.6.1 三维漫游帧频的计算
10.6.2 三维漫游速度的计算
10.6.3 三维漫游里程的计算
10.7 本章涉及到的OpenGL函数与知识点
10.8 本章小结
第4篇 线路三维可视化系统辅助功能实现
第11章 显示模式控制及实现
11.1 显示模式控制及实现
11.1.1 双目立体方式
11.1.2 正射投影方式
11.1.3 透视投影方式
11.2 时钟指北针的实现
11.3 缩略图的实现
11.4 本章涉及到的OpenGL函数与知识点
11.5 本章小结
第12章 3D模型载入与应用
12.1 常用3D模型概述
12.1.1 3DS模型
12.1.2 OBJ模型
12.1.3 ASE模型
12.1.4 MD2/MD3模型
12.1.5 MS3D模型
12.2 3DS模型的载入
12.2.1 3DS文件基本构成
12.2.2 第三方软件转换法
12.2.3 程序直接载入
12.2.4 程序直接载入的实现
12.3 3DS模型在系统中应用实例
12.4 本章涉及到的OpenGL函数与知识点
12.5 本章小结
第13章 系统输出接口与动画录制实现
13.1 输出线路三维模型到AutoCAD
13.1.1 输出格式DXF简介
13.1.2 DXF输出模块的设计
13.1.3 输出的实现
13.2 AVI动画录制
13.2.1 动画录制类实现
13.2.2 动画录制参数设置
13.2.3 开始录制动画
13.2.4 暂停录制动画
13.2.5 结束录制动画
13.3 屏幕图形的打印
13.3.1 图形打印类的实现
13.3.2 打印预览的实现
13.3.3 打印设置的实现
13.3.4 打印的实现
13.4 录制图像
13.4.1 图像采集频率
13.4.2 图像录像
13.4.3 停止录像图像
13.5 保存屏幕到位图
13.6 本章小结
第14章 系统简介与运行实例
14.1 系统介绍
14.1.1 系统主要特点
14.1.2 系统运行环境
14.2 系统功能模块简介
14.3 系统运行实例
14.4 本章小结
附录
附录A 相关数学程序模块
附录B OpenGL核心函数库和应用函数库
附录C OpenGL常用编程技巧
附录D OpenGL资源网站
参考文献
猜您喜欢