利用OpenGL对岩体三维模型进行切剖面方法研究_第1页
利用OpenGL对岩体三维模型进行切剖面方法研究_第2页
利用OpenGL对岩体三维模型进行切剖面方法研究_第3页
利用OpenGL对岩体三维模型进行切剖面方法研究_第4页
利用OpenGL对岩体三维模型进行切剖面方法研究_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2005年2月云南冶金Feb.2005利用OpenGL对岩体三维模型进行切剖面方法研究陈俊智,侯克鹏(昆明理工大学国土资源工程学院,云南昆明650093)摘要:通过对三维图形的一般切割技术的介绍,提出了直接利用OpenGL制过程。利用OpenGL的高级绘图功能,三维模型进行剖切,生成一系列剖面图形,关键词:岩体;模型;切剖面中图分类号:TD177:2005)01-0012-04-RockBodyCuttingMethodUsingOpenGLCHENJun-zhi,HOUKe-peng(KunmingUniversityofScienceandTechnology,Kunming,Yunnan

2、650093,China)ABSTRACT:Basedonnormalcuttingmethodforthree-dimensionfigures,theproceduresfordrawingthree-dimensionmodeldirectlyusingOpenGltechnologyarepresented,andthecuttingmethodisintroducedindetail.Bythis,aseriesofsectionsofacertainopenpitminehavebeenworkedoutandprovedtobeeffectiveandavailable.KEYW

3、ORDS:rockbody;model;cuttingsection1前言地球上的所有物体都以三维空间形态存在的,对于构成地球的主要物质岩体其存在的形式也是三维形态,因此岩体三维模型的建立是对岩体进行空间研究的基础。岩体三维可视化是利用计算计图形技术研究岩体空间赋存状态的一种有效途径,受到工程地质技术人员的密切关注,是当前岩土工程研究的热点,也是快速、及时地再现地质体三维信息及综合分析的有效途径。在岩体三维可视化研究中,其关键技术之一是三维体的剖切与显示。岩体三维可视化的目的除了为使用者提供准确而又直观的岩体实体模型,还需要描述岩体的内部形态。通过对三维岩体切割生成的剖面可以清楚地显示地质模型

4、内部的各个细节,从而为研究岩体结构、构造带来很大帮助。目前,作剖面的方法是利用构成模型的各个面和边与剖面求交线,最后构成整个剖面的轮廓线,形成模型的剖面。这种方法需要将所有的面和线进行搜索,进行判断比较求出其交线。其计算量较大,需要时间较长。本文直接利用OpenGL高级技术进行求三维模型的剖面,利用该方法作剖面不需要将所有的面和线进行搜索,与剖面比较求其交线,而是利用OpenGL先进的模板缓存及反馈等技术直接得到剖面。特别值得一提的是由于岩体中存在结构面(如节理、裂隙、断层等)及不同岩性的岩体,因此在模型中要将岩体的这些特征表示出来。而只要在模型中能表示出各种面状或体状结构以及不同岩性等特征,

5、用OpenGL高级技术生成剖面时,岩体的特征数据都可以从反馈数组中提取出收稿日期:2004-08-17;修回日期:2004-10-27作者简介:陈俊智(1974-),男,陕西榆林市人,讲师,在读博士,主要从事岩土工程方面研究工作。基金项目:云南省科技创新人才基金项目(2001PY013);昆明理工大学青年基金(校青2003-2)。12陈俊智等利用OpenGL对岩体三维模型进行切剖面方法研究来,并显示到屏幕上,不需要专门进行计算。(2)在三维空间上放置对象,选择有利的场景2三维图形的切割技术岩体的三维模型只是将地质特征三维数据场投影显示在图形屏幕上,但是这并不能满足研究复杂地质的需要,因为地质工

6、程师往往需要对地质体各个不同剖面方向及其某切平面或层面的地质特征进行综合研究与多角度认识,而三维图形切割技术比较方便地满足了这一需要。空间三维图形剖面切割是指直接在屏幕上对三维模型进行任意方向剖切。用户可以方便地观察模拟块体内部地质构造及形态特征的变化,以实现对地质整体空间的宏观认识。面,。,三角网中的每一个三角形就是一个面,按照一般的算法是比较难实现求交的。可采用求线段与面的交,三角形面与剖面的交可以转化为求三条边与剖分面的交,求交算法是一个很费时的过程,按一般的思路每个三角的三边都与剖切面进行计算,如果勘探区域很大,那三角形的个数特别多,这个过程的费时量是可想而知的。剖切算法实现的流程图如

