6/9/13三维地层可视化www.mkaq.com/3D_KeSHiHua.htm1/7三维地层可视化系统煤矿安全开采决策最大的特点,就是必须面对复杂多变的地质和开采技术条件。而不能够根据具体的地质条件进行针对性的开采设计,特别是在采场推进过程中对上覆岩层赋存情况的变化以及由此变化导致的覆岩运动规律及支承压力分布规律的差异认识不清,是当前煤矿事故频繁,特别是重大事故和环境灾害没有能从根本上得到控制、开采经济效益不好的重要原因之一。基于上述目的,我们开展了《三维地层可视化系统》的研究工作。一.系统目标主要针对煤矿主采煤层、主采区域进行三维地层可视化工作。基本思想是以煤层底板等高线和地质柱状图为建模基础信息,采用三维可视化技术,将二维抽象的等高线信息以三维可视化的图形效果直观形象地表达出来,为开采决策提供依据。本课题采用VisualBasic程序设计语言和基于OpenGL类库的开发思路,成功的实现了三维地层的可视化。OpenGL是近几年发展起来的一个性能卓越的三维图形标准,它是在SGI等多家世界闻名的计算机公司的倡导下,以SGI的GL三维图形库为基础制定的一个通用共享的开放式三维图形标准。目前,包括Microsoft、SGI、IBM、DEC、SUN、HP等大公司都采用了OpenGL做为三维图形标准,许多软件厂商也纷纷以OpenGL为基础开发出自己的产品,其中比较著名的产品包括动画制作软件SoftImage和3DStudioMAX、仿真软件OpenInventor、VR软件WorldToolKit、CAM软件ProEngineer、GIS软ARC/INFO等等。值得一提的是,随着Microsoft公司在WindowsNT和最新的Windows95中提供了OpenGL标准及OpenGL三维图形加速卡的推出,OpenGL将在微机中有广泛地应用,同时也为广大用户提供了在微机上使用以前只能在高性能图形工作站上运行的各种软件的机会。OpenGL实际上是一个开放的三维图形软件包,它独立于窗口系统和操作系统,以它为基础开发的应用程序可以十分方便地在各种平台间移植;OpenGL可以与VisualC++紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。它具有七大功能:1、建模OpenGL图形库除了提供基本的点、线、多边形的绘制函数外,还提供了复杂的三维物体(球、锥、多面体、茶壶等)以及复杂曲线和曲面(例如Bezier、Nurbs等曲线或曲面)绘制函数。2、变换OpenGL图形库的变换包括基本变换和投影变换。基本变换有平移、旋转、变比镜像四种变换,投影变换有平行投影(又称正射投影)和透视投影两种变换。其变换方法与机器人运动学6/9/13三维地层可视化www.mkaq.com/3D_KeSHiHua.htm2/7中的坐标变换方法完全一致,有利于减少算法的运行时间,提高三维图形的显示速度。3、颜色模式设置OpenGL颜色模式有两种,即RGBA模式和颜色索引(ColorIndex)。4、光照和材质设置OpenGL光有辐射光(EmittedLight)、环境光(AmbientLight)、漫反射光(DiffuseLight)和镜面光(SpecularLight)。材质是用光反射率来表示。场景(Scene)中物体最终反映到人眼的颜色是光的红绿蓝分量与材质红绿蓝分量的反射率相乘后形成的颜色。5、纹理映射(TextureMapping)利用OpenGL纹理映射功能可以十分逼真地表达物体表面细节。6、位图显示和图象增强图象功能除了基本的拷贝和像素读写外,还提供融合(Blending)、反走样(Antialiasing)和雾(fog)的特殊图象效果处理。以上三条可是被仿真物更具真实感,增强图形显示的效果。7、双缓存动画(DoubleBuffering)双缓存即前台缓存和后台缓存,简而言之,后台缓存计算场景、生成画面,前台缓存显示后台缓存已画好的画面。此外,利用OpenGL还能实现深度暗示(DepthCue)、运动模糊(MotionBlur)等特殊效果。从而实现了消隐算法。我们选用的开发工具是VisualBasic6.0。在VB中调用OPenGL函数,所以开始就要对程序初始化,连接库函数。我们在Windows下窗口程序必须首先处理设备描述表(DeviceContexts,DC),DC包括许多如何在窗口上显示图形的信息,既指定画笔和刷子的颜色,设置绘图模式、调色板、映射模式以及其它图形属性。同样,OpenGLforWindows的程序也必须使用DC,这与其它Windows程序类似。但是,OpenGLforWind...