• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      開(kāi)源引擎在煤礦三維可視化中的應(yīng)用研究

      2018-09-10 02:57:33董前林蔣樣明劉赟蔡將軍李衛(wèi)東
      河南科技 2018年26期
      關(guān)鍵詞:引擎底板實(shí)體

      董前林 蔣樣明 劉赟 蔡將軍 李衛(wèi)東

      摘 要:筆者選擇OGRE 3D作為數(shù)字煤礦三維可視化渲染引擎,提出了基于OGRE 3D的煤層三維建模流程方法和煤層精細(xì)紋理的制作方法。其中,煤層模型構(gòu)建的流程是:對(duì)于煤層,首先根據(jù)煤層底板等值線(xiàn)、斷層、陷落柱和邊界數(shù)據(jù),采用基于線(xiàn)狀信息源的分區(qū)綜合插值法得到煤層底板的GRID文件,再加上煤厚數(shù)據(jù),分塊生成包含煤層體6個(gè)面的XML文件(每個(gè)XML文件存儲(chǔ)的都是不規(guī)則三角網(wǎng)數(shù)據(jù)),然后生成可供OGRE 3D使用的包含層次細(xì)節(jié)信息的Mesh模型,最終通過(guò)OGRE 3D渲染生成模擬煤層。

      關(guān)鍵詞:數(shù)字煤礦;三維渲染引擎OGRE 3D;Mesh模型;不規(guī)則三角網(wǎng)

      中圖分類(lèi)號(hào):P208文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1003-5168(2018)26-0079-03

      1 研究背景

      煤礦的三維可視化系統(tǒng)是指采用計(jì)算機(jī)軟件和相應(yīng)的硬件設(shè)備,根據(jù)煤礦的實(shí)際地層數(shù)據(jù)、煤層數(shù)據(jù)、巷道數(shù)據(jù)、鉆孔數(shù)據(jù)和地表工業(yè)廣場(chǎng)數(shù)據(jù)模擬煤礦的實(shí)際生產(chǎn)的三維空間[1]。在煤礦的三維可視化系統(tǒng)中,用戶(hù)可以身臨其境煤礦設(shè)計(jì)、開(kāi)采等過(guò)程,并能對(duì)相應(yīng)的過(guò)程進(jìn)行重現(xiàn)或跟蹤。因此,構(gòu)建煤礦三維可視化系統(tǒng)對(duì)實(shí)現(xiàn)煤礦的現(xiàn)代化管理、安全高效生產(chǎn)及提高整個(gè)行業(yè)的科技發(fā)展水平具有非常重要的意義。

      開(kāi)源三維引擎的優(yōu)點(diǎn)是可以充分利用成熟的游戲級(jí)的三維渲染引擎類(lèi),減少引擎開(kāi)發(fā)的時(shí)間,從而把主要精力用于數(shù)字煤礦三維模型的構(gòu)建。開(kāi)源三維引擎的種類(lèi)繁多。常見(jiàn)的3D引擎有:Unreal、LithTech、OGRE等,其中開(kāi)源免費(fèi)的有:Fly3D、G3D、OGRE 3D等。OGRE 3D是全面支持跨平臺(tái)的最主要的開(kāi)源三維渲染引擎之一,能方便地插入到已有的應(yīng)用程序框架中。OGRE 3D在免費(fèi)、開(kāi)源的引擎中評(píng)價(jià)最高:第一,其圖形渲染質(zhì)量較好;第二,其設(shè)計(jì)模式較為清晰;第三,其速度也不錯(cuò)。鑒于OGRE 3D具有上述優(yōu)點(diǎn),本文采用OGRE 3D作為煤礦三維開(kāi)發(fā)引擎。

      2 煤層三維建模流程

      2.1 原始數(shù)據(jù)介紹

      試驗(yàn)煤礦采煤層的基礎(chǔ)數(shù)據(jù)分為5號(hào)、9號(hào)、15號(hào)三種。本文以5號(hào)煤層為例,介紹煤層模型的構(gòu)建。煤層的數(shù)據(jù)范圍是64km2,X:654 300~662 300m,Y:3 947 500~3 955 500m?;A(chǔ)數(shù)據(jù)包括:5號(hào)煤層(以下簡(jiǎn)稱(chēng)為“5”或“5煤”)底板等值線(xiàn)、5m煤厚等值線(xiàn)、5m陷落柱、5m斷層等。這些數(shù)據(jù)都是以tab格式存儲(chǔ)的。由于煤層的數(shù)據(jù)量較大,為了便于對(duì)煤層數(shù)據(jù)進(jìn)行分析、處理和管理,本文將原始數(shù)據(jù)按500m×500m單元格網(wǎng)分為(16×16)塊。

      2.2 生成煤層GRID文件

      本文中,GRID文件主要是根據(jù)煤層頂板、底板等值線(xiàn)運(yùn)用線(xiàn)狀信息源分區(qū)綜合插值法[2]生成。所謂分區(qū)綜合插值法,是根據(jù)線(xiàn)條包圍區(qū)的不同情況,采用不同的方法進(jìn)行插值推斷。該方法可以充分利用煤礦實(shí)際生產(chǎn)中積累的大量地質(zhì)資料,繪制精細(xì)的、準(zhǔn)確度高的地質(zhì)曲面圖形。線(xiàn)狀信息源分區(qū)綜合插值法根據(jù)某地層的等值線(xiàn)、斷層線(xiàn)、邊界線(xiàn)等線(xiàn)狀信息,將整個(gè)圖形轉(zhuǎn)換區(qū)劃分成若干個(gè)小區(qū),使整個(gè)圖形轉(zhuǎn)換區(qū)都劃分為由邊界線(xiàn)、斷層線(xiàn)、等值線(xiàn)、陷落柱包圍的若干局部區(qū)域,充分利用了這些信息,可以得到較精細(xì)的地層曲面圖形[3]。本文采用綜合插值法對(duì)5m底板、5m煤厚、5m陷落柱和5m斷層數(shù)據(jù)進(jìn)行插值,得到5m底板GRID文件(5m_2.grd)和3m厚度GRID文件(5mh_2.grd)。

      2.3 生成煤層X(jué)ML文件

      生成煤層X(jué)ML文件的過(guò)程是:采用已有的算法把2.2節(jié)中生成的GRID文件轉(zhuǎn)化成不規(guī)則的三角形,然后按照規(guī)定的XML文件格式進(jìn)行存儲(chǔ),分為下面兩個(gè)主要的步驟。

      2.3.1 讀入GRID和DAT文件。Surfer的GS ASCⅡ[.GRD]文件的記錄格式如下:

      第一行為大寫(xiě)的DSAA,是ASCⅡ格網(wǎng)文件的標(biāo)志;

      第二行為兩個(gè)整形數(shù),分別表示格網(wǎng)數(shù)據(jù)的列數(shù)和行數(shù);

      第三行為兩個(gè)浮點(diǎn)數(shù),分別表示格網(wǎng)區(qū)中像素X坐標(biāo)的最小值和最大值;

      第四行為兩個(gè)浮點(diǎn)數(shù),分別表示格網(wǎng)區(qū)中像素Y坐標(biāo)的最小值和最大值;

      第五行為兩個(gè)浮點(diǎn)數(shù),分別表示格網(wǎng)區(qū)中像素Z值的最小值和最大值;

      從第六行開(kāi)始是以浮點(diǎn)數(shù)存儲(chǔ)的數(shù)據(jù)。假設(shè)格網(wǎng)區(qū)分為M行N列,依次存放的是第M行第一列的數(shù)據(jù)、第M行第二列的數(shù)據(jù)……,直到第M行的第N列數(shù)據(jù)。然后另起一行存儲(chǔ)第M-1行的數(shù)據(jù),格式同前,依次類(lèi)推直到第一行第N列數(shù)據(jù)。

      Surfer還有一種常用的ASCⅡ XYZ格式的[.DAT]文件,該文件在A列中為X坐標(biāo),B列中為Y坐標(biāo)和在C列中為Z值。

      本文三維建模采用的數(shù)據(jù)包括3煤2m分辨率的底板GRID文件(5m_2.grd)、5煤底板邊界的DAT文件(5mdbbj.dat)。根據(jù)GRID、DAT文件的不同格式分別讀入5m_2.grd,5mh_2.grd,5mdbbj.dat。

      2.3.2 生成不規(guī)則三角形并存儲(chǔ)。煤層頂板的高度等于煤層底板的高度加上煤層的厚度。由于數(shù)據(jù)量較大,把已分塊的煤層在Y方向(左下角為坐標(biāo)原點(diǎn),向右為X軸正方向,向上為Y軸正方向)上分為2段。煤層底板存在陷落柱,對(duì)陷落柱(空白值)的點(diǎn)確定一個(gè)假定的Z值:第一點(diǎn)為空白點(diǎn)時(shí),從右邊最靠近的非空白點(diǎn)取值;最后點(diǎn)為空白點(diǎn)時(shí),從左邊最靠近的非空白點(diǎn)取值;中間點(diǎn)為空白點(diǎn)時(shí),從左右兩邊各取最靠近的非空白點(diǎn)后加權(quán)取值。根據(jù)2.3.1部分讀入的數(shù)據(jù)按照由后向前、由左至右,上下層分別逐點(diǎn)組合生成三角面。每一點(diǎn)只考慮右上象限,只考慮4點(diǎn)都可用的情況。假定上下層可用點(diǎn)相同。對(duì)于生成的三角面片需要計(jì)算其法線(xiàn),而頂點(diǎn)法線(xiàn)采用各有關(guān)三角面法線(xiàn)相加后再正規(guī)化的算法進(jìn)行計(jì)算。

      XML文件存儲(chǔ)的信息包括:煤層Mesh模型材質(zhì)的名稱(chēng),不規(guī)則三角形的頂點(diǎn)信息以及每個(gè)不規(guī)則三角形頂點(diǎn)的坐標(biāo)、法線(xiàn)和紋理坐標(biāo)。通過(guò)執(zhí)行編譯后程序GRD-Mesh_A.exe,生成XML文件。

      2.4 生成煤層模型

      通過(guò)OgreXMLConverter程序可以把2.3中生成的XML文件轉(zhuǎn)換為Mesh模型。該程序是一個(gè)對(duì)調(diào)試網(wǎng)格數(shù)據(jù)內(nèi)容或者進(jìn)行簡(jiǎn)單網(wǎng)格數(shù)據(jù)交換非常有用的工具,其可以將二進(jìn)制在.Mesh、.Skeleton文件與XML文件之間進(jìn)行轉(zhuǎn)換。OgreXMLConverter可以很容易地把XML文件轉(zhuǎn)換成二進(jìn)制文件。同時(shí),其還可以為網(wǎng)格數(shù)據(jù)的生成附加信息,如邊界區(qū)域(bounding region)和層次細(xì)節(jié)信息(level-of-detail)。層次細(xì)節(jié)是指對(duì)于同一個(gè)場(chǎng)景中的對(duì)象,可以通過(guò)不同的細(xì)節(jié)描述來(lái)得到不同層次的模型。在實(shí)際渲染中,是根據(jù)被渲染的實(shí)體與觀察點(diǎn)(攝像機(jī))的距離來(lái)選擇不同細(xì)節(jié)。一般情況下,與觀察點(diǎn)距離較遠(yuǎn)時(shí),具有更廣的視覺(jué)空間,看到的實(shí)體比較多,但實(shí)體紋理比較模糊;相反,看到的實(shí)體較多,但實(shí)體的紋理較清晰。所以,為了節(jié)約計(jì)算機(jī)資源,提高渲染效率,距離較遠(yuǎn)的實(shí)體,渲染較少的紋理細(xì)節(jié)。這可以通過(guò)設(shè)定實(shí)體與觀察點(diǎn)的距離閾值來(lái)實(shí)現(xiàn)。根據(jù)不同的閾值設(shè)置不同紋理細(xì)節(jié)。

      3 煤層三維可視化

      3.1 ORGE 3D渲染的關(guān)鍵技術(shù)

      ORGE 3D渲染的關(guān)鍵技術(shù)主要有以下幾方面。①場(chǎng)景管理器。OGRE 3D是通過(guò)場(chǎng)景管理器來(lái)創(chuàng)建和操作場(chǎng)景中的對(duì)象、燈光、攝影機(jī)和實(shí)體等。在通過(guò)場(chǎng)景管理器操縱整個(gè)場(chǎng)景之前,要建立一個(gè)場(chǎng)景管理器的實(shí)例,然后至少還要構(gòu)建一個(gè)攝像機(jī),并執(zhí)行“放置一個(gè)實(shí)體到場(chǎng)景中”的操作。②場(chǎng)景管理器。攝像機(jī)的概念和真實(shí)世界中的一樣,為場(chǎng)景進(jìn)行“拍攝”每一幀的工作。攝像機(jī)既可以?huà)煸趫?chǎng)景節(jié)點(diǎn)上,也可以直接放到空間中。③燈光。燈光都會(huì)被綁定到某些場(chǎng)景節(jié)點(diǎn)上,用來(lái)產(chǎn)生特殊的效果,可以認(rèn)為任何能夠照亮場(chǎng)景的東西都是燈光。在場(chǎng)景中,燈光擁有其類(lèi)型、位置及強(qiáng)度的屬性。④天空面。天空面就是一個(gè)用來(lái)模擬現(xiàn)實(shí)世界中天空的一個(gè)平面。通常而言,其只是一個(gè)平面;不過(guò)如果需要,也可以把它當(dāng)成“彎曲的”平面。當(dāng)天空面彎曲時(shí),類(lèi)似穹頂所產(chǎn)生的效果,不過(guò)仍需要運(yùn)用一些云霧的效果來(lái)掩飾其中的不足。

      3.2 煤層三維模型的渲染

      場(chǎng)景節(jié)點(diǎn)是在場(chǎng)景中實(shí)際移動(dòng)變換的基本單元,其有自己的關(guān)聯(lián)層次(可以有父節(jié)點(diǎn)或者子節(jié)點(diǎn))。節(jié)點(diǎn)的操作支持三種不同的坐標(biāo)系空間,即世界坐標(biāo)空間、父節(jié)點(diǎn)空間和自身空間。在進(jìn)行移動(dòng)、縮放、旋轉(zhuǎn)時(shí),可以自由選擇使用的坐標(biāo)空間。場(chǎng)景節(jié)點(diǎn)將持續(xù)跟蹤與其關(guān)聯(lián)的實(shí)體的方位。當(dāng)創(chuàng)建了一個(gè)實(shí)體以后,其直到與一個(gè)場(chǎng)景節(jié)點(diǎn)關(guān)聯(lián)后才會(huì)被渲染。同樣,一個(gè)場(chǎng)景節(jié)點(diǎn)也不能單獨(dú)在屏幕上顯示出來(lái),只有與一個(gè)實(shí)體綁定后才能在屏幕上顯示。本文是通過(guò)LoadCoalMesh函數(shù)實(shí)現(xiàn)煤礦三維模型的渲染,可以通過(guò)兩種方式獲取需要渲染的模型文件:①讀取事先配置好的XML文件;②使用打開(kāi)菜單選擇渲染模型。文中規(guī)定為每個(gè)實(shí)體創(chuàng)建唯一的場(chǎng)景節(jié)點(diǎn),并且場(chǎng)景節(jié)點(diǎn)和實(shí)體具有相同的名稱(chēng)。煤層三維模型的渲染結(jié)果如圖1和圖2所示。

      4 煤礦三維空間查詢(xún)

      煤礦的三維空間查詢(xún)包括以下兩方面。①三維屬性查詢(xún)——由對(duì)象查詢(xún)屬性。OGRE 3D支持的Mesh模型,是一種網(wǎng)格模型,其無(wú)法存儲(chǔ)對(duì)象的屬性,即無(wú)法直接通過(guò)煤層或巷道的Mesh模型來(lái)獲取煤層的厚度、巷道長(zhǎng)度等信息,這需要進(jìn)行額外處理。本文的實(shí)現(xiàn)方式是:把煤層和巷道的屬性信息存放在Access數(shù)據(jù)庫(kù)中,通過(guò)Mesh模型的名稱(chēng)來(lái)關(guān)聯(lián)和查詢(xún)所對(duì)應(yīng)的屬性信息。首先通過(guò)鼠標(biāo)選擇實(shí)體對(duì)象,然后通過(guò)對(duì)象的名稱(chēng)檢索所在的數(shù)據(jù)庫(kù)表,在數(shù)據(jù)庫(kù)表中使用對(duì)象的名稱(chēng),就可以查詢(xún)到該對(duì)象的屬性信息。②三維空間查詢(xún)——由屬性查詢(xún)對(duì)象。三維空間查詢(xún)即通過(guò)屬性查詢(xún)對(duì)象,并居中、高亮顯示符合條件的對(duì)象。實(shí)現(xiàn)的基本原理是:首先,通過(guò)屬性獲取對(duì)象的名稱(chēng)(模型的名稱(chēng)),再獲取對(duì)象對(duì)應(yīng)的實(shí)體的名稱(chēng),然后,獲取該實(shí)體綁定的場(chǎng)景節(jié)點(diǎn),通過(guò)場(chǎng)景節(jié)點(diǎn)的_getWorldAABB()方法獲取場(chǎng)景節(jié)點(diǎn)的位置A,最后把攝像機(jī)移動(dòng)到與該位置具有一定距離的位置B,并讓攝像機(jī)朝向位置A。

      5 結(jié)論

      本文基于開(kāi)源引擎對(duì)煤礦三維可視化進(jìn)行研究。對(duì)于煤層數(shù)據(jù),首先根據(jù)煤層底板等值線(xiàn)、斷層、陷落柱和邊界數(shù)據(jù),采用基于線(xiàn)狀信息源的分區(qū)綜合插值法得到煤層底板的GRID文件,再加上煤厚數(shù)據(jù),分塊生成包含煤層體6個(gè)面的不規(guī)則三角網(wǎng)的XML文件,然后生成可供OGRE 3D使用的包含層次細(xì)節(jié)信息的Mesh模型,最終得到了較好的煤礦三維顯示效果。在實(shí)現(xiàn)煤礦三維顯示的同時(shí),還實(shí)現(xiàn)了煤礦數(shù)據(jù)的三維空間和屬性查詢(xún)。

      參考文獻(xiàn):

      [1]韓瑞棟.煤礦三維可視化系統(tǒng)關(guān)鍵技術(shù)研究與實(shí)現(xiàn)[D].青島:山東科技大學(xué),2007.

      [2]Sirayanone S. Comparative Studies of Kriging, Multiquadric-biharmonic, and other Methods for Solving mineral Resource Problems [D].Ames:Lowa State University,1988.

      [3]曾坤.數(shù)字礦山插值方法研究[D].北京:中國(guó)礦業(yè)大學(xué)(北京),2007.

      猜你喜歡
      引擎底板實(shí)體
      前海自貿(mào)區(qū):金融服務(wù)實(shí)體
      藍(lán)谷: “涉藍(lán)”新引擎
      商周刊(2017年22期)2017-11-09 05:08:31
      實(shí)體的可感部分與實(shí)體——兼論亞里士多德分析實(shí)體的兩種模式
      兩會(huì)進(jìn)行時(shí):緊扣實(shí)體經(jīng)濟(jì)“釘釘子”
      振興實(shí)體經(jīng)濟(jì)地方如何“釘釘子”
      軟土地基上超長(zhǎng)底板節(jié)制閘沉降及應(yīng)力分析
      底板巷一巷兩用的回采工作面防火實(shí)踐
      底板隔水層破壞的力學(xué)模型及破壞判據(jù)
      無(wú)形的引擎
      河南電力(2015年5期)2015-06-08 06:01:46
      基于Cocos2d引擎的PuzzleGame開(kāi)發(fā)
      宁乡县| 长治市| 凯里市| 西吉县| 积石山| 赫章县| 灌云县| 丽水市| 鹤岗市| 巴南区| 民和| 始兴县| 辽中县| 桐梓县| 行唐县| 广宁县| 焉耆| 承德市| 武夷山市| 汉源县| 历史| 宝应县| 邓州市| 彭山县| 乐都县| 云林县| 内丘县| 根河市| 内黄县| 聂荣县| 景洪市| 湟源县| 沈阳市| 广州市| 塔城市| 林口县| 阿鲁科尔沁旗| 新昌县| 司法| 宣汉县| 临安市|