D0I:10.13374/j.issn1001053x.2004.05.002 第26卷第5期 北京科技大学学报 Vol.26 No.5 2004年10月 Journal of University of Science and Technology Beijing 0ct.2004 OpenGL在矿山井巷工程三维可视化 仿真系统中的应用 李春民李仲学 僧德文 北京科技大学土木与环境工程学院,北京100083 摘要给出了一种地下井巷工程三维可视化仿真系统的设计与实现技术,特别是系统的 主要功能需求和基于OpenGL的三维可视化关键技术,包括井巷工程实体绘制、几何变换、投 影变换、光照处理及法向量计算等技术.结合某铁矿的实际,给出了这些技术的应用实例和 集成实现结果,并指出了有关研究工作的发展方向. 关键词地下采矿,井巷工程,OpenGL,三维可视化 分类号TD178 随着计算机科学技术的不断进步,数字化和 下主要功能: 可视化技术在全球各行各业的应用越来越广泛. (1)集成接口及数据处理,系统以数据库为基 作为地下矿山的主要组成部分,井巷工程自始至 础,结合矿山设计、计划与生产的实际情况,建立 终贯穿于矿山刊产资源的开发利用活动中.开发 采矿工程数据库.该数据库能够全面完整地体现 矿山井巷工程的设计与计划的仿真系统,使矿山 采矿工程布置的相关参数,根据数据库中的相 的开采活动数字化、可视化,及时、准确地记录和 关数据可以正确灵活地绘制出地下工程.另外, 表现井巷工程的变迁,提高矿山的管理水平及工 还需要具有相应的数据库管理功能,能够与 作效率. 通用计算机软件系统(如AutoCAD系统)有效地 目前,国内研究开发的井巷工程开采设计系 接口, 统,一般是基于第三方软件(例如AutoCAD). (2)巷道造型.地下采矿工程巷道可以分为不 这样的系统对计算机辅助矿山开采设计与计划 同的类型,根据不同类型的相应参数进行三维实 是很有必要的,但在巷道工程的三维可视化仿真 体造型,并由空间位置关系组合成整个地下采矿 方面显得无能为力,在现有矿山开采设计与计划 工程系统. 研究工作的基础上,充分利用计算机新技术,建 (③)图形绘制.地下采矿工程分开拓系统和采 立井巷工程的三维模型数据,通过光照、材质以 准切割系统两部分,它们可以在任意指定的空 及纹理映射等可视化技术来有效地表现井巷工 间范围内进行分别显示,也可以集成显示, 程的三维空间关系的复杂性和动态性,建立井巷 并能实时交互进行旋转、平移和缩放,使工程人 工程可视化仿真系统,使得并巷工程能够在三维 员能够全方位多角度地对工程布置进行观察. 空间动态显示、且图像具有真实感,对指导矿山 对于图形显示能够全色渲染,以三维真实感表现 开采设计、计划与工程施工等具有重要意义. 巷道. (4)计算和显示任意指定的空间范围内的计 1井巷工程可视化系统的功能 划采掘井巷工程量,包括刊矿石量和岩石量, 矿山井巷工程可视化仿真系统应该具备以 (⑤)矿体显示.系统还应该能够对巷道和矿体 进行三维集成显示,以便于工程技术人员直观地 收稿日期200402-17李春民男,28岁,博士研究生 考察巷道和矿体的空间关系,分析出采矿工程布 *教育部高等学校博士学科点专项科研基金项目No.2002 0008006)和高等学校骨干教师资助计划项目 置的合理性
第 卷 第 期 年 月 北 京 科 技 大 学 学 报 一 在矿 山井巷工程三维可视化 仿真系统 中的应用 李春 民 李仲 学 僧 德 文 北京科技 大学 土 木 与环 境工 程 学 院 , 北 京 摘 要 给 出 了一 种地 下 井巷工 程三 维可 视化仿 真系统 的设 计 与 实现技 术 , 特 别 是 系 统 的 主 要功 能需 求和 基 于 的三 维可 视 化关 键 技 术 , 包 括 井巷 工 程 实体绘制 、 几 何 变 换 、 投 影 变 换 、 光 照 处理及法 向量 计 算等 技 术 结合 某 铁矿 的实 际 , 给 出 了这 些 技术 的应 用 实例 和 集 成 实现 结果 , 并指 出 了有 关研 究 工 作 的发 展方 向 关键 词 地 下 采 矿 , 井巷 工 程 , , 三 维可 视化 分 类号 随着 计 算 机科 学 技术 的不 断进 步 , 数 字 化和 可视 化 技 术在 全 球各 行 各业 的应 用 越 来越广 泛 作 为地 下 矿 山 的主 要 组 成 部 分 , 井 巷 工程 自始 至 终 贯 穿 于矿 山矿 产 资源 的开 发 利 用 活 动 中 开 发 矿 山井 巷 工 程 的设 计 与计 划 的仿 真 系 统 , 使矿 山 的开采 活动 数 字 化 、 可 视 化 , 及 时 、 准 确 地 记 录和 表现 井巷 工 程 的变迁 , 提 高矿 山 的管理 水 平 及 工 作 效 率 目前 , 国 内研 究 开 发 的井 巷 工 程 开采 设 计 系 统 〔 一叼 , 一 般 是 基 于 第 三 方 软 件 例 如 这 样 的系 统 对 计 算 机 辅 助 矿 山开 采 设 计 与 计 划 是很 有 必 要 的 , 但 在 巷 道 工 程 的三 维可 视 化 仿 真 方 面显 得无 能 为力 在 现 有矿 山开采 设 计 与 计 划 研 究工 作 的基 础 上 , 充 分利 用 计 算机 新 技 术 , 建 立 井巷 工 程 的三 维模 型 数 据 , 通 过 光 照 、 材质 以 及 纹 理 映 射 等 可 视 化 技 术 来 有 效地 表 现 井 巷 工 程 的三 维 空 间关 系 的复 杂 性 和动 态 性 , 建 立 井 巷 工程 可 视 化 仿 真 系 统 , 使 得 井巷 工 程 能够 在 三 维 空 间动 态 显 示 、 且 图像 具 有 真 实 感 , 对 指 导矿 山 开采 设 计 、 计 划 与 工 程 施 工 等 具 有 重要 意 义 井 巷 工 程 可 视 化 系 统 的功 能 矿 山井 巷 工 程 可 视 化 仿 真 系 统 应 该 具 备 以 收稿 日期 牛 一 李春 民 男 , 岁 , 博 士研 究 生 教育部 高等学校博 士 学 科 点专 项 科研基金 项 目 困 和 高 等学 校 骨 干 教师 资助计划 项 目 下 主 要 功 能 集成 接 口 及 数 据 处 理 系 统 以数据 库 为基 础 , 结合矿 山设计 、 计划 与 生产 的实际情 况 , 建立 采 矿 工 程 数据 库 该 数据 库 能够 全 面完 整 地 体现 采 矿 工 程 布 置 的相 关 参 数 , 根 据 数 据 库 中 的相 关 数 据 可 以正 确 灵 活 地 绘 制 出地 下 工 程 另外 , 还 需 要 具 有 相 应 的 数 据 库 管 理 功 能 , 能 够 与 通 用 计 算 机 软件 系 统 如 系 统 有 效地 接 口 巷道造 型 地 下采矿 工 程 巷 道 可 以分 为不 同 的类 型 , 根 据 不 同类 型 的相应 参 数进 行 三 维实 体 造 型 , 并 由空 间位 置 关系 组 合 成 整 个地 下采矿 工 程 系 统 图形 绘制 地 下 采矿 工程 分 开拓 系统和 采 准 切 割 系 统 两 部 分 , 它 们 可 以在 任 意 指 定 的空 间 范 围 内 进 行 分 别 显 示 , 也 可 以 集 成 显 示 , 并 能 实 时交 互 进 行 旋 转 、 平 移 和 缩 放 , 使 工 程 人 员 能 够 全 方 位 多 角 度 地 对 工 程 布 置 进 行 观 察 对 于 图形 显 示 能够全色 渲染 , 以三 维真 实感表现 巷 道 计 算 和 显 示 任 意 指 定 的空 间范 围 内的计 划 采 掘 井 巷 工 程 量 , 包 括 矿 石 量 和 岩 石 量 矿 体 显 示 系 统 还应 该 能够对 巷 道和 矿 体 进 行 三 维集 成 显 示 , 以便 于 工 程 技术 人 员直观 地 考 察 巷道和 矿 体 的空 间关系 , 分 析 出采矿 工 程布 置 的合 理 性 DOI :10.13374/j .issn1001-053x.2004.05.002
·458· 北京科技大学学报 2004年第5期 2井巷工程可视化系统开发环境 主要技术及其实现过程如下, 在OpenGL库函数中无法直接生成弧形曲 矿山井巷工程可视化仿真系统采用Windows 面,而如果采用NURBS曲面,则不能对其进行精 2000/XP下的VC与OpenGL相结合的开发环境. 确控制,难以满足描述巷道的需要,且程序复杂, OpenGL是一种图形与硬件的接口,它包括百余 运行效率低,在本研究中,采用增加裁剪面的方 个图形函数,开发者可以用这些函数建立三维模 法来构造弧形巷道,将整个弧形巷道看成是由两 型和进行三维实时交互.OpenGL图形库具有建 个半径不同的同心圆柱和上下两个同心圆盘经 模、变换、移动、复杂帧缓冲区操作以及光线、色 过裁剪平面切割组合而成, 彩、明暗和纹理表面处理等图形功能 这里的关键技术是定义一个附加裁剪平面, 由OpenGL指令提供图形软件和硬件之间的 以去掉场景中无关的目标,附加平面裁剪函数为 接口,通过调用OpenGL子程序生成绘图指令和 void glClipPlane (GLenum plane,Const GLdouble 数据,然后交付硬件去执行.OpenGL对图形进行 *equation),它定义了一个附加的裁剪平面.其中, 操作并最终将图形绘制到屏幕上的这一过程包 参数equation指向一个拥有四个系数值的数组, 括如下主要步骤: 这四个系数分别是裁剪平面Ax+By+C2+D-O中的 (1)利用几何图元(点、线和多边形等)构造物 A,B,C,D值,由这四个系数就能确定一个裁剪平 体模型,然后建立物体的数学描述, 面.参数plane是GL_CLIP_PLANEi(=O,l,),指 (②)在三维空间中选择合适的位置放置物体, 定裁剪面号.在调用附加裁剪函数之前,需要先 并确定观看场景的最佳视点. 启动glEnable(GL_CLIP PLANEi),使得当前所定 (3)计算场景中所有物体的颜色.物体的颜色 义的裁剪平面生效:当不再调用某个附加裁剪平 可能来自于程序中的设定,如果在场景中使用了 面时,可用glDisable(GL CLIP PLANEi)关闭相应 光照和纹理映射,那么所观察到的场景中物体的 的附加裁剪功能, 最终效果还取决于光照条件和纹理映射方式, 绘制弧形巷道的程序模块为: (4)光栅化,就是把场景中物体模型的数学描 GLdoubleequ[4]={1,0,0,-1*(t_ArcData.m_r-t_ 述及颜色信息转换到计算机屏幕的像素点上, ArcData.m width/2)*cos(t ArcData.m a* OpenGL有时还要执行其他的操作,比如隐 PV180)W10; ∥设置切割平面 藏面的摘除.此外,在场景被光栅化后,将场景绘 glPushMatrixO; 制到屏幕上之前,还可以根据需要对像素进行操 glTranslated((t ArcData.m ox-xStartCord)/10. 作.OpenGL图形的基本操作步骤为:创建物体模 (t ArcData.m oz-zStartCord+t ArcData.m 型一确定视点位置→计算颜色及光照→光棚化 high)/10,(t ArcData.m oy-yStartCord)/10); 一屏幕 ∥平移到圆心点 glRotatef(-1*(atan2(t_ArcData.m_py-t_ArcData. 3井巷工程可视化系统的关键技 m_oy,t_ArcData.m_px-t_ArcData.m ox)/ 术及实现 PI*180),0.0,1.0,0.0):∥进行逆旋转 glClipPlane(GL CLIP PLANEO,equ); 31实体绘制 glEnable(GL_CLIP_PLANEO)/打开裁剪功 OpenGL虽然具有较强的三维图形制作与处 能,增加裁剪面 理功能,但其库函数还是比较有限的,仅提供十 glRotatef(90,1.0,0.0,0.0);∥绕x周旋转90° 余种基本几何图形.虽然在辅助库中提供了部分 quadObj-gluNewQuadricO; 二次曲面绘制函数,但大多数的几何体中心设在 gluQuadricDrawStyle(quadObj,GLU_FILL); 原点(0,0,0)处,这样绘制任意位置的几何体时, gluQuadricOrientation(quadObj,GLU 要么进行频繁的系统坐标变换,要么用数值矩阵 OUTSIDE:∥法线方向向外 计算进行图形变换.本研究采用后者,将几何体 gluQuadricNormals(quadObj,GLU_SMOOTH); 显示在相应的位置上,为了有效地建立地下并巷 gluCylinder(quadObj,(t ArcData.m r+t ArcDa 工程的三维可视化系统,需要编制大量的实体绘 ta.m width/2)/10. 制功能模块.譬如,绘制任意位置的弧形巷道的 (t_ArcData.m_r+t_ArcData.m_width/2)/10
北 京 科 技 大 学 学 报 年 第 期 井 巷 工 程 可 视 化 系统 开 发 环 境 矿 山井巷 工程 可 视化 仿真系 统采用 下 的 与 相 结合 的开 发环境 是 一种 图形 与硬 件 的接 口 , 它包 括 百余 个 图形 函数 , 开发 者 可 以用 这 些 函数建 立 三 维模 型 和 进 行 三 维 实 时交 互 , 图形 库 具 有 建 模 、 变 换 、 移 动 、 复 杂 帧 缓 冲 区操 作 以及 光 线 、 色 彩 、 明暗和 纹 理表 面 处 理 等 图形 功 能 ,, 由 指 令提 供 图形 软 件和 硬 件之 间 的 接 口 , 通 过 调用 子 程 序 生成 绘 图指 令和 数 据 , 然 后 交付 硬件 去执 行 对 图形进行 操 作 并 最 终 将 图形 绘 制 到 屏 幕 上 的这 一 过 程 包 括 如 下 主 要 步骤网 利用 几 何 图元 点 、 线和 多边形 等 构造 物 体 模 型 , 然 后 建 立 物 体 的数 学 描 述 在三 维 空 间中选择 合 适 的位 置放 置物 体 , 并确 定观 看 场 景 的最 佳 视 点 计 算场 景 中所有物 体 的颜色 物体 的颜 色 可 能来 自于 程序 中的设定 , 如果 在 场景 中使用 了 光 照 和 纹理 映射 , 那 么 所 观 察 到 的场 景 中物 体 的 最 终效 果还 取 决于 光 照 条 件 和 纹 理 映射 方 式 光栅 化 , 就 是把场 景 中物 体模 型 的数 学描 述 及 颜 色信 息 转换 到 计算机屏 幕 的像 素 点上 有 时还 要 执行 其 他 的操 作 , 比如 隐 藏面 的摘 除 此 外 , 在 场 景被 光栅化 后 , 将场 景 绘 制 到屏幕 上 之前 , 还 可 以根据 需要 对像 素进行操 作 图形 的基 本操 作步骤 为 创 建物 体模 型 一 确 定 视 点位 置 一 计 算 颜 色 及 光 照 光 棚 化 一 屏 幕 井 巷 工 程 可 视 化 系 统 的 关键 技 术 及 实现 实体 绘 制 虽 然 具 有较 强 的三 维 图形 制 作 与 处 理 功 能 , 但 其 库 函数 还 是 比较有 限 的 , 仅 提 供 十 余 种 基 本 几何图形 虽 然 在辅 助 库 中提 供 了部 分 二 次 曲面绘 制 函数 , 但 大 多数 的几 何 体 中心 设在 原 点 , , 处 这 样 绘 制任 意位 置 的几 何 体 时 , 要 么进行 频 繁 的系统 坐标 变 换 , 要 么用 数值矩 阵 计 算进 行 图形 变 换 本研 究采用 后 者 , 将几 何 体 显 示 在相 应 的位 置上 为 了有效地 建立 地 下井巷 工 程 的三 维 可视 化 系统 , 需要 编 制 大 量 的实 体绘 制功 能模 块 , 譬 如 , 绘制 任 意 位 置 的弧 形 巷 道 的 主 要技 术及 其 实现 过 程 如 下 在 库 函 数 中无 法 直 接 生 成 弧 形 曲 面 , 而 如 果 采用 曲面 , 则 不 能对 其 进 行 精 确控 制 , 难 以满足 描述巷 道 的需要 , 且 程序 复 杂 , 运 行 效率低 在 本 研 究 中 , 采 用 增 加 裁 剪 面 的方 法来 构造 弧形 巷道 , 将 整 个 弧形巷道看 成 是 由两 个 半 径 不 同 的 同心 圆柱 和 上 下 两 个 同心 圆盘 经 过 裁 剪 平 面切 割 组 合 而 成 这 里 的关 键 技 术 是 定义 一 个 附加裁 剪平 面 , 以去掉场 景 中无 关 的 目标 附加 平 面裁 剪 函数 为 刀 , , 它 定义 了一个 附加 的裁剪 平面 其 中 , 参 数 指 向一 个拥 有 四个 系 数 值 的数 组 , 这 四个 系 数 分 别 是裁 剪 平 面 十脚 〔 毖 刀 中 的 注 , , , 值 , 由这 四个 系 数 就 能确 定 一个 裁 剪 平 面 参 数 是 仁 扮 , , … , 指 定裁 剪面 号 在 调 用 附加 裁 剪 函数 之 前 , 需 要 先 启 动 一 少 到 , 使 得 当前 所 定 义 的裁 剪 平 面 生效 当不 再调 用 某个 附加 裁 剪平 面 时 , 可用 ‘ 一 卫 关 闭相应 的 附加 裁 剪 功 能 绘 制 弧 形 巷 道 的程 序模块 为 , , ,一 多 切 一仁 一 功 刀设 置 切 割 平 面 如 八 一 一 , 产 一 一 刀户 夕 一 〔 刀平 移 到 圆心 点 一 夕 找 又 一 , , , 进 行 逆 旋转 护一 , 刀打 开裁 剪 功 能 , 增 加 裁 剪 面 , , , 绕 周 旋 转 , , 刀法 线 方 向 向外 , 一 , 赶 比 法 ‘ 记 , 《幸多 一叶 少
Vol.26 No.5 李春民等:OpenGL在矿山井巷工程三维可视化仿真系统中的应用 ·459· tArcData..m high/10,30,30);∥画外圆柱 适用于动画、可视化仿真以及其他要求具有真实 glPushMatrix(); 感图像的领域.OpenGL透视投影函数也有两个, glTranslatef(0,0,t_ArcData.m_high/10.0); void glFrustum (GLdouble left,GLdouble Right, ∥平移到巷道底板 GLdouble bottom,GLdouble top,GLdouble near, gluDisk(quadObj,(t ArcData.m r-t ArcData.m GLdouble far)void gluPerspective (GLdouble fovy, width/2)/10, GLdouble aspect,GLdouble zNear,GLdouble zFar). (t ArcData.m r+t ArcData.m width/2)/10, 在井巷工程可视化系统中,为了表现各个工 30,2);1画底圆盘 程之间的空间位置关系,在投影变换之后,要求 glPopMatrix(); 巷道间的比例关系不发生改变,便于直观地分析 gluQuadricOrientation(quadObj,GLU_INSIDE); 井巷工程布置的合理性,因此,本系统使用正射 ∥法线方向向内 投影 gluCylinder(quadObj,(t ArcData.m r-t ArcDat 3.3光照处理 a.m width/2)/10, OpenGL的光照模型包括辐射光、环境光、漫 (t ArcData.m r-t ArcData.m width/2)/10, 射光、镜面光等,辐射光是直接从物体发出,并且 t_ArcData..m high/10,30,30);/画内圆柱 不受任何光源影响:环境光是由光源发出经过环 gluDisk(quadObj,(t ArcData.m r-t ArcData.m 境多次散射而无法确定其方向的光,即似乎来自 width/2)/10, 所有方向:漫射光来自一个方向,它垂直于物体 (t_ArcData.m_r+t_ArcData.m_width/2)/10, 时比倾斜时更明亮,一旦照射到物体上,则在各 30,25 个方向上均匀地发散出去;镜面光来自特定方 ∥画顶圆盘 向,并沿另一方向反射出去, gluDeleteQuadric(quadObj); 光源具有一系列特性,譬如颜色、位置、方向 glDisable(GL CLIP PLANEO); 等.选择不同的特性值,则对应的光源作用在物 l∥关闭裁剪功能glPopMatrixO; 体上产生的效果也不一样.定义光源特性的函数 3.2投影变换 glLight*0:void glLight (if)[v](GLenum light, 投影变换是一种很关键的图形变换技术,其 GLenum pname,TYPE param).其中第一个参数 目的就是定义一个视景体,使得视景体外多余的 light指定所创建的光源号,第二个参数pname指 部分裁剪掉,最终图像只是视景体内的有关部 定光源特性,最后一·个参数设置相应的光源特性 分.OpenGL中提供了两种投影方式,即正射投影 值 和透视投影. 光照模型目的是通过法向、光源、材质等复 正射投影的视景体是一个矩形的平行管道, 杂计算,使得生成的图形图像具有真实感.启动 也就是一个长方体,正射投影的最大特点是无论 光照模型的指令是glEnable(GL LIGHTING),调 物体距离视点多远,投影后的物体大小尺寸不 用gDisable(GL LIGHTING)则可关闭当前光照. 变.这种投影通常应用在井巷工程绘制和计算机 3.4平面法向量 辅助设计等方面,这些应用领域要求投影后的物 计算法向量严密地表示多边的方向,Open- 体尺寸及相互间的角度不变,以便施工时物体比 GL需要利用法向量来计算光线照射到物体上的 例大小正确.OpenGL正射投影函数共有两个,即 角度.若要生成具有立体感的图像,必须定义物 void glOrtho(GLdouble left,GLdouble right,GLdouble 体的法向量. bottom,GLdouble top,GLdouble near,GLdouble far) OpenGL用两种函数定义法向量,即void void gluOrtho2D(GLdouble left,GLdouble right, glNormal3 (bsifd)(TYPE nx,TYPE ny,TYPE nz) GLdouble bottom,GLdouble top). void gINormal3{bsifd}v(const TYPE*v).第一种表 透视投影符合人们视觉习惯,即离视点近的 达方式是在函数中分别给出法向量的三个分量 物体大,离视点远的物体小,远到极点即为消失, 值nx,y和nz:第二种表达方式是定义具有三个 成为灭点.透视投影的视景体类似于一个顶部和 元素的指针v,例如v[3={x,ny,nz. 底部都被切除掉的棱椎,也就是棱台,这种投影 OpenGL不提供计算法向量的函数,需要开
一 李 春 民 等 在 矿 山井 巷 工 程 三 维 可 视 化 仿 真 系统 中 的应 用 山 一 酬 , , 画 外 圆柱 】 , , ‘ , 加少 刀平 移 到 巷 道 底 板 】 , 仁 一 一仁 一 , 仁 十仁 一 , , 画底 圆盘 , 法 线 方 向 向 内 只沐多 一卜 一 , 几人 一 , 仁八 , , 画 内圆柱 , 仁八 一 ‘ ℃ , 仁八 ‘ 二 , , 画 顶 圆盘 为 ‘ 少 刀关 闭裁 剪 功 能 叩 投 影 变换 投 影 变换 是 一种 很 关键 的 图形 变 换 技术 , 其 目的就 是 定义 一个视 景体 , 使得 视 景体 外 多余 的 部 分 裁 剪 掉 , 最 终 图像只 是 视 景 体 内 的有 关 部 分 中提 供 了两 种 投 影 方 式 , 即正 射投 影 和 透 视 投 影 , 正 射 投 影 的视 景 体 是 一 个 矩 形 的平 行 管 道 , 也就 是 一 个 长 方 体 正射 投 影 的最 大特 点是无 论 物 体距 离 视 点 多 远 , 投 影 后 的物 体 大 小 尺 寸 不 变 这 种投 影通 常应用 在 井 巷 工 程 绘制 和 计 算机 辅助 设计 等 方 面 , 这些 应 用 领 域 要 求投 影后 的物 体 尺寸 及相 互 间 的角度 不 变 , 以便 施 工 时物 体 比 例 大 小 正 确 即 正射 投 , 影 函数 共 有 两 个 , 即 , , , , , 不口 】 , , , 透 视 投 影 符 合 人 们 视 觉 习 惯 , 即 离视 点近 的 物体大 , 离视 点远 的物体 小 , 远 到 极 点 即 为消失 , 成 为灭 点 透 视 投 影 的视 景 体类 似 于 一个 顶 部和 底 部 都被 切 除掉 的棱 椎 , 也 就 是棱 台 这 种 投 影 适用 于 动 画 、 可 视化 仿 真 以及 其他 要 求 具 有 郭实 感 图像 的领 域 透 视 投 影 函数 也 有 两个 , 即 , 瓦 , , , , 和 , 工 , , 在 井 巷 工 程 可 视 化 系 统 中 , 为 了表 现 各 个 工 程 之 间 的空 间位 置 关 系 , 在 投 影变换 之 后 , 要 求 巷道 间 的 比例 关 系 不 发 生 改变 , 便 于直观 地 分 析 井 巷 工 程 布 置 的合 理 性 , 因此 , 本 系 统 使 用 正射 投 影 光 照 处理 的光 照 模 型 包 括 辐 射 光 、 环 境光 、 漫 射 光 、 镜面 光 等 辐 射 光 是直 接从物体 发 出 , 并且 不 受任 何 光源 影 响 环 境光是 由光源 发 出经 过环 境 多次 散射 而无 法确 定其 方 向的光 , 即似 乎来 自 所 有 方 向 漫射 光 来 自一 个 方 向 , 它 垂 直 于物 体 时 比倾 斜 时更 明亮 , 一 旦 照 射 到物 体 上 , 则 在各 个 方 向上 均 匀 地 发 散 出去 镜 面 光 来 自特 定 方 向 , 并 沿 另 一 方 向反射 出去 光 源 具 有 一 系 列特 性 , 譬 如颜色 、 位 置 、 方 向 等 选 择 不 同 的特 性 值 , 则 对 应 的光 源 作用 在 物 体上产 生 的效果 也不 一 样 定义 光源特 性 的 函数 是 好 , , 其 中第 一 个 参 数 指 定 所 创 建 的光源 号 , 第 二个 参 数 指 定光源特 性 , 最 后 一 个 参 数 设 置相 应 的光 源特 性 值 光 照 模 型 目的是 通 过 法 向 、 光 源 、 材 质 等 复 杂 计 算 , 使 得 生 成 的 图形 图像 具 有 真 实感 启 动 光 照 模 型 的指 令 是 一 , 调 用 则 可 关 闭当前 光 照 平 面 法 向量 计 算 法 向量 严 密 地 表 示 多 边 的方 向 , 需 要 利 用 法 向量 来 计 算光 线 照 射 到物 体 上 的 角度 若 要 生 成 具 有 立 体 感 的 图像 , 必 须 定义 物 体 的法 向量 用 两 种 函 数 定 义 法 向量 , 即 , , 和 钟 第 一种 表 达 方 式 是 在 函 数 中分 别 给 出法 向量 的三 个 分 量 值 , 和 第 二 种 表 达 方 式 是 定义 具 有 三个 元 素 的指 针 , 例 如 ,叮 , 不提供计 算 法 向量 的 函 数 , 需 要 开
·460 北京科技大学学报 2004年第5期 发人员编制相应的程序.本研究所设计的法向量 -288至-358m水平之间.该矿的主要采矿方法 算法经实际数据验证,正确有效. 是无底柱分段崩落法,中段高度为70m,分段高 3.5集成实现 度为14m.开拓系统为竖井开拓,采准切割巷道 本研究采用VC“将上述有关可视化的关键 断面为矩形断面.图1是该范围内-316水平的 技术在Windows环境下实现,并应用某地下铁矿 部分采准切割巷道的绘制结果图,其显示范围为 的部分实际数据对系统进行了验证.数据涉及的 东西长300m,南北宽为200m.图2是-360水平 矿山区域是:平面范围从E0号到E17号勘探线, 的部分开拓巷道的绘制结果图,其显示范围为东 东西全长1100m,南北宽300m,垂直范围介于 西长1000m,南北宽300m. 图【~316水平采准切割系统图 图2一360水平部分开拓系统图 Fig.1 -316 m level preparatory work and cut-out Fig.2 -316 m level development system operation system 4结论 属矿山,I996,242(8):35 2汪家琪,汪应宏,余兆平,等,井巷三维立体图自动 利用OpenGL技术进行地下采矿工程可视化 绘制系统).山西煤炭,1997,17(4):43 仿真,可以实时对巷道进行旋转、平移和缩放,运 3许新启,罗映青,基于AutoCAD的矿山井巷工程绘 行速度快,而且井巷工程图像逼真,具有真实感. 图软件的开发[☐.有色冶炼,2002(6):168 通过进一步的研究,还可以利用计算机辅助设计 4李翠平,李仲学,胡乃联.矿床体视化的一种空间规 系统得到的设计与计划数据库,生成井巷工程的 则体数据生成方法】.北京科技大学学报,2002,24 (6:589 三维动态图像,进而实现在巷道里的虚拟漫游, 5袁绪龙,张宇文,刘乐华.基于OpenGL的弹道视景 为工程技术人员直观地分析和优化地下采矿工 仿真系统设计).电脑与信息技术,2001(4):7 程布置提供手段, 6李颖,薛海斌,朱伯立,等.OpenGL技术应用实例 参考文献 精粹M.北京:国防工业出版社,2001 1 陈光富.井巷工程透视投影图的计算机绘制[).金 OpenGL Based 3D Visualization of Underground Mining Systems LI Chunmin,LI Zhongxue,SENG Dewen Civil and Environmental Engineering School,University of Science and Technology Beijing,Beijing 100083,China ABSTRACT An OpenGL based 3D visual modeling system of underground mine excavations was introduced. The key techniques for developing the 3D visual modeling system with OpenGL were presented,including entity drawing,geometric transformation,projective transformation,illumination and rendering.Examples ofOpenGL ap- plication were given and a prototype system for visualizing the underground mine excavation system of a Chinese iron mine was characteriaed.Some problems for further study were proposed. KEY WORDS underground mining;mine excavations;OpenGL;3D visualization
‘ 北 京 科 技 大 学 学 报 年 第 期 发人 员编制相 应 的程 序 本研 究所 设计 的法 向量 算法 经 实 际数据 验 证 , 正 确有 效 集成 实 现 本研 究采 用 抖 将上 述 有关 可 视化 的关键 技 术在 环 境 下 实现 , 并应 用 某 地 下 铁矿 的部 分 实 际数据对 系统进 行 了验证 数 据涉及 的 矿 山 区 域是 平 面 范 围从 号 到 号勘 探 线 , 东西全 长 , 南 北 宽 , 垂 直 范 围介 于 一 至 一 水 平之 间 该矿 的主 要采 矿 方法 是 无 底 柱 分段 崩 落 法 , 中段 高度 为 , 分段 高 度 为 开拓 系统 为竖 井 开 拓 , 采 准切 割巷道 断 面 为矩 形 断面 图 是 该 范 围 内 一 水 平 的 部分采准 切 割巷 道 的绘 制 结果 图 , 其 显 示范 围为 东 西 长 , 南 北 宽 为 图 是 一 水 平 的部分 开拓 巷道 的绘制 结果 图 , 其显 示 范 围为东 西 长 , 南北 宽 图 一 。 水 半 米 淮 切 割 系 统 图 一 玲 一 图 一 水 平 部 分 开拓 系 统 图 一 结论 利 用 毛技 术 进 行地 下采矿工 程 可视 化 仿真 , 可 以实 时对 巷道 进行旋 转 、 平移 和 缩放 , 运 行速 度 快 , 而且 井 巷 工程 图像逼 真 , 具有 真 实感 通 过进 一 步 的研 究 , 还 可 以利用 计算机辅 助 设计 系 统 得 到 的设 计 与 计划 数据库 , 生成 井巷工 程 的 三 维 动 态 图像 , 进 而 实现 在 巷 道 里 的虚 拟漫 游 , 为 工 程 技 术 人 员 直 观 地 分 析 和 优 化 地 下采 矿 工 程 布 置 提供 手 段 参 考 文 献 陈光 富 井巷工 程 透视投 影 图的计 算机绘 制 金 属 矿 山 , , 汪 家琪 , 汪 应宏 , 余兆 平 , 等 井巷三 维立 体 图 自动 绘 制系统川 山 西煤炭 , , 许新启 , 罗 映青 基 于 的矿 山井 巷工 程 绘 图软件 的 开 发 有色 冶 炼 , 李 翠 平 , 李仲学 , 胡乃 联 矿 床体视化 的一 种 空间规 则体数据 生 成方法 北 京科技大 学学报 , , 袁 绪龙 , 张 宇文 , 刘乐 华 基 于 的弹道视 景 仿真 系统 设计 田 电脑与 信息 技术 , 仔 李 颖 , 薛海 斌 , 朱伯 立 , 等 技术应用 实 例 精粹【 北京 国 防工 业 出版 社 , , 口刀 大 , ,处洲 、 , 即 飞 币 , 饰 、吧 , 劝 , 皿 , , , , 』 助 址