鄒永玲,王萬(wàn)平
(1.長(zhǎng)慶油田公司勘探開(kāi)發(fā)研究院,陜西西安710021;2.陜西交通職業(yè)技術(shù)學(xué)院,陜西西安,710021)
應(yīng)用ArcScene的地形多分辨率實(shí)時(shí)繪制方法
鄒永玲1,王萬(wàn)平2
(1.長(zhǎng)慶油田公司勘探開(kāi)發(fā)研究院,陜西西安710021;2.陜西交通職業(yè)技術(shù)學(xué)院,陜西西安,710021)
應(yīng)用VB+AO+OpenGL技術(shù)對(duì)ArcScene進(jìn)行了二次開(kāi)發(fā)。采用四叉樹(shù)簡(jiǎn)化模型,經(jīng)過(guò)視域裁剪、節(jié)點(diǎn)評(píng)價(jià)、裂縫消除、三角形條帶等一系列優(yōu)化算法,實(shí)現(xiàn)了ArcScene對(duì)海量地形數(shù)據(jù)的多分辨率實(shí)時(shí)繪制,并通過(guò)實(shí)例證實(shí)了開(kāi)發(fā)的可行性。
三維可視化;多分辨率;ArcScene;四叉樹(shù)
ArcScene是一個(gè)功能強(qiáng)大的3D可視化平臺(tái),它不但具有多種數(shù)據(jù)格式的三維模型建立及顯示功能,而且還提供了ArcObject二次開(kāi)發(fā)組件庫(kù),可以根據(jù)用戶(hù)需要定制系統(tǒng)功能。隨著數(shù)據(jù)采集技術(shù)的發(fā)展,數(shù)據(jù)的采集量越來(lái)越大,用于描述地形模型的數(shù)據(jù)量也越來(lái)越多,渲染這些海量數(shù)據(jù)已超出了目前任何圖形設(shè)備所承受的能力,因此,應(yīng)用VB+AO+OpenGL來(lái)完善ArcScene的地形多分辨率實(shí)時(shí)繪制功能是非常必要的。
地形的多分辨率實(shí)時(shí)繪制就是在考慮地形場(chǎng)景本身起伏和視相關(guān)參數(shù)的前提下,動(dòng)態(tài)地選擇最優(yōu)節(jié)點(diǎn)集來(lái)形成地形場(chǎng)景的完整覆蓋,從而在地形場(chǎng)景的繪制效率和質(zhì)量間保持一個(gè)良好的平衡。ArcScene中DEM數(shù)據(jù)主要以Grid結(jié)構(gòu)為主,并且提供了TIN轉(zhuǎn)為Grid的功能,所以開(kāi)發(fā)時(shí)采用了以Grid為基礎(chǔ)的四叉樹(shù)簡(jiǎn)化模型,具體流程如圖1所示。
1.1 視域裁剪
在地形的實(shí)時(shí)顯示過(guò)程中,由于地形涉及的范圍一般都十分廣闊,地形模型的數(shù)據(jù)量也很大,往往包含數(shù)以百萬(wàn)計(jì)的三角形,如對(duì)它們一一進(jìn)行繪制,將給圖形系統(tǒng)帶來(lái)很大的負(fù)擔(dān)。當(dāng)然,用戶(hù)的視域是有限的,事先剔除用戶(hù)不可見(jiàn)的部分,則可有效地提高地形實(shí)時(shí)繪制的速度。
圖1 開(kāi)發(fā)流程圖
對(duì)于四叉樹(shù)結(jié)構(gòu)來(lái)說(shuō),基于層次結(jié)構(gòu)的區(qū)域裁剪方法并不需要對(duì)所有網(wǎng)格進(jìn)行判斷,這樣大大減少了裁剪判斷的次數(shù),加快了視區(qū)裁剪的速度,因此我們采用這種方法。首先從根節(jié)點(diǎn)0開(kāi)始,先測(cè)試它是否可見(jiàn),若是,則把根節(jié)點(diǎn)0分成四個(gè)子節(jié)點(diǎn)1,2,3和4;再?gòu)墓?jié)點(diǎn)1開(kāi)始,順序測(cè)試節(jié)點(diǎn)2,3和4,一直遞歸進(jìn)行直到結(jié)束,如圖2所示。
圖2 基于層次的視域裁剪
1.2 節(jié)點(diǎn)評(píng)價(jià)測(cè)度
地形的實(shí)時(shí)多分辨率表示是通過(guò)在地形四叉樹(shù)中選擇合適的頂點(diǎn)集來(lái)完成的。節(jié)點(diǎn)評(píng)價(jià)測(cè)度是地形多分辨率表示的天平,是度量地形片在動(dòng)態(tài)顯示過(guò)程中應(yīng)該采取的適宜分辨率的標(biāo)準(zhǔn)。在進(jìn)行節(jié)點(diǎn)評(píng)價(jià)時(shí),應(yīng)綜合考慮視距和地形粗糙度的影響,即當(dāng)視點(diǎn)較遠(yuǎn)時(shí),分辨率降低,而當(dāng)視點(diǎn)接近模型時(shí),模型的細(xì)節(jié)程度增加;該區(qū)域地形越平坦,采用的分辨率應(yīng)該越低,反之,則要采用較高分辨率。綜合以上兩個(gè)因素,得到最終的節(jié)點(diǎn)評(píng)價(jià)公式:
式中,l是節(jié)點(diǎn)中點(diǎn)到視點(diǎn)的距離,d是節(jié)點(diǎn)的寬度,r為節(jié)點(diǎn)被分割和不被分割時(shí)引起的誤差和,C1、C2為常量。對(duì)于四叉樹(shù)的某個(gè)節(jié)點(diǎn),如果該節(jié)點(diǎn)滿(mǎn)足f<1時(shí),則表示該節(jié)點(diǎn)必須進(jìn)一步細(xì)分,否則把該節(jié)點(diǎn)送入圖形管道進(jìn)行繪制。
1.3 裂縫消除
在運(yùn)用四叉樹(shù)結(jié)構(gòu)對(duì)地形進(jìn)行多分辨率表示時(shí),會(huì)出現(xiàn)天然的“裂縫”現(xiàn)象,給人一種不真實(shí)的感覺(jué),在地形繪制時(shí),必須避免這樣的裂縫。本文采用的是在不同分辨率四叉樹(shù)塊的接邊裂縫處增加面來(lái)填補(bǔ)的方法,即在不同分辨率的相鄰節(jié)點(diǎn)構(gòu)建三角形網(wǎng)格時(shí),對(duì)于細(xì)節(jié)層次比較低的節(jié)點(diǎn),在公共邊上增加一些三角形來(lái)消除裂縫,雖然會(huì)帶來(lái)很多的小“切面”,但在拼接處的兩個(gè)節(jié)點(diǎn)的分辨率可以相差任意大,如圖3所示。
1.4 三角形條帶的使用
在地形實(shí)時(shí)動(dòng)態(tài)顯示中,最終三角網(wǎng)格的繪制速度是關(guān)鍵因素之一,而影響基于三角形模型數(shù)據(jù)的場(chǎng)景繪制速度的是每次向圖形引擎輸送三角形量的多少。我們知道,每個(gè)三角形包含三個(gè)頂點(diǎn),如果僅僅簡(jiǎn)單地用三個(gè)頂點(diǎn)代表一個(gè)三角形的方式來(lái)傳輸三角形模型會(huì)帶來(lái)大量的數(shù)據(jù)冗余。因此,如果在繪制之前能對(duì)三角形根據(jù)鄰接關(guān)系進(jìn)行適當(dāng)排序,使得相鄰三角形之間可以共享一條邊。這樣,當(dāng)增加一個(gè)新的三角形時(shí),只需要在原來(lái)頂點(diǎn)排序的基礎(chǔ)上增加一個(gè)頂點(diǎn)即可,從而用較少的數(shù)據(jù)就可以完成同樣模型的傳輸。
圖3 裂縫消除示意圖
如圖4所示,如果不用三角形串來(lái)表示,需要18個(gè)頂點(diǎn)數(shù)據(jù)來(lái)描述由6個(gè)三角形組成的四叉樹(shù)結(jié)點(diǎn),如果使用三角形串,則只需8個(gè)頂點(diǎn)數(shù)據(jù),大大提高了模型的存儲(chǔ)和傳輸效率。
圖4 三角形條帶示意圖
實(shí)驗(yàn)采用的地形數(shù)據(jù)為鄂爾多斯盆地北部的伊金霍洛旗地區(qū)。圖5是原始數(shù)據(jù)大小為1 025*1 025的情況下,不同誤差控制參數(shù)E(E=C1*C2)所對(duì)應(yīng)的渲染效果和三角形數(shù)目(Count)。
圖5 地形簡(jiǎn)化效果對(duì)比
實(shí)驗(yàn)結(jié)果表明,應(yīng)用基于A(yíng)rcScene的地形多分辨率實(shí)時(shí)繪制算法,能快速高效地消除結(jié)點(diǎn)間由于分辨率不一致所引起的裂縫效應(yīng),在對(duì)地形繪制誤差進(jìn)行控制的情況下,可以實(shí)現(xiàn)地形場(chǎng)景從最粗分辨率到最細(xì)分辨率的任意變化;在多分辨率地表紋理的幫助下,能夠在不顯著降低地形場(chǎng)景繪制質(zhì)量的情況下達(dá)到理想的瀏覽效果,即使在普通的PC機(jī)上,也能實(shí)現(xiàn)海量地形數(shù)據(jù)的3D實(shí)時(shí)多分辨率繪制,完善了ArcScene地形三維顯示功能。
[1] 湯國(guó)安,劉學(xué)軍,閭國(guó)年.數(shù)字高程模型及地學(xué)分析的原理與方法[M].北京:科學(xué)出版社,2005
[2]李志林,朱慶.數(shù)字高程模型[M].武漢:武漢大學(xué)出版社,2001
[3] 刑偉,孫延奎,唐澤圣.與視點(diǎn)相關(guān)的多分辨率地表模型簡(jiǎn)化算法[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2004(1):29-33
[4] 唐麗玉,彭國(guó)均,舒娛琴.M ip-map技術(shù)在三維實(shí)時(shí)仿真中的應(yīng)用[J].福州大學(xué)學(xué)報(bào),2004(1):22-26
[5] 蘇虎,周美玉.一種大規(guī)模地形的實(shí)時(shí)繪制算法[J].武漢大學(xué)學(xué)報(bào),2003(3):81-85
M uti-resolution and Real-time Terrain Disp lay Based on ArcScene
ZOU Yongling1,WANG Wanping2
(1.Research Institute of Petroleum Exploration&Development,Changqing Oilfield,Xi'an 710021,China;2.Shanxi College of Communication&Technology,Xi'an 710021,China)
Thepaper developed ArcSceneby VB+AO+OpenGL.Used visual threshold cut,nod eevaluation,crack repair and triangular strip which are allbeyond quadtree model,realized vast date muti-resolution and real-time terrain display, and approved development is available by example.
3D Visualization;Muti-resolution;ArcScene;Quadtree
2008-07-21
P208
B
1672-4623(2010)02-0065-02
鄒永玲,碩士學(xué)位,助理工程師,主要研究方向?yàn)榛A(chǔ)地理數(shù)據(jù)庫(kù)的建立與三維地形可視化技術(shù)理論、方法及其應(yīng)用。