顏玫 ,明鏡
(1.重慶市勘測院,重慶 400020; 2.重慶市巖土工程技術(shù)研究中心,重慶 400020;3.重慶數(shù)字城市科技有限公司,重慶 400020; 4.重慶市地理信息云服務(wù)企業(yè)工程技術(shù)研究中心,重慶 400020)
GIS 的不斷發(fā)展使其在空間信息各相關(guān)研究領(lǐng)域得到了廣泛的應(yīng)用。GIS 引入地質(zhì)研究中,極大地推動了計算機技術(shù)和空間信息技術(shù)在地質(zhì)中的應(yīng)用,客觀上帶動了地質(zhì)學(xué)信息化的發(fā)展,使得三維地質(zhì)建模成為當(dāng)前的一個研究熱點[1-5]。
三維地質(zhì)建模是根據(jù)鉆孔、剖面、地質(zhì)圖等各種原始數(shù)據(jù)建立地下地質(zhì)體數(shù)字化模型的過程,旨在揭示其地質(zhì)構(gòu)造形態(tài)和構(gòu)造關(guān)系、反映地質(zhì)體內(nèi)部屬性變化規(guī)律,廣泛地應(yīng)用于城市地質(zhì)、巖土工程、石油開發(fā)等多個領(lǐng)域。三維地質(zhì)建模的結(jié)果,以真三維的形式為用戶展示了虛擬的現(xiàn)實地質(zhì)環(huán)境,加深了用戶對地質(zhì)情況的理解?;谀P偷臄?shù)值模擬和空間分析結(jié)果,能夠更好地輔助用戶進行科學(xué)決策,以規(guī)避可能的風(fēng)險。
現(xiàn)實中,各生產(chǎn)和研究單位不僅需要能夠反映實際地質(zhì)規(guī)律的三維地質(zhì)模型,對于物美價廉的三維地質(zhì)建模軟件的需求亦愈發(fā)強烈。
COM(Component Object Model)即組件對象模型,是一種跨應(yīng)用和語言共享二進制代碼的方法[6],采用組件式技術(shù)進行GIS 研發(fā)已成為當(dāng)前主流趨勢[7~9]?;贑OM 技術(shù)開發(fā)三維地質(zhì)建模軟件,將系統(tǒng)劃分成為相對獨立的功能模塊,能夠極大地方便功能的相互調(diào)用、系統(tǒng)的并行開發(fā)、跨語言的系統(tǒng)集成,使得三維地質(zhì)建模軟件系統(tǒng)的設(shè)計與開發(fā)效率達到最優(yōu)。
本文設(shè)計一種基于COM 技術(shù)的組件式三維地質(zhì)建模系統(tǒng)的設(shè)計方案,詳述了研發(fā)實踐中三維地質(zhì)建模系統(tǒng)的結(jié)構(gòu)與功能,并利用三維地質(zhì)建模實例對已研發(fā)軟件系統(tǒng)的功能與運行效率進行了測試。
三維地質(zhì)建模系統(tǒng)是一個專業(yè)性較強的軟件系統(tǒng),不僅需要對建模原始數(shù)據(jù)進行組織和管理,還需要結(jié)合地質(zhì)學(xué)、數(shù)學(xué)、計算機圖形學(xué)等知識進行各種建模工具和功能的開發(fā)以及建模流程的組織,因此該系統(tǒng)具有一定的綜合性,需在系統(tǒng)設(shè)計基礎(chǔ)上有效組織系統(tǒng)功能模塊,指導(dǎo)原型系統(tǒng)開發(fā)。
系統(tǒng)的主要模塊及邏輯層次設(shè)計如圖1所示。
圖1 系統(tǒng)模塊
多種來源多種格式的建模原始數(shù)據(jù),需經(jīng)過數(shù)據(jù)轉(zhuǎn)換導(dǎo)入模塊進入到系統(tǒng)中。通過數(shù)據(jù)轉(zhuǎn)換接口,將多源數(shù)據(jù)整合轉(zhuǎn)化為系統(tǒng)中的點、線、不規(guī)則三角網(wǎng)(TIN)面、鉆孔、含拓?fù)淦拭娴葦?shù)據(jù)對象。
在三維地質(zhì)建模系統(tǒng)中,需要提供對二維平面圖和二維剖面圖的生成及管理功能,以此提供對原始建模數(shù)據(jù)的進一步加工功能和對三維建模的數(shù)據(jù)支持。二維圖件生成及管理模塊主要包括對二維地質(zhì)圖、等值線圖和二維剖面圖的生成、編輯等功能,也包括二維數(shù)據(jù)向三維的轉(zhuǎn)化導(dǎo)出等功能。
進入系統(tǒng)內(nèi)的各種類型數(shù)據(jù),數(shù)據(jù)組織管理模塊將對它們進行有效的組織管理,以方便系統(tǒng)其他模塊對數(shù)據(jù)的訪問和存儲。本系統(tǒng)數(shù)據(jù)組織管理將按照“數(shù)據(jù)源→數(shù)據(jù)集→數(shù)據(jù)對象”的邏輯層級進行管理。
三維地質(zhì)建模模塊是該系統(tǒng)的重要模塊,主要專注于從系統(tǒng)中各種低維數(shù)據(jù)對象(點、線、TIN 面、鉆孔、含拓?fù)淦拭娴?生成反映地質(zhì)實際的三維模型。本系統(tǒng)建??傮w框架設(shè)計中整合集成了三大類地質(zhì)建模方法:基于鉆孔數(shù)據(jù)的三維地質(zhì)建模[10]、基于網(wǎng)狀含拓?fù)淦拭娴娜S地質(zhì)建模[11]以及基于多源數(shù)據(jù)的一般建模方法。因此,該模塊又向下分為鉆孔建模子模塊、剖面建模子模塊、多源數(shù)據(jù)一般建模子模塊、工程體建模子模塊、多模型融合子模塊等。其中,鉆孔建模子模塊實現(xiàn)了基于鉆孔的三維地質(zhì)模型快速構(gòu)建方法[10];剖面建模子模塊能夠利用相互交叉形成網(wǎng)狀的含拓?fù)淦拭孢M行三維地質(zhì)模型的構(gòu)建[11];多源數(shù)據(jù)一般建模子模塊利用鉆孔、剖面、地質(zhì)圖、等值線圖等多種來源的地質(zhì)數(shù)據(jù),采用人機交互的方式構(gòu)建地質(zhì)界面及三維地質(zhì)體;工程體建模子模塊用于構(gòu)建樁基、隧道、基坑等較為規(guī)則的工程體。利用多種方法構(gòu)建的三維地質(zhì)模型,還需利用多模型融合子模塊,基于體布爾操作等方式,實現(xiàn)多模型間的融合,保證模型之間沒有空隙和交疊。
可視化是對模型的三維直觀展示,以圖形的方式來反饋建模結(jié)果。該模塊基于OpenGL 實現(xiàn)各種可視化渲染和三維交互功能。
模型空間分析模塊是在三維模型的基礎(chǔ)上,對模型進行幾何或可視化切割以分析模型內(nèi)部結(jié)構(gòu),主要包括剖面切割、隧道開挖、虛擬鉆探、體積量算等分析功能。
三維地質(zhì)模型還可以通過體元剖分和三維空間屬性插值轉(zhuǎn)化為三維地質(zhì)屬性模型,以方便對地質(zhì)變量的空間變化做深入研究。通過模型轉(zhuǎn)換導(dǎo)出,還可將地質(zhì)模型轉(zhuǎn)化為有限元網(wǎng)格,為工程的有限元分析和數(shù)值模擬提供數(shù)據(jù)支持。導(dǎo)出的有限元網(wǎng)格為FLAC3D 文本文件格式,不僅可以導(dǎo)入到FLAC3D 軟件中,還可利用數(shù)據(jù)格式轉(zhuǎn)換工具,方便地轉(zhuǎn)換為ANSYS、MIDAS 等常用有限元計算軟件能夠直接利用的數(shù)據(jù)格式。
以GeoBase 地質(zhì)信息系統(tǒng)平臺為基礎(chǔ),進行若干與三維地質(zhì)建模相關(guān)功能插件的二次開發(fā),建立了一個專業(yè)的三維地質(zhì)建模原型系統(tǒng)V3DModel(如圖2所示),系統(tǒng)體系結(jié)構(gòu)圖如圖3所示。
圖2 V3DModel 系統(tǒng)界面
圖3 系統(tǒng)體系結(jié)構(gòu)圖
GeoBase 地質(zhì)信息系統(tǒng)平臺是一個基于COM 技術(shù)開發(fā)的基礎(chǔ)平臺,它基于PC 機運行于Microsoft Windows 操作系統(tǒng)上,其中實現(xiàn)了最基本的插件管理、數(shù)據(jù)組織與管理、二維和三維視圖管理等功能。
GeoBase 是具有自主知識產(chǎn)權(quán)的基礎(chǔ)平臺?;贕eoBase,可通過組件式開發(fā)有效整合各模塊功能,集成多種針對不同實際地質(zhì)情況研發(fā)的建模方法,切實降低開發(fā)難度、提高研發(fā)效率,同時保證系統(tǒng)具有良好的擴展性,故選取其作為三維地質(zhì)建模開發(fā)的基礎(chǔ)平臺。
GeoBase 平臺分為兩個功能層次,其底層包含基礎(chǔ)平臺和基礎(chǔ)組件,上層包含3 個系統(tǒng)插件。
其中,底層的基礎(chǔ)平臺是整個系統(tǒng)的運行時環(huán)境,實現(xiàn)了系統(tǒng)的主界面,暴露了工具欄、菜單、按鈕項、工具視圖、主視圖的擴展點,使其他插件可以通過二次開發(fā)豐富界面功能;系統(tǒng)主界面基于MFC(Microsoft 基礎(chǔ)類庫)實現(xiàn),由主窗口、工具欄、工具視圖和主視圖組成。基礎(chǔ)平臺還實現(xiàn)了插件的管理功能,以管理、執(zhí)行系統(tǒng)的所有插件(功能模塊),包括經(jīng)過注冊新加入到系統(tǒng)中的插件。底層的基礎(chǔ)組件實現(xiàn)了基本的地質(zhì)數(shù)據(jù)模型、空間數(shù)據(jù)庫存取、三維場景和二維地圖等基本功能,是構(gòu)造上層應(yīng)用的基礎(chǔ)工作。
在基礎(chǔ)平臺和基礎(chǔ)組件之上,實現(xiàn)了平臺的基礎(chǔ)應(yīng)用功能模塊,包括工作空間、三維場景視圖和二維地圖視圖3個系統(tǒng)插件。其中,工作空間插件是應(yīng)用系統(tǒng)組織管理數(shù)據(jù)的頂層結(jié)構(gòu),實現(xiàn)了空間數(shù)據(jù)和顯示數(shù)據(jù)的組織管理;空間數(shù)據(jù)組織管理方面,工作空間插件按照“數(shù)據(jù)源→數(shù)據(jù)集→數(shù)據(jù)對象”這一從上到下的層次關(guān)系實現(xiàn)了對所有空間數(shù)據(jù)的有效管理,方便了系統(tǒng)其他插件對空間數(shù)據(jù)的讀取和存放;顯示數(shù)據(jù)組織管理方面,工作空間插件對三維場景和二維地圖的各個圖層以及圖層中所引用的空間數(shù)據(jù)進行了組織和管理。三維場景視圖和二維地圖視圖插件均為擴展界面框架主視圖的插件,分別用于顯示三維場景和二維地圖。
為了實現(xiàn)V3DModel 三維地質(zhì)建模系統(tǒng)的各個功能模塊,在GeoBase 平臺上開發(fā)了若干應(yīng)用插件,主要包括數(shù)據(jù)轉(zhuǎn)換導(dǎo)入、二維圖件生成及管理、三維場景交互、三維地質(zhì)建模、模型空間分析及模型轉(zhuǎn)換導(dǎo)出插件。
三維地質(zhì)建模插件組主要包括鉆孔解譯及自動建模、平行剖面建模、網(wǎng)狀剖面建模、空間對象轉(zhuǎn)化創(chuàng)建、添加約束及離散光滑插值(DSI)、TIN 面編輯等插件,包含了絕大部分三維地質(zhì)建模功能。其中,空間對象轉(zhuǎn)化創(chuàng)建、添加約束及DSI 插值、TIN 面編輯這3 個插件共同實現(xiàn)了基于多源數(shù)據(jù)的一般建模方法。由于建模過程中經(jīng)常需要用到三維場景中的交互,三維地質(zhì)建模插件組依賴于三維場景交互插件。
系統(tǒng)已有主要功能如圖4所示。
開展實際建模時,用于建模的原始數(shù)據(jù)類型多樣,其刻畫的地質(zhì)情況的復(fù)雜程度是不同的。同時,三維地質(zhì)建模系統(tǒng)是一個專業(yè)性較強的軟件系統(tǒng),應(yīng)有效結(jié)合多種建模方法。建模時,需要根據(jù)原始數(shù)據(jù)的實際情況,選擇合適的建模方法,才可能最快速地建立相應(yīng)復(fù)雜程度的地質(zhì)模型,以求最大限度減少用戶交互,提高建模效率。
本文系統(tǒng)通過組件式開發(fā),有效結(jié)合了鉆孔建模、平行剖面建模、網(wǎng)狀剖面建模等自動化程度較高的建模方法,可快速實現(xiàn)模型建立。同時,若待建模型的地質(zhì)情況特別復(fù)雜,該系統(tǒng)還通過“空間對象轉(zhuǎn)化創(chuàng)建”、“約束及DSI 插值”、“TIN 編輯”等插件組,實現(xiàn)了基于多源數(shù)據(jù)通用建模方法。該方法以三維空間曲面為核心,圍繞TIN 面的創(chuàng)建、編輯、約束、插值、形變、交切、拼合,能夠以人機交互的方式建立復(fù)雜的三維地質(zhì)模型。因此,該系統(tǒng)兼具自動化及交互式建模方法,既能保證簡單模型的快速建立,又能實現(xiàn)復(fù)雜模型的交互式創(chuàng)建,系統(tǒng)具有較高的實用性。
未來研究形成的新建模方法和新功能,可通過開發(fā)新組件的方式,方便快捷地添加到現(xiàn)有系統(tǒng)中,實現(xiàn)三維地質(zhì)建模方法的深入與擴展。
V3DModel 在北京等城市地質(zhì)調(diào)查項目中的多個三維地質(zhì)模型構(gòu)建課題中得到了實際應(yīng)用。系統(tǒng)利用“基于含拓?fù)渚W(wǎng)狀剖面的三維地質(zhì)建模方法”,成功地建立起了北京市的工程層、新生界和基巖地質(zhì)這三大類三維地質(zhì)模型[10]。圖5(a)展示了模型的全貌,頂面的第四系地層模型上貼有該地區(qū)的真實遙感圖像。為了更好地展示模型的內(nèi)部結(jié)構(gòu),切割模型形成的柵欄圖與斷層疊加顯示見圖5(b)。圖5(c)和圖5(d)是對模型進行隧道虛擬開挖的效果。通過沿虛擬隧道可視化漫游的方式,用戶將更好地觀察模型的內(nèi)部情況。主城區(qū)基巖地質(zhì)結(jié)構(gòu)模型的成功建立,證明該系統(tǒng)可以針對含有相交復(fù)雜斷層的區(qū)域進行三維地質(zhì)模型構(gòu)建。
實際應(yīng)用實驗的結(jié)果表明,該系統(tǒng)有效地結(jié)合了各種建模方法,兼具了快捷簡單建模和交互式復(fù)雜建模,同時,系統(tǒng)能夠利用多種來源的原始數(shù)據(jù),能夠針對復(fù)雜地質(zhì)情況進行建模,因此,該系統(tǒng)具有較強建模能力和很高實用價值,本文提出的系統(tǒng)設(shè)計與開發(fā)策略是正確可行的。
圖4 系統(tǒng)主要功能
圖5 北京主城區(qū)基巖地質(zhì)結(jié)構(gòu)模型
本文基于COM 技術(shù)進行了三維地質(zhì)建模系統(tǒng)設(shè)計與研發(fā),在系統(tǒng)設(shè)計的基礎(chǔ)上,不僅討論了系統(tǒng)模塊的劃分以及模塊間的邏輯層次,還闡述了系統(tǒng)體系結(jié)構(gòu),并簡要介紹了系統(tǒng)的主要功能。若干三維地質(zhì)建模實例的建立,證明了V3DModel 三維地質(zhì)建模系統(tǒng)的成功,同時也證明了利用COM 技術(shù)完成如此專業(yè)性較強軟件系統(tǒng)的功能模塊設(shè)計與高效并行開發(fā)是合理且明智的。采用組件式的系統(tǒng)開發(fā)策略,降低了系統(tǒng)模塊之間的耦合度,方便了系統(tǒng)的集成和功能擴展,提高了系統(tǒng)的開發(fā)效率,降低了系統(tǒng)的研發(fā)成本,對于三維地質(zhì)建模方法的理論研究以及三維地質(zhì)建模軟件系統(tǒng)的研發(fā)也具有重要的積極意義,必將極大地促進三維地質(zhì)建模的研究。
[1]Lemon A M,Jones N L.Building Solid Models from Boreholes and User-Defined Cross-Sections[J].Computers &Geosciences,2003,29(5):547~555.
[2]Wu L X.Topological Relations Embodied in a Generalized Tri-Prism(GTP)Model for a 3D Geoscience Modeling System[J].Computers & Geosciences,2004,30(4):405~418.
[3]Wu Q,Xu H,Zou X K.An Effective Method for 3D Geological Modeling with Multi-Source Data Integration[J].Computers & Geosciences,2005,31(1):35~43.
[4]潘懋,方裕,屈紅剛.三維地質(zhì)建模若干基本問題探討[J].地理與地理信息科學(xué),2007,23(3):1~5.
[5]紀(jì)曉東,王雙龍,張峰.深圳市地質(zhì)地理信息系統(tǒng)設(shè)計模型的設(shè)計與實現(xiàn)[J].測繪通報,2010,(01):59~63.
[6]潘愛民.COM 原理與應(yīng)用[M].北京:清華大學(xué)出版社,1999.
[7]宋金紅,張熠斌,隋立春.基于組件式GIS 的城市信息查詢系統(tǒng)的設(shè)計與開發(fā)[J].測繪通報,2011,(01):56~58.
[8]楊猛,何宗宜,陳學(xué)業(yè).基于組件式GIS 的工作流模型[J].測繪通報,2002,(S1):74~76.
[9]趙俊蘭,馮仲科.基于組件式的數(shù)字校園信息管理系統(tǒng)的建立[J].測繪通報,2007,(06):49~52.
[10]明鏡.基于鉆孔的三維地質(zhì)模型快速構(gòu)建及更新[J].地理與地理信息科學(xué),2012,28(5):55~59.
[11]明鏡,潘懋,屈紅剛等.基于網(wǎng)狀含拓?fù)淦拭娴娜S地質(zhì)多體建模[J].巖土工程學(xué)報,2008,30(9):1376~1382.