周 銳
( 中國(guó)水電建設(shè)集團(tuán) 國(guó)際工程有限公司,北京100048)
傳統(tǒng)的水利水電工程圍堰設(shè)計(jì)一般采用手工繪圖的方法。近來(lái),雖然采用了計(jì)算機(jī)輔助設(shè)計(jì)( CAD) 方法,但這種方法由于與數(shù)字地形模型間缺乏緊密聯(lián)系,不能真實(shí)反映圍堰的實(shí)際形態(tài),并且CAD 系統(tǒng)的可視化、圖形表現(xiàn)能力、交互功能也還不完善。
后來(lái)產(chǎn)生的參數(shù)化設(shè)計(jì)方法一般有變量幾何法[1]和幾何推理法[2]。這些方法雖具有較深的理論基礎(chǔ),但一般用于解決二維參數(shù)化設(shè)計(jì)問(wèn)題,在三維可視化設(shè)計(jì)方面存在不足。
為了克服以上方法的不足,本文利用GIS 強(qiáng)大的數(shù)據(jù)存儲(chǔ)、空間分析與可視化功能,在圍堰參數(shù)化基礎(chǔ)上,采用三維可視化技術(shù),實(shí)現(xiàn)了圍堰三維模型的建立與圖形顯示,設(shè)計(jì)及分析結(jié)果對(duì)指導(dǎo)工程設(shè)計(jì)具有參考價(jià)值。
參數(shù)化是指系統(tǒng)內(nèi)部定義了一個(gè)以設(shè)計(jì)關(guān)系和設(shè)計(jì)約束為核心的圖形信息模型,并以此為源泉實(shí)現(xiàn)多種圖形參數(shù)化的方式。
參數(shù)化設(shè)計(jì)就是將圖形中的一些圖素的尺寸和位置與一定的約束條件相關(guān)聯(lián),當(dāng)某一圖素的尺寸和位置發(fā)生改變后,系統(tǒng)依據(jù)它與周?chē)鷪D素之間的約束條件,自動(dòng)修改這些圖素的尺寸和位置來(lái)更新整個(gè)圖形。
參數(shù)化技術(shù)的核心是一個(gè)非線性方程的生成與求解器。
考慮一個(gè)由N個(gè)特征點(diǎn)( 在三維空間中,每個(gè)特征點(diǎn)有3個(gè)自由度) 組成的三維實(shí)體。
所有未知的N個(gè)特征點(diǎn)的坐標(biāo)組成矢量為:
所有已知的參數(shù),尺寸約束方程的值,可記為:
于是,幾何體特征點(diǎn)集就是求如下非線性約束的一個(gè)具體解:
求解非線性方程的基本方法是牛頓迭代法,即:
式中:J 為雅可比矩陣; Jij= ?Fi/?xj;j = 1,2,…,n;△X = ( △X1,△X2,…,△Xn) 是各個(gè)自由度的迭代增量; R = ( -F1( x) ,-F2( x) ,…,-Fn( x) ) ,反映迭代過(guò)程的約束方程殘余數(shù)。
經(jīng)過(guò)迭代,直到滿(mǎn)足指定的迭代收斂條件| △X| <ε,就得到滿(mǎn)足約束條件的解,從而確定所求的幾何形體,只有當(dāng)約束方程數(shù)與特征點(diǎn)組的自由度數(shù)相等時(shí),雅可比矩陣才是非奇異的,這是約束方程有唯一解的充要條件。
在當(dāng)前已有的幾何造型系統(tǒng)中,占據(jù)主要地位的是構(gòu)造實(shí)體幾何法( CSG) 和邊界表示模式( B -rep) 。任何復(fù)雜的形體都是由簡(jiǎn)單的形體( 體素) 構(gòu)成的,可用體素的各種組合來(lái)表示一復(fù)雜形體。構(gòu)造實(shí)體幾何法就是利用集合操作( 并、交、差、補(bǔ)等操作) 來(lái)組合有重疊的三維物體的一種建模方法。而所謂的邊界表示模式,則是在邊界表示中,一個(gè)形體可通過(guò)描述其邊界來(lái)確定,邊界又被分割為有限個(gè)有界子集,稱(chēng)為面或面片。描述形體的邊界就是描述這些面或面片。
對(duì)于圍堰建模,這里采用邊界表示法,即把實(shí)體看做是半空間集合的交集,圍堰上的任何一個(gè)表面都把三維空間分成兩個(gè)半空間。因此,圍堰上的任何一個(gè)表面都是兩個(gè)半空間的邊界,若半空間集合的交集是一個(gè)有界的封閉子空間,則這個(gè)子空間表示圍堰實(shí)體。
圍堰模型的構(gòu)造過(guò)程基于以下基本原則: ①模型數(shù)據(jù)的獨(dú)立性;②模型求解的獨(dú)立性; ③模型表示的圖形化。
對(duì)于某一特定型式的圍堰,是由一些相互關(guān)聯(lián)的特征部件組成的,整個(gè)建模過(guò)程可描述成這些特征部件的組裝過(guò)程,而每個(gè)部件都由一些關(guān)鍵的參數(shù)來(lái)定義,通過(guò)設(shè)計(jì)相應(yīng)的計(jì)算模塊,建立一組描述幾何約束關(guān)系的方程,調(diào)用模型求解程序,求得各部件的控制坐標(biāo)點(diǎn),可生成各特征部件的模型,然后將各部件按照其相互關(guān)系組合在一起,就得到了整個(gè)圍堰的三維幾何實(shí)體模型。
GIS 是以地理空間數(shù)據(jù)庫(kù)為基礎(chǔ),在計(jì)算機(jī)軟硬件的支持下,對(duì)空間數(shù)據(jù)進(jìn)行采集、管理、操作、分析、模擬和顯示,并采用地理模型分析方法,適時(shí)提供多種空間和動(dòng)態(tài)地理信息的計(jì)算機(jī)技術(shù)系統(tǒng)[3]。
GIS 具有強(qiáng)大的數(shù)據(jù)存儲(chǔ)與管理、空間分析、信息查詢(xún)、可視化顯示與交互操作功能。其數(shù)據(jù)庫(kù)分為空間( 矢量) 數(shù)據(jù)庫(kù)與屬性數(shù)據(jù)庫(kù)。空間數(shù)據(jù)庫(kù)存儲(chǔ)幾何形體參數(shù),屬性數(shù)據(jù)庫(kù)則存儲(chǔ)拓?fù)潢P(guān)系及相關(guān)屬性??臻g數(shù)據(jù)與屬性數(shù)據(jù)通過(guò)GIS 內(nèi)部標(biāo)識(shí)碼相對(duì)應(yīng),把空間信息與屬性信息有機(jī)地聯(lián)系起來(lái),從而能更全面準(zhǔn)確地反映空間地物的特征。
圍堰設(shè)計(jì)輸入的參數(shù)包括幾何參數(shù),約束參數(shù)及屬性參數(shù)等。
幾何參數(shù)指圍堰軸線位置、方位角、迎水側(cè)坡度、背水側(cè)坡度、堰頂長(zhǎng)度、堰頂寬度、圍堰高度,心墻( 斜墻) 及防滲墻的中心線距圍堰軸線的距離以及其頂面與堰頂?shù)母卟畹?,約束參數(shù)指河床底面約束,岸坡約束等。屬性參數(shù)包括各控制面的高程,填筑材料,結(jié)構(gòu)形式等信息[4]。
幾何參數(shù)及約束參數(shù)由GIS 的空間數(shù)據(jù)庫(kù)存儲(chǔ)。通過(guò)建立一組描述形體幾何特征且滿(mǎn)足一定約束關(guān)系的方程,再經(jīng)過(guò)模型求解,即求解這一組方程,即可構(gòu)造出圍堰的幾何模型。此外,利用GIS 的空間分析功能,在GIS 的統(tǒng)一操作平臺(tái)上,能實(shí)現(xiàn)并、交、差、補(bǔ)等布爾操作,因此,圍堰與數(shù)字地面模型間就可通過(guò)各種拓?fù)溥\(yùn)算緊密地聯(lián)系在一起,真實(shí)地反映圍堰的填筑形態(tài)及與鄰近地物的關(guān)系。三維數(shù)字地形基礎(chǔ)上的圍堰模型建立起來(lái)以后,能對(duì)其進(jìn)行各種空間分析計(jì)算[5]。
屬性參數(shù)由GIS 的屬性數(shù)據(jù)庫(kù)管理,并與空間數(shù)據(jù)庫(kù)建立聯(lián)系,圍堰形體模型疊加其屬性信息,構(gòu)成了完整的圍堰模型,形體模型生成的同時(shí),其屬性數(shù)據(jù)庫(kù)也相應(yīng)構(gòu)造完成。這樣,用戶(hù)就可方便地查詢(xún)?nèi)我粚?shí)體部位的相關(guān)特性,例如堆石區(qū)、黏土區(qū)等各區(qū)的填筑材料,各控制點(diǎn)高程,防滲墻、心墻( 斜墻) 、護(hù)坡等的上下游坡度、厚度等。同時(shí),各專(zhuān)題圖形都賦以屬性,所有屬性信息存放在與圖形對(duì)應(yīng)的數(shù)據(jù)庫(kù)中,便于信息查詢(xún)和模型修改。
根據(jù)上述圍堰建模的基本思路,設(shè)計(jì)出交互式圍堰可視化輔助設(shè)計(jì)流程圖見(jiàn)圖1。
圖1 交互式圍堰可視化輔助設(shè)計(jì)流程圖
4.2.1 三維數(shù)字地形模型的生成( DTM)
DTM 由三維地形等高線轉(zhuǎn)化而來(lái),經(jīng)過(guò)GIS 內(nèi)部的數(shù)據(jù)格式轉(zhuǎn)化,生成一種能逼近真實(shí)地形的三角形不規(guī)則網(wǎng)絡(luò)( Triangular—Irregular—Net,TIN) 。從DTM 上,能獲得任意位置的高程、坡度、坡向等信息,為圍堰模型的構(gòu)造提供了基礎(chǔ)三維地理背景。
4.2.2 圍堰模型的構(gòu)造過(guò)程
1) 模型分解。基于模型分解的思想,將圍堰分解為一系列相對(duì)獨(dú)立的特征部件,采用三維空間幾何建模技術(shù),分別對(duì)其進(jìn)行圖形建模,然后將各部件組合起來(lái),就得到整個(gè)模型。
2) 模型求解。在三維數(shù)字地形模型的河道上,首先點(diǎn)擊確定圍堰位置,以經(jīng)過(guò)該點(diǎn)且與水流垂直方向的直線作為圍堰軸線,由輸入的圍堰頂寬,確定出圍堰頂面,再根據(jù)上下游坡度,得到上下游坡面。加上河道兩岸坡面及河床底面,形成了一個(gè)由各面構(gòu)成的封閉的實(shí)體。求各面的交點(diǎn)的問(wèn)題,轉(zhuǎn)化為求解一組滿(mǎn)足特定約束關(guān)系的非線性方程的過(guò)程。求出各交點(diǎn)坐標(biāo)后,按照各點(diǎn)的幾何順序及相互間的拓?fù)潢P(guān)系,構(gòu)造出與地形緊密連接的圍堰模型。
3) 模型組合?;谏鲜瞿P颓蠼獾玫降膰吒魈卣鞑考哪P停捎皿w素拼合的思想構(gòu)造出整個(gè)復(fù)雜的圍堰實(shí)體模型。體素拼合是把實(shí)體看成是半空間集合的交集的單元分解,實(shí)體經(jīng)分解后得到的是一系列基本體素,通過(guò)對(duì)基本體素進(jìn)行有序的交、并、差、補(bǔ)正則運(yùn)算的拼合過(guò)程構(gòu)造原來(lái)的實(shí)體的方法。
體素拼合模型的拼合過(guò)程是一個(gè)二叉樹(shù),以基本體素做為葉節(jié)點(diǎn),中間節(jié)點(diǎn)的體素拼合運(yùn)算構(gòu)造中間實(shí)體,根節(jié)點(diǎn)的體素拼合運(yùn)算構(gòu)造出來(lái)的是目標(biāo)實(shí)體。
4) 模型操作( 動(dòng)態(tài)顯示及可視化信息查詢(xún)) 。構(gòu)造出的圍堰三維幾何模型,經(jīng)過(guò)投影變換顯示到計(jì)算機(jī)屏幕二維平面上,再經(jīng)過(guò)消隱、反走樣、紋理貼圖等操作以及光線、色彩、材質(zhì)等的自動(dòng)選取,生成能真實(shí)反映圍堰形態(tài)以及填筑材料的三維可視化圍堰模型。
在3D 場(chǎng)景中,能對(duì)模型進(jìn)行進(jìn)行繞X、Y、Z 這3個(gè)軸的任意旋轉(zhuǎn)、縮放、改變視點(diǎn)的位置和觀察方向,并可按需要靈活顯示專(zhuān)題圖層。
5) 模型修改。用戶(hù)在操作模型以及獲取模型形體或?qū)傩苑矫娴男畔r(shí),可能發(fā)現(xiàn)所構(gòu)造的模型與原設(shè)計(jì)方案有偏差,這時(shí)用戶(hù)可能會(huì)對(duì)系統(tǒng)發(fā)出修改模型的請(qǐng)求,系統(tǒng)響應(yīng)這一請(qǐng)求,及時(shí)地對(duì)模型有關(guān)參數(shù)( 尺寸參數(shù)、約束參數(shù)) 進(jìn)行調(diào)整( 如果屬性信息有變化,屬性數(shù)據(jù)庫(kù)中的內(nèi)容也應(yīng)相應(yīng)地更新) ,然后重新建立一組滿(mǎn)足新約束條件的方程組,求解此方程組,得到改動(dòng)后的各控制點(diǎn)坐標(biāo),最后根據(jù)新坐標(biāo)點(diǎn)重構(gòu)模型。
6) 模型分析。通過(guò)上面一系列模型分解、求解、組合、修改、重構(gòu)的模型構(gòu)造過(guò)程,建立起了數(shù)字地形模型基礎(chǔ)上的圍堰三維模型。利用GIS 的空間分析功能,可對(duì)此模型進(jìn)行各種分析,包括填筑方量計(jì)算,沿任意地形面的圍堰縱橫剖面繪制等。
本系統(tǒng)開(kāi)發(fā)基于GIS 平臺(tái),所有數(shù)據(jù)存儲(chǔ)在GIS的數(shù)據(jù)庫(kù)中,圖形顯示在GIS 的三維場(chǎng)景中。本系統(tǒng)的一些分析計(jì)算程序及應(yīng)用模塊用VC + +,VB等語(yǔ)言開(kāi)發(fā),通過(guò)Windows 的DDE 技術(shù)和調(diào)用動(dòng)態(tài)連接庫(kù),又通過(guò)不同平臺(tái)間的數(shù)據(jù)文件擴(kuò)展接口,使應(yīng)用模型與GIS 系統(tǒng)之間實(shí)現(xiàn)彼此數(shù)據(jù)的交換和共享[6]。
系統(tǒng)由參數(shù)輸入模塊、模型生成模塊、模型修改模塊、統(tǒng)計(jì)分析模塊、結(jié)果輸出模塊等子系統(tǒng)構(gòu)成,包括模型庫(kù)、圖形庫(kù)、屬性庫(kù)和知識(shí)庫(kù)等數(shù)據(jù)庫(kù)。其中模型庫(kù)存貯各特征部件的模型,圖形庫(kù)存貯三維實(shí)體模型的圖形,屬性庫(kù)存貯屬性信息,知識(shí)庫(kù)存貯圍堰設(shè)計(jì)規(guī)范及類(lèi)似工程設(shè)計(jì)數(shù)據(jù),各數(shù)據(jù)庫(kù)相互連接,從而形成一個(gè)完整的系統(tǒng)。系統(tǒng)總體結(jié)構(gòu)框圖見(jiàn)圖2。
圖2 圍堰三維可視化設(shè)計(jì)系統(tǒng)總體框架示意圖
某工程上游圍堰采用碎石土斜心墻土石圍堰,堰頂高程為436.0 m,最大堰高78.0 m,堰頂長(zhǎng)304.0 m,頂寬12.0 m,圍堰上游面坡比為1∶2.25,下游面坡比為1∶1.75; 堰基采用塑性混凝土防滲墻防滲,防滲墻厚度為1.0 m,最大深度為45.0 m。
利用本文開(kāi)發(fā)的圍堰可視化設(shè)計(jì)系統(tǒng),輸入相關(guān)的參數(shù),參數(shù)輸入界面見(jiàn)圖3,在三維數(shù)字地形模型基礎(chǔ)上,所生成的圍堰三維可視化模型見(jiàn)圖4,圍堰橫剖面圖見(jiàn)圖5。利用統(tǒng)計(jì)分析模塊計(jì)算所得圍堰填筑方量見(jiàn)圖6[7]。
圖3 圍堰參數(shù)輸入界面圖
圖4 圍堰三維可視化模型圖
圖5 圍堰橫剖面圖
圖6 填筑方量統(tǒng)計(jì)結(jié)果示意圖
圍堰設(shè)計(jì)是水利工程施工組織設(shè)計(jì)中一項(xiàng)非常重要的工作,關(guān)系到施工導(dǎo)流的成敗和整個(gè)工程的進(jìn)度。本文摒棄了傳統(tǒng)圍堰設(shè)計(jì)方法的不足之處,采用GIS 平臺(tái),實(shí)現(xiàn)了數(shù)字地形基礎(chǔ)上的圍堰三維可視化模型的構(gòu)造。系統(tǒng)豐富的圖形界面為用戶(hù)提供了一個(gè)可視化的操作環(huán)境,有助于對(duì)模型的整體認(rèn)識(shí)和控制。本系統(tǒng)的成功開(kāi)發(fā)為圍堰設(shè)計(jì)提供了一個(gè)有利的輔助設(shè)計(jì)手段,可大大提高設(shè)計(jì)質(zhì)量。
[1]李德仁. 地理信息系統(tǒng)導(dǎo)論[M]. 北京: 測(cè)繪出版社,1993.
[2]Hanan Samet.Applications of Spatial Data Structures: Computer Graphics,Image Processing,and GIS[M].Addison -Wesley Publishing Company,1990.
[3]Donald Hearn,M.Pauline Baker. 計(jì)算機(jī)圖形學(xué)[M]. 北京:電子工業(yè)出版社,1998.
[4]儲(chǔ)備. 基于參數(shù)化的立交建模算法及可視化技術(shù)[J]. 西安公路交通大學(xué)學(xué)報(bào),1998,18(04) :45 -50.
[5]金允龍. 參數(shù)化技術(shù)在船舶結(jié)構(gòu)CAD 中的應(yīng)用研究[J].計(jì)算機(jī)輔助工程,1997,(01) :31 -35.
[6]肖麗雯,何援軍,秦鵬飛. 參數(shù)化圖庫(kù)建庫(kù)工具的開(kāi)發(fā)及應(yīng)用[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2001,13(05) :444 -448.
[7]王文海. 三維幾何造型的理論與技術(shù)[J]. 計(jì)算機(jī)輔助工程,1994,(02) :21 -30.