張志華 ,韓 進 ,王菁菁
(1.蘭州交通大學 數理與軟件工程學院,甘肅 蘭州730070;2.遼河油田公司 金馬油田開發公司,遼寧 盤錦124010)
數字石化是指以計算機信息技術為手段全面實現石化設備、石化設施和企業的數字化、網絡化、智能化和可視化[1-3]。石化企業設備、設施以及廠區的三維可視化以及相應的管理信息系統都是數字石化的一部分內容。現如今,三維建模已經在很多領域得到了發展和應用,如地礦部門[4-6]、石油存儲地層建模[7-9]、數字城市[10-11]等,卻鮮有石化方面的三維模擬研究見諸公眾。
大型儲油罐是石化企業最重要的設備之一,它具有很大的容積,有著廣泛的應用。一些大的石化企業都有專門的場地存放儲油罐,其數量往往達到幾百甚至上千個,這為石化企業的管理帶來了困難。為了能夠在短時間內對這些儲油罐進行動態管理(例如儲油罐的儲油量、消防等),研究儲油罐的三維模擬就顯得十分重要和有意義,這也為“數字石化”的發展提供了理論基礎。本文將以最常見的儲油罐——圓柱形立罐為例,主要針對其三維數據模型、三維數據結構及建模方法進行研究,并以VC++為程序設計語言,以OpenGL為三維圖形顯示工具,對所研究的數據模型、數據結構及構模方法進行驗證。
儲油罐是儲存油品的容器,它是石油庫的主要設備。儲油罐按材質可分金屬油罐和非金屬油罐;按所處位置可分地下油罐、半地下油罐和地上油罐;按安裝形式可分立式、臥式;按形狀可分圓柱形、方箱形和球形[12]。由于立罐具有代表性,本文將以圓柱形的立罐為研究對象,進行三維模型的構建。
三維空間構模方法研究是目前3DGIS領域研究的熱點問題。許多專家和學者在此領域都做了有益的探索,總共提出了20多種空間構模方法,可分為基于面模型、基于體模型和基于混合模型的三大類構模體系[4,13-14]。由于儲油罐是一種空間實體,具有規則的邊界,而內部又是中空的實體,所以基于體元模型的構模方法不適用于構建三維儲油罐。本文利用面向對象分析的方法將立罐三維建模的基本元素抽象為點、線、面三大類,如圖1所示。

點類主要包括儲油罐測量點、離散點等,線類有特征連接線,面類主要有基礎面元、儲油罐的底面、側面、頂面等。這樣儲油罐的體模型就可以由這些基本構模元素通過一定的構模方法構建。這里需要強調的是,特征連接線是由用戶指定的用于連接特征點的線段。在三維構模過程中,體的生成主要由特征連接線構成?;A面元主要由特征連接線構成,通常有三角形面元和四邊形面元兩種類型,在三維空間表面模型表達上,三角形面元要優于四邊形面元[15]。這種通過面、邊、點來定義實體的位置和形狀的數據模型就是邊界表示模型[4](B_rep),圖1表達了立罐的三維邊界表示模型。
根據上述的三維數據模型,用C++語言描述立罐的三維數據結構如下:


立罐的三維數據結構直接描述了構成立罐模型的基礎元素,有利于三維立罐程序的設計及三維可視化操作。
儲油罐的三維模型構建總的思路是化復雜為簡單,即首先將罐體進行剖分;然后對剖分后的各個部分分別建模;最后再將這些剖分的模型集成起來。以立罐為例,先將立罐剖分成底面、側面、頂面、斜梯等部分;再對剖分后的底面、側面、頂面等分別建模,此時,已經將復雜的立罐體模型簡化為面模型;然后把這些面模型集成在一起構成體模型。
根據上述的邊界表示數據模型,結合線框構模原理對立罐三維模型進行構建。其構模步驟如下:
(1)把立罐剖分成底面、側面、頂面和斜梯等。
(2)首先,對底面進行模型構建。由于底面是一圓面,采用一正多邊形對其進行逼近,本實例中,以正四十邊形來模擬底面。假定底面圓心點的三維坐標為(x_center,y_center,z_center), 半 徑為 r,利用式(1)可以求出正四十邊形所有頂點的三維坐標,再對底面進行三角化,即每兩個相鄰的頂點與圓心構成一個三角形,如圖2所示,A、B為正四十邊形上的兩個頂點,這兩個頂點與圓心O就可以構成三角形面ABO(基礎面元),整個底面就可以由這樣40個三角形面片構成。


其次,對罐體側面進行建模。側面的底部邊界就是底面的周邊,其上部邊界也是一圓周,同樣可以采用式(1)求其上部邊界的各個頂點的x坐標和y坐標,z坐標為 z_center+h,其中 h為罐體側面的高度。圖3為側面的三角化過程,由基礎面元A1B1B2、A1B2A2等就可將整個側面模擬出來。