7、图1。观察点;(3)计算对象的颜色,这些颜色可能直接定义,或由光照条件及纹理间接给出;(4)光栅化,把对象的数学描述和颜色信息转换到屏幕的像素。图1剖切算法流程Fig.1Flow-sheetdiagramofcuttingcalculation312用OpenGL生成切割面3利用OpenGL来切割实体311OpenGL概述OpenGL作为一种三维工具软件包在交互式三根据OpenGL的绘图过程及其一些高级的技术,可以对颜色缓存、深度缓存、模板缓存和累积缓存进行操作。颜色缓存通常是绘图的缓存,深度缓存存储每个像素的深度值,模板缓存是把绘图局限于屏幕的某些部分,如在一个喷涂罐头,可以利用一个卡纸模板

8、作成相当精密的涂色图像,累积缓存保存RGBA颜色数据。模板检验仅在存在模板缓存时发生起作用,当不存在模板缓存时,模板检验总是通过的。模板利用的检验是比较参考和模板缓存中象素存储的值,根据检验的结果,修改模板缓存中的值。模板检验的最典型的应用是将屏幕上规划形状的区域屏蔽掉,以使出现在这个区域中的部分不绘出。要实现这种应用,先用0填入模板掩码,而后在模板缓存中用1绘制所要求的内容。通常不能直接在模板缓存中绘图,但可以通过在颜色缓存中绘图和对zpass函数选择一个适合的值来达到相同的结果。无论何时进行图形绘制,都会同时在模板缓存中也写入一个值,此时作为参考值。为了使模板缓存绘图免于受到颜色缓存内容的

9、影响,设置颜色掩码为0。此时,也要求关闭写深度缓存。因此利用模板检验对模型进行剖切并覆盖剖切面过程如13维图形建模能力和编程方面具有无可比拟的优越性。它可以灵活方便地实现了二维和三维的高级图形技术,在性能上表现得异常优越。它具有建模、变换、光线处理、色彩处理、动画以及更先进的功能,如纹理映射、物体运动模糊效果和雾化效果等。OpenGL是一个功能强大的图形库,用户可以很方便地开发所需要的有多种特殊视觉效果的三维图形。要进行基于OpenGL的应用程序的开发,必须掌握OpenGL程序设计的方法,包括OpenGL的库函数、OpenGL的语言规则、OpenGL的系统的状态等。OpenGL程序的基本结构有

10、两部分:初始化OpenGL绘图的状态和描述要绘制的物体。利用OpenGL绘图在屏幕上显示图像的主要步骤是:(1)构造几何要素(点、线、多边形、图像、位图),创建对象的数学描述;2005年2月云南冶金Feb.2005下:假设绘一个由若干个多边形组成的闭合模型,并有一个与模型相交的裁剪面将模型发割,现需要用某种颜色的面覆盖模型,使见不到模型的内部。要这样做,先清除模板缓存为0,而激活模板和设置模板比较函数取为总是接受片段值开始绘图。每次接受片段值时,倒置模板面中的值。在绘出全部对象后,不需要覆盖的屏幕区在模板面中为0,而需要覆盖的区域为非0。重置模板函数使只绘模板值为非零的地方,并且通过整个屏幕绘

11、一个覆盖颜色的大多边形。由此所得到的覆盖区即为所求的剖面。最后还要利用OpenGL的反馈技术将所生成的剖面数据从反馈数组中提取出来,形成完整的剖面内部结构。切割剖面的流程图见图2。模板检验,因此我们可以绘制真正的物体;第三步在反馈模式下绘图并将剖面数据从反馈数组中提取出来;DrawScene(GLRENDER);/绘制一个规则的模型;glFeedbackBuffer(1024,GL3DCOLOR,feed);/设置反馈数组feed;glRenderMode(GLFEEDBACK);/在反馈模式下重新绘制,它不会影响反馈缓存;(GL);/将返回真正(feed);/自定义函数将缓存的剖面三角形提取

