• 
    

    
    

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

      異種油藏網(wǎng)格模型三維可視化優(yōu)化方法研究

      2014-07-25 07:45:08劉青昆龔蔚青胡國棟
      關(guān)鍵詞:異種頂點(diǎn)繪制

      申 皓,劉青昆,龔蔚青,胡國棟

      (1.遼寧師范大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,遼寧 大連 116081;2.中石化石油勘探開發(fā)研究院,北京 100083;3.北京華盛海天科技發(fā)展有限公司,北京 100191)

      三維可視化技術(shù)日趨成熟,其在石油勘探領(lǐng)域的應(yīng)用越來越重要,目前主要常見于國外主流商業(yè)化油藏三維地質(zhì)建模、油藏?cái)?shù)值模擬等大型專業(yè)軟件中,如PETREL和ECLIPSE等[1]。為了能對主流商業(yè)軟件地質(zhì)研究成果加以研究和利用,需要能夠加載不同軟件的模型成果文件。但不同的軟件網(wǎng)格描述方式不同,需要分別編寫相應(yīng)的處理程序,增加分析工具的研發(fā)成本。同時大規(guī)模油藏模型對計(jì)算機(jī)的存儲容量、處理速度、繪制速度等都提出了很高的要求[2-3],當(dāng)進(jìn)行旋轉(zhuǎn)、縮放等操作時運(yùn)算數(shù)據(jù)量大,會出現(xiàn)速度緩慢、顯示不連續(xù)等問題。因此,本文提出異種油藏網(wǎng)格模型三維可視化優(yōu)化方法。該方法能夠加載不同描述方式的異種網(wǎng)格模型,同時在不影響油藏模型顯示效果的前提下,對網(wǎng)格模型數(shù)據(jù)進(jìn)行優(yōu)化,最大限度地減少原始模型的網(wǎng)格和頂點(diǎn)的數(shù)目,進(jìn)而使得優(yōu)化后的網(wǎng)格模型能進(jìn)行快速實(shí)時繪制,提高了網(wǎng)格規(guī)模的擴(kuò)展性。

      1 異種網(wǎng)格模型及特點(diǎn)

      矩形和角點(diǎn)是目前使用較多的結(jié)構(gòu)化網(wǎng)格,可以用I、J、K定義每個網(wǎng)格的位置。矩形網(wǎng)格主要用DX、DY、DZ關(guān)鍵字來描述,角點(diǎn)網(wǎng)格主要用COORD、ZCORN關(guān)鍵字來描述,它們的網(wǎng)格存儲格式不同[4-5]。此外,不同軟件導(dǎo)出的網(wǎng)格模型可能存在I、J增量方向的差異,其網(wǎng)格排序也不同。本文把不同存儲格式、不同排序的網(wǎng)格模型統(tǒng)稱為異種網(wǎng)格模型。

      2 異種網(wǎng)格模型繪制方法研究

      2.1 統(tǒng)一網(wǎng)格存儲格式研究

      將統(tǒng)一網(wǎng)格存儲格式的方法定義為兩個函數(shù)接口,在對各自模型成果文件進(jìn)行讀取時,只需提供這兩個接口函數(shù),便可獲取各結(jié)構(gòu)化網(wǎng)格模型各網(wǎng)格8個頂點(diǎn)坐標(biāo)數(shù)據(jù)。

      兩個接口函數(shù)為:一個是網(wǎng)格頂點(diǎn)坐標(biāo)獲取接口GetVertice(),通過唯一頂點(diǎn)索引index可以得到對應(yīng)唯一頂點(diǎn)坐標(biāo)(x,y,z),即不重復(fù)的網(wǎng)格頂點(diǎn)坐標(biāo)都有一個唯一索引標(biāo)簽與之對應(yīng);另一個是網(wǎng)格頂點(diǎn)坐標(biāo)索引獲取接口GetHexahedron(),用于獲取(i,j,k)網(wǎng)格 8個頂點(diǎn)的坐標(biāo)索引值,此索引值與網(wǎng)格頂點(diǎn)獲取接口參數(shù)索引值index相同。

      2.2 統(tǒng)一網(wǎng)格排序研究

      網(wǎng)格排序存在差異是指I、J增量方向不同,如圖1、圖2所示。進(jìn)行網(wǎng)格遍歷時,I方向,(i+1,j,k)網(wǎng)格相對于當(dāng)前(i,j,k)網(wǎng)格可能在右或在左,如果(i+1,j,k)網(wǎng)格為無效網(wǎng)格或與(i,j,k)網(wǎng)格相鄰面的4個頂點(diǎn)不重合,需保存兩個網(wǎng)格相鄰面的4個頂點(diǎn)數(shù)據(jù)。當(dāng)I增量向右,則保存(i,j,k)網(wǎng)格右平面4個頂點(diǎn)數(shù)據(jù);當(dāng)I增量向左,則保存(i,j,k)網(wǎng)格左平面4個頂點(diǎn)數(shù)據(jù)。J方向也如此。為了識別網(wǎng)格模型I、J增量方向及方便后續(xù)網(wǎng)格模型優(yōu)化,本文通過設(shè)置頂點(diǎn)標(biāo)記索引和網(wǎng)格頂點(diǎn)相對索引來實(shí)現(xiàn)。

      定義所有網(wǎng)格 8個頂點(diǎn)的標(biāo)記索引為 0、1、2、3、4、5、6、7。通過獲取I正方向鄰接面頂點(diǎn)關(guān)系表(I,I+1網(wǎng)格相鄰面)、J正方向鄰接面頂點(diǎn)關(guān)系表(J,J+1網(wǎng)格相鄰面),即相鄰面 8個頂點(diǎn)標(biāo)記索引,來判定網(wǎng)格模型I、J增量方向,并設(shè)置對應(yīng)的頂點(diǎn)相對索引。

      I、J方向識別算法基本步驟如下:

      (1)初始化相對索引數(shù)組RI,RI(i)=-1,其中,i=0,1,…,7;

      圖1 I方向示例圖

      圖2 J方向示例圖

      (2)獲取I正方向鄰接面頂點(diǎn)關(guān)系表;

      (3)獲取J正方向鄰接面頂點(diǎn)關(guān)系表;

      (4)判斷I方向相鄰面頂點(diǎn)標(biāo)記索引與J方向相鄰面頂點(diǎn)標(biāo)記索引關(guān)系,以此確定I、J增量方向;

      (5)根據(jù)步驟(4)獲取的I、J增量方向,設(shè)置對應(yīng)的頂點(diǎn)相對索引數(shù)組RI。

      3 網(wǎng)格模型消隱算法實(shí)現(xiàn)

      針對大規(guī)模油藏網(wǎng)格模型會占用大量存儲空間、運(yùn)算量大、降低模型繪制速度的問題,本文實(shí)現(xiàn)模型消隱算法對模型網(wǎng)格數(shù)據(jù)進(jìn)行優(yōu)化處理,只繪制表層油藏網(wǎng)格模型。網(wǎng)格模型消隱算法基本步驟如下:

      (1)獲取相對索引數(shù)組RI。

      (2)遍歷每個單元網(wǎng)格 Girdi,j,k(i=1,…,NX;j=1,…,NY;k=1,…,NZ)。

      (3)判斷當(dāng)前網(wǎng)格是否為有效網(wǎng)格。若滿足要求,進(jìn)行下一步;否則跳至步驟(2)。

      (4)獲取當(dāng)前網(wǎng)格頂點(diǎn)坐標(biāo)索引GIi,j,k。

      (5)判斷相鄰網(wǎng)格GirdI,J,K(I=i,i-1或i+1;J=j,j-1或j+1;K=k,k-1或k+1)(判斷相鄰網(wǎng)格順序:上方向、下方向、左方向、右方向、前方向、后方向)是否為有效網(wǎng)格。若滿足要求,進(jìn)行下一步;若不滿足且當(dāng)前判斷為后方向相鄰網(wǎng)格,跳至步驟(2),否則跳至步驟(5),繼續(xù)判斷其他相鄰網(wǎng)格。

      (6)獲取當(dāng)前網(wǎng)格相鄰網(wǎng)格頂點(diǎn)坐標(biāo)索引GII,J,K。

      (7)根據(jù)步驟(4)、(6)獲得的坐標(biāo)索引 index判斷(i,j,k)網(wǎng)格與其相鄰(I,J,K)網(wǎng)格相鄰面 4個頂點(diǎn)是否重合。若不滿足要求,進(jìn)行下一步;若滿足且當(dāng)前判斷為后方向相鄰網(wǎng)格,跳至步驟(2),否則跳至步驟(5),繼續(xù)判斷其他相鄰網(wǎng)格。

      (8)根據(jù)網(wǎng)格頂點(diǎn)坐標(biāo)索引接口獲取當(dāng)前(i,j,k)網(wǎng)格8個頂點(diǎn)坐標(biāo)索引數(shù)組VI(i),其中,i=0,1,…,7,并根據(jù)當(dāng)前網(wǎng)格相鄰面4個頂點(diǎn)相對索引獲取4個頂點(diǎn)坐標(biāo)。

      (9)依次判斷4個頂點(diǎn)是否已經(jīng)保存進(jìn)表層頂點(diǎn)坐標(biāo)數(shù)組SV中。若已經(jīng)保存,則返回已保存頂點(diǎn)坐標(biāo)索引,即SV數(shù)組下標(biāo);否則保存,并返回新頂點(diǎn)坐標(biāo)索引,進(jìn)行下一步。

      (10)將步驟(9)獲取的4個頂點(diǎn)坐標(biāo)索引保存在表層四邊形頂點(diǎn)索引數(shù)組SQVI中,如果當(dāng)前相鄰網(wǎng)格為后方向相鄰網(wǎng)格,進(jìn)行下一步;否則跳至步驟(5)。

      (11)若 i≤NX,j≤NY,k≤NZ,跳至步驟(2);否則結(jié)束。

      4 實(shí)驗(yàn)與結(jié)果分析

      實(shí)驗(yàn)環(huán)境為:Inter(R)Core(TM)i5-3450@3.10 GHz CPU,3.48 GB內(nèi)存,基于 MFC應(yīng)用程序框架和OSG三維引擎進(jìn)行編程實(shí)現(xiàn)。

      4.1 繪制效果測試

      實(shí)驗(yàn)采用了Eclipse導(dǎo)出的 (NX,NY,NZ)=(20,20,10)規(guī)則矩形 網(wǎng)格 模 型和(NX,NY,NZ)=(119,57,10)角點(diǎn)網(wǎng)格模型,兩種結(jié)構(gòu)化網(wǎng)格模型在 E-clispe軟件中繪制的效果如圖3所示,通過本文方法進(jìn)行網(wǎng)格模型繪制,其效果圖如圖4所示。

      圖3 Eclipse繪制的模型圖

      圖4 基于本文方法繪制的模型圖

      對比圖3和圖4可知,基于本文方法繪制的模型圖與Eclispe繪制的一樣,證明了本文方法能夠兼容不同格式的網(wǎng)格模型。

      4.2 繪制性能測試

      實(shí)驗(yàn)分別采用 4 000、10萬、50萬、100萬、500萬個規(guī)則矩形網(wǎng)格模型進(jìn)行優(yōu)化前和優(yōu)化后性能測試,結(jié)果如表 1、表 2所示(表中旋轉(zhuǎn)縮放效果好、差分別代表:模型能實(shí)時繪制、顯示連續(xù)順暢,模型不能實(shí)時繪制、顯示不順暢)。

      從表1和表2可以看出,優(yōu)化后的網(wǎng)格模型較優(yōu)化前的網(wǎng)格模型存在諸多優(yōu)勢,網(wǎng)格規(guī)模越大,優(yōu)化效果越明顯,極大地提高了網(wǎng)格規(guī)模的擴(kuò)展性和系統(tǒng)性能需求,充分證明了本方法具有很高的可行性。

      針對實(shí)時繪制大規(guī)模網(wǎng)格模型存在速度慢、效果差以及油藏網(wǎng)格模型存在描述方式不同等問題,本文提出了異種網(wǎng)格模型三維可視化優(yōu)化方法,并通過不同網(wǎng)格模型、不同規(guī)模模型測試對比,證明了該方法是可行的,能夠兼容不同軟件不同描述格式的地質(zhì)研究成果,其應(yīng)用在大規(guī)模網(wǎng)格模型實(shí)時繪制方面性能有很大提升,且效果顯著。

      表1 模型消隱前實(shí)驗(yàn)值

      表2 模型消隱后實(shí)驗(yàn)值

      [1]ADMIN.石油行業(yè)常用軟件綜合介紹[EB/OL].(2008-09-29)[2014-02-26]www.hipetro.com/shiyouruanjian.html.

      [2]何暉光,田捷,張小鵬,等.網(wǎng)格模型化簡綜述[J].軟件學(xué)報(bào) ,2002,13(12):2215-2224.

      [3]趙新華.大數(shù)據(jù)量網(wǎng)格模型的建模與簡化技術(shù)研究[D].長沙:國防科學(xué)技術(shù)大學(xué),2002.

      [4]韓峻,施法中,吳勝和,等.基于格架模型的角點(diǎn)網(wǎng)格生成算法[J].計(jì)算機(jī)工程,2008,34(4):90-93.

      [5]蘇丹丹.基于角點(diǎn)網(wǎng)格剖分的三維地質(zhì)建模的研究與實(shí)現(xiàn)[D].西安:西安科技大學(xué),2010.

      猜你喜歡
      異種頂點(diǎn)繪制
      Art on coffee cups
      過非等腰銳角三角形頂點(diǎn)和垂心的圓的性質(zhì)及應(yīng)用(下)
      關(guān)于頂點(diǎn)染色的一個猜想
      放學(xué)后
      童話世界(2018年17期)2018-07-30 01:52:02
      異種部門
      異種部門
      異種部門
      異種部門
      在轉(zhuǎn)變中繪制新藍(lán)圖
      VBA在宗地圖繪制中的應(yīng)用
      镇远县| 上饶市| 昌邑市| 西畴县| 平武县| 巴彦淖尔市| 房山区| 万山特区| 伊川县| 彭阳县| 三明市| 来宾市| 额济纳旗| 抚顺市| 贵港市| 唐海县| 夏邑县| 吉林市| 儋州市| 古浪县| 新龙县| 新野县| 宣化县| 班玛县| 壤塘县| 靖远县| 咸阳市| 隆林| 章丘市| 巴马| 昭通市| 昌图县| 修武县| 卓尼县| 邢台县| 屏南县| 民丰县| 子洲县| 辉县市| 宁南县| 启东市|