最后是對頂面的構建。頂面是一空間復雜的曲面,本文采用正弦函數法模擬頂面,已知頂部的高度為 hup,用5個同心圓作為頂部曲面的骨架(同心圓越多,模擬精度越高),同心圓采用正四十邊形逼近,每個骨架圓上頂點的 x、y和 z坐標利用式(2)即可求出,ri表示第 i個同心圓的半徑(ri=kr/5,k=1,2…5)。頂點的高程坐標采用正弦函數得出,在[0,0.5π]內,正弦函數曲線是一弧形曲線,通過hup(正弦函數曲線的振幅)的大小可以控制曲線的空間形態,每條正弦函數曲線由6個空間離散點擬合,利用這些正弦函數曲線就可以模擬出較為復雜的空間曲面。圖4中每一條從曲面邊界點到曲面中心點的曲線都是用正弦函數法逼近的,然后對這些空間骨架圓上的頂點進行三角化,從而達到對頂部曲面的模擬。

圖4 頂部曲面的三角化
(3)對油罐的一些附著物(斜梯等)進行模擬,并將這些分別建模的部分集成起來,就構成了三維空間實體。

其中,i=0,1,…,5;j=0,1,…,39。
針對上述提出的儲油罐的三維數據模型、數據結構及構模方法,在Windows XP環境下,以VC++6.0為程序設計語言,以OpenGL三維圖形函數包為可視化工具[16]進行程序設計,圖5為立罐三維模型構建的參數設置對話框,所構模型如圖6所示。


通過對立罐的數據模型、數據結構及建模方法的研究,得出以下認識:(1)對儲油罐進行分類后,以立罐作為典型實例進行建模研究,給出了其空間構模的基本元素,并對這些基本元素的數據結構進行了定義;(2)提出的先剖分后建模的思路是可行的。對剖分后的各個部分分別進行建模和詳細探討,并對復雜的頂部曲面采用正弦函數法進行模擬,達到了良好的效果;(3)結合具體的建模方法及步驟,經過程序設計進行實驗模擬。實驗證實本文所提出的數據模型、數據結構以及建模方法是可行的。
[1]王權.解析石油行業信息化[J].數字化工,2004(12):5-7.
[2]惠寧,王魁生.油氣田技術設備引進管理信息系統綜述[J].網絡與信息,2008(8):78.
[3]HENDERSON M.Review of Marathon’s digital oilfield proof of concept[R].Global Energy forum.2008.
[4]吳立新,史文中.地理信息系統原理與算法[M].北京:科學出版社,2003.
[5]Zhang Zhihua,Hou Enke,Zhao Zhou,et al.An improved symmetrical modeling method on 3D tunnel modeling[C].2009 International Conference on Computer modeling and simulation.Macau,IEEE CS,2009:251-256.
[6]侯恩科,吳立新.面向地質建模的3D體元拓撲數據模型研究[J].武漢大學學報信息科學版,2002,27(5):467-472.
[7]朱廣社.三維地質建模及數值模擬技術在油藏開發中的應用[J].地質與資源,2005,14(1):67-70.
[8]吳永彬,張義堂,劉雙雙,等.基于PETREL的油藏三維可視化地質建模技術[J].鉆采工藝,2007,30(5):65-66.
[9]馬春生,周瑜,趙磊,等.三維可視化地質建模和油藏數模一體化技術在剩余油描述與挖潛中的研究與應用[J].內蒙古石油化工,2001,27(2):1-31.
[10]占嵩,陳輝,商蕾.城市道路交通可視化建模及仿真研究[J].交通與計算機,2008,26(6):43-46.
[11]朱慶,李淵.道路網絡模型研究綜述[J].武漢大學學報信息科學版,2007,32(6):471-476.
[12]百度百科.儲油罐[EB/OL].[2011-1-24].http://baike.baidu.com/view/3118978.htm.
[13]SCIANNA A,AMMOSCATO A.3DGIS data model using open source software[A].Core Spatial Databases-Updating,Maintence and Services-from Theory to Practice[C].ISPRS,2010,38:120-125.
[14]FRISO P,PETER V O,BARIS M K.A tetrahedronized irregular network based DBMS approach for 3D topographic data modeling[J].Progress in Spatial Data Handling,2006(10):581-598.
[15]侯恩科,張志華,鄧念東,等.OpenGL環境下兩種巷道三維建模方法的比較[J].礦業研究與開發,2009,29(5):59-62.
[16]RICHARD S W,BENJAMIN L.OpenGL超級寶典[M].徐波,譯.北京:人民郵電出版社,2004.