12、出来;第四步绘制剖面三角形。glDisable(GL面;DrawPlan2(111111);/绘制剖面三角形;CLIPPLANE0);/关闭切割图2用OpenGL切割剖面流程图Fig.2Sectioncuttingflow-sheetusingOpenGL绘制剖面完毕。4工程实例某铁矿是一个大型磁铁矿床,矿体产于辉长岩体中,西部边坡主要是辉长岩,北部边坡下部为辉长岩被上部的块状花岗岩岩体所覆盖。磁铁矿体生成于含矿流层状辉长岩相带中(含矿带)。由于市场所限,该矿体目前采用小规模露天开采。如图3为该矿山的开采终了三维实体模型图。作者开发了一个三维岩体建模系统,该系统利用OpenGL的高级技术可对模

13、型进行任意方向的剖切。如图45为在沿X轴方向100、-50m处的剖面图,如图69为在沿Y和Z轴方向0、50m处的剖面图,如图10为在平行于Y轴而与X、Z轴方向有一定角度的剖面图。313用OpenGL生成切割面的程序描述生成切割面主要用利用OpenGL的模板检验及反馈功能。主要绘制过程如下:第一步初始化;glClear(GLCOLORBUFFERBITorGLDEPTHBUFFERBIT);/清除颜色和深度缓存;第二步只绘制模型的模板植(颜色和深度缓存被禁用);glEnable(GLSTENCILTEST);/打开模板缓存;glclipplane(GLCLIPPLANE0,eqn);/设置切割面

14、参数;glEnable(GLCLIPPLANE0);/打开切割面;DrawPlan1(111111);/在模板中绘制图形,并没有在屏幕上绘制图形;glDIsable(DLSTENCILTEST);/这里禁用145结论作者利用Delphi610结合OpenGL开发了一个三维岩体建模系统,该系统不但可以真实地显示出岩体的三维形态,还可以对其做任意剖面图,其绘制剖面就是利用OpenGL高级技术进行的,本文给出了绘制剖面过程。用该种方法所绘制出的剖面与用人工绘制出的剖面图完全一致,从而说明绘制剖陈俊智等利用OpenGL对岩体三维模型进行切剖面方法研究面的准确性。最后作者对某露天矿的三维模型进行剖切,生

15、成一系列剖面图形。由此可见,利用OpenGL的高级绘图功能,对岩体三维模型切割剖面的方法是有效和可行的。acertainmineattheendoffirstphaseexcavation(下转第20页)152005年2月云南冶金Feb.20051)针对磨碎矿石的力学特性及磨机工作条件,第二分册M.北京:冶金工业出版社,1959年9月第一版.2段希祥.降低粗磨机钢球尺寸的研究J.矿山机械,1998,(1):18-21.3段希祥.自然矿块抗压强度测选定研究J.有色金属(季精确选择球径提高磨矿的针对性,符合当代磨矿技术的发展趋势811。研究开发出来的精确化装补球新方法优于过去出现及使用的各种装补球

16、方法。此方法简单而便于应用,而且效果十分显著,是一种很有应用前景的装补球方法。2)精确化装补球方法在大红山铜矿选厂系列的成功应用,可以大幅度提高磨机生产率并提高选矿指标及节能降耗。3)精确化装补球方法的应用是在不增加设施投入的情况下,使一个设计能力为3000t/d的大型生产系统因应用此法而增收节支3千多万元,效益十分可观。参考文献:1A、F塔加尔特.刊),2000,(3):11-14.4段希祥.球磨机的钢球尺寸研究J.有色金属(选矿部份),1983,(5):52-57.5段希祥.球磨机钢球尺寸理论计算研究J.中国科学A辑,1989,(8):857-863.6段希祥,等.球磨机介质工作理论与实践M.北京:冶金工业出版社,1999年8月第一版,72-75.7李启衡.碎矿与磨矿M.冶金工业出版社,1980年7月第一版,191.8.J.昆(50),2004,(4):57-61.(上接第15页)图9在沿Y轴方向50m处的剖面图图8在沿Y轴方向0m处的剖面图Fig.8Sectionat0mofY-axisdirectionFig.9Sectionat50mofY-axisdirection图10在平行于Y轴而与X、Z轴方向有一定角度的剖面图Fig.10SectionattheplacewhereisparalleltoY-axisandcertainangletoX-andY-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论