基于免費組件的IFC數(shù)據(jù)三維圖形交互模塊研究_第1頁
基于免費組件的IFC數(shù)據(jù)三維圖形交互模塊研究_第2頁
基于免費組件的IFC數(shù)據(jù)三維圖形交互模塊研究_第3頁
基于免費組件的IFC數(shù)據(jù)三維圖形交互模塊研究_第4頁
基于免費組件的IFC數(shù)據(jù)三維圖形交互模塊研究_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第三屆工程建設計算機應用創(chuàng)新論壇論文集上海2011基于免費組件的IFC數(shù)據(jù)三維圖形交互模塊研究魏振華 馬智亮清華大學土木工程系,北京 100084【摘要】基于BIM的三維圖形交互模塊的開發(fā)需解決BIM數(shù)據(jù)解析及三維模型顯示兩個問題,選擇價格低廉甚至免費的組件并且能夠進行高效的開發(fā)是研究者進行研究的最佳途徑。本研究基于已有的BIM應用軟件研究,針對IFC數(shù)據(jù)找到了一種能夠用于快速高效地開發(fā)三維圖形交互模塊的免費組件組合,即TNO公司的IFC Engine DLL(用于BIM數(shù)據(jù)解析)和SIM公司的Coin 3D(兼容Open Inventor,用于三維模型顯示)。然后基于該組合,在C+語言開發(fā)環(huán)

2、境下,研制了可以靈活用于BIM應用軟件開發(fā)的三維圖形交互模塊3DGI,并進行了實際應用。本研究為利用免費組件自主研發(fā)輕量級的三維圖形交互模塊提供了一種快速高效的解決方案,從而可幫助研究者把更多的精力集中于進行BIM應用軟件本身的研究中?!娟P鍵詞】BIM應用軟件,三維圖形交互,IFC數(shù)據(jù),免費組件概述近年來,隨著BIM技術的流行,相關研究逐漸增多,特別是關于BIM應用軟件的研究已經(jīng)成為BIM領域的研究熱點,對BIM技術在建筑工程中實際應用起到了重要的推動作用。三維模型作為BIM技術的核心,可以直觀地存儲和表達BIM數(shù)據(jù),方便對BIM技術應用效果的檢查,是BIM技術由理論走向實際應用的關鍵,三維圖

3、形交互模塊也因此成為BIM應用軟件研究和開發(fā)的重要支撐。目前,IFC標準已經(jīng)成為主流的BIM數(shù)據(jù)標準1,為使研究成果具有普遍適用性,在本研究中考慮的BIM數(shù)據(jù)即為IFC數(shù)據(jù)。三維圖形交互模塊的開發(fā)需要解決BIM數(shù)據(jù)解析及三維模型顯示兩個關鍵問題。針對這兩個問題均已有一些商業(yè)化和免費的軟件或組件:BIM數(shù)據(jù)解析主要是針對IFC標準的數(shù)據(jù)解析,可使用商業(yè)化的EDM等軟件或者免費的IFCsvr、 IFC Engine DLL等組件2-4;三維模型顯示則可使用商業(yè)化的AutoCAD等軟件或者免費的OpenGL、Direct3D等組件4-6。一般地,商業(yè)化軟件在開發(fā)效率、模型質量等多個方面有較大的優(yōu)勢,

4、但其昂貴的價格在很大程度上阻礙了其在研究中的使用。相比而言,研究者在研究中更愿意使用免費組件。然而免費組件相關說明文檔往往不全,缺乏相關咨詢服務和技術支持,同時在應用時一般需要進行大量調研,然后經(jīng)過艱苦的嘗試和大量的編程工作才能實際利用。為解決上述問題,本研究基于已有的BIM應用軟件研究,綜合比較相關免費組件,在C+語言開發(fā)環(huán)境下,針對IFC數(shù)據(jù)找到了一種能夠用于快速高效地開發(fā)三維圖形交互模塊的免費組件組合,即TNO公司的IFC Engine DLL(用于BIM數(shù)據(jù)解析)和SIM公司的Coin 3D(兼容Open Inventor,用于三維模型顯示),研制了可以靈活用于BIM應用軟件開發(fā)的三維

5、圖形交互模塊3DGI,為利用免費組件自主研發(fā)輕量級的三維圖形交互模塊提供了一種快速高效的解決方案,從而可幫助研究者把更多的精力集中于進行BIM應用軟件本身的研究中。免費組件選擇2.1 三維圖形交互模塊的基本需求本研究通過調研和分析常見的三維軟件以及已有的BIM應用軟件,首先對三維圖形交互模塊的基本需求進行了分析,如表1所示。表1三維圖形交互模塊的基本需求序號基本需求需求描述1IFC數(shù)據(jù)的雙向傳遞支持對IFC數(shù)據(jù)文件的讀寫支持與BIM應用軟件的雙向數(shù)據(jù)傳遞2三維模型的數(shù)據(jù)綁定三維模型實體需要包含屬性信息三維模型實體需要綁定相應的BIM應用數(shù)據(jù)3準確完整的三維模型顯示能夠準確完整地解析IFC幾何信

6、息能夠將IFC數(shù)據(jù)轉化成可用于三維繪圖的數(shù)據(jù)格式能夠反映實際的建筑構件之間的位置和拓撲關系4方便的用戶交互操作提供實體選擇、三維瀏覽、模型顯示控制等多種用戶交互操作5良好的三維顯示效果提供模型的著色、材質、光照等真實感表現(xiàn)功能IFC數(shù)據(jù)解析工具由于C+語言在開發(fā)大型BIM應用軟件中的廣泛應用,為了便于實現(xiàn)本模塊與BIM應用軟件的集成,本研究優(yōu)先考慮選擇支持C+語言的IFC數(shù)據(jù)解析工具。為此,本研究針對部分常用的支持C+語言開發(fā)環(huán)境的免費IFC數(shù)據(jù)解析工具進行了調研和對比,如表2所示。對IFC數(shù)據(jù)解析工具的選擇還需要考慮IFC數(shù)據(jù)與三維圖形引擎所需繪圖數(shù)據(jù)之間的數(shù)據(jù)交換問題。相比其他工具,IFC

7、 Engine DLL不僅能夠解析實體的幾何表達方式和描述信息,而且提供了將這些信息直接轉化為三維圖形引擎常用的三角網(wǎng)格的圖形接口,無需編程人員再進行幾何算法的開發(fā)。特別是,它能夠自動處理常見的構件開洞等布爾運算情形,并直接獲得布爾運算結果實體的三角網(wǎng)格。綜合這幾方面的因素,本研究最終選擇了IFC Engine DLL作為IFC數(shù)據(jù)解析工具。表2部分IFC數(shù)據(jù)解析工具對比序號解析工具數(shù)據(jù)解析功能數(shù)據(jù)解析效率圖形接口1IFC EngineDLL7提供對IFC數(shù)據(jù)的查詢、修改等基本功能接口,采用SDAI接口晚綁定,數(shù)據(jù)讀取效率高能自動快速獲得布爾運算后的IFC實體三角網(wǎng)格數(shù)據(jù)2IFCsvr8基于C

8、OM環(huán)境提供對IFC數(shù)據(jù)的查詢、修改等基本功能接口晚綁定,數(shù)據(jù)讀取效率高僅能解析實體的幾何表達方式和相關描述信息3IFC SDK9對應IFC標準建立起完整的數(shù)據(jù)結構,提供對IFC數(shù)據(jù)的創(chuàng)建、查詢、修改等基本功能接口早綁定,數(shù)據(jù)讀取效率較晚綁定低,但運行效率高僅能解析實體的幾何表達方式和相關描述信息三維圖形引擎為選擇三維圖形引擎,本研究利用四種常用的免費甚至開源的三維圖形引擎進行了開發(fā)應用試驗,包括OpenGL、Direct3D、Coin3D和Open CASCADE,通過開發(fā)過程及效果對它們進行了比較,如表3所示。表3部分三維圖形引擎對比序號圖形引擎基本功能繪圖效率交互功能顯示效果1OpenG

9、L10跨語言、跨平臺的底層圖形庫高繪圖速度提供了最基礎性的交互功能高質量和高性能的圖形顯示2Direct3D11微軟平臺COM接口的底層三維圖形API高繪圖速度提供了最基礎性的交互功能高質量和高性能的圖形顯示3Coin3D12基于OpenGL的面向對象三維圖形開發(fā)包繪圖效率較高豐富的交互功能高質量和高性能的圖形顯示4Open CASCADE13主要用于設計建模的面向對象圖形工具大規(guī)模繪圖效率較低控制模型變換等交互功能可滿足BIM應用軟件要求表3中的OpenGL、Direct3D均屬于底層圖形庫,雖然提供了強大的三維圖形功能,但是其函數(shù)功能復雜多樣,往往需要開發(fā)者進行大量的編程工作才能實現(xiàn)良好的

10、顯示效果。而Open CASCADE雖然三維圖形功能非常強大,但是其針對大量圖形元素低下的繪圖效率成為制約其應用的主要因素。與以上這三種圖形工具相比,Coin3D既繼承了OpenGL良好的三維圖形顯示性能和繪圖效率,又封裝了豐富的三維圖形交互控制功能,編程實現(xiàn)簡單方便12。同時,其創(chuàng)建的所有圖形都作為三維對象“結點”進行管理,其面向對象的思想與BIM理念又是相通的,故可以方便地建立起B(yǎng)IM實體與三維對象“結點”的對應關系。因此本研究最終選用Coin3D作為三維圖形引擎。模塊總體框架在三維圖形交互模塊的基本需求的基礎上,根據(jù)選用的IFC數(shù)據(jù)解析工具IFC Engine DLL以及三維圖形引擎Co

11、in3D的數(shù)據(jù)需求和功能特點,本研究建立起了三維圖形交互模塊3DGI的總體框架,如圖1所示。3DGI模塊以IFC數(shù)據(jù)作為輸入條件。在3DGI模塊中,3DGI核心子模塊作為其核心,通過調用IFC Engine DLL,直接讀取IFC幾何信息并將其處理和轉化為三維圖形數(shù)據(jù)(三角網(wǎng)格);之后調用Coin3D,利用生成的三維圖形數(shù)據(jù)進行三維模型顯示并實現(xiàn)對用戶交互操作的支持。因此,BIM應用軟件的研究者可在其用戶界面模塊調用3DGI模塊以實現(xiàn)BIM應用軟件的三維模型顯示和用戶交互操作,從而實現(xiàn)完整的BIM應用軟件。按照該框架,作者等使用C+語言實現(xiàn)了該模塊,所需的編程工作只有不到1000行代碼。圖1

12、3DGI模塊總體框架及其與BIM應用軟件的集成模塊應用本研究所開發(fā)的三維圖形交互模塊3DGI已經(jīng)成功地集成在本研究組開發(fā)的兩個BIM應用軟件中,即基于BIM技術的建筑成本預測軟件系統(tǒng)和基于BIM技術的建筑節(jié)能設計軟件系統(tǒng)3,14。3DGI模塊在兩個BIM應用軟件中的實際應用表明,所采用的IFC Engine DLL可以為BIM應用軟件準確完整地提供IFC三維圖形數(shù)據(jù),其高效性也保證了系統(tǒng)啟動和運行的流暢性;所采用的Coin3D既實現(xiàn)了高效的三維模型顯示和用戶交互控制,又實現(xiàn)了建筑產(chǎn)品與BIM應用數(shù)據(jù)之間的直觀綁定。通過應用該模塊,所開發(fā)的BIM應用軟件能夠高效地實現(xiàn)編制工程量清單、進行工程計價

13、、設計建筑構件材料、進行節(jié)能指標檢查等操作,同時也可以直觀地校核成本預算和節(jié)能設計結果的準確性。結語本研究為在C+語言開發(fā)環(huán)境下自主研發(fā)輕量級的三維圖形交互模塊提供了一種免費組件的組合,并通過實際研制和在BIM應用軟件中應用證實了該組合的優(yōu)勢。該模塊的編程實現(xiàn)表明,使用該組合,僅需幾百行代碼即可實現(xiàn)從IFC數(shù)據(jù)解析到三維模型顯示的功能,并能夠提供友好的用戶交互操作,從而有助于研究者將主要的精力集中于BIM應用軟件本身的研究中,節(jié)約研究時間,提高工作效率。致謝本研究受“十一五”國家科技支撐課題“基于BIM技術的下一代建筑工程應用軟件研究”(2007BAF23B02)資助。參考文獻1 buildi

14、ngSMART International Ltd. Model - Industry Foundation Classes (IFC) OL.2011-10-18 /standards/ifc/.2 Jotne EPM Technology. EDMmodelServerfor 3D and PLM OL. 2011-10-18 /getfile.php/409904.861.rvbrsqsprd/EPMtech-3D-PLM.pdf/.3 Ma Zhiliang, Zhao Yili. Model of next generation energy-efficient design sof

15、tware for buildings J. Tsinghua Science and Technology. 2008, 13(S1): 298-304.4 Wenpeng Liu, Bo Diao, Yinghua Ye. Durability evaluation software system of concrete structure based on BIM and 4D technology: Proceedings of the International Conference In Computing in Civil and Building Engineering, No

16、ttingham, United Kingdom, 2010 C. United Kingdom, 2010.5 曹銘. 基于IFC標準的建筑工程信息集成及4D施工管理研究D. 北京: 清華大學土木工程系, 2005.6 魏振華. 基于BIM數(shù)據(jù)的OpenGL圖形交互模塊的研制D. 北京: 清華大學土木工程系, 2008.7 TNO Building and Construction Research. IFC Engine DLL OL. 2011-10-18 /ifcenginedll.html/.8 SECOM CO.,LTD. Intelligent Systems Laborator

17、y. IFCsvr ActiveX Component OL. 2011-10-18 /group/ifcsvr-users/.9 Open Source Observatory & Repository. IFC SDK.2011-10-18 http:/forge.osor.eu/plugins/wiki/index.php?id=175&type=g/.10 Dave Shreiner. OpenGL programming guide: the official guide to learning OpenGL, versions 3.0 and 3.1M. Addison-Wesley, 2010.11 李曄, 等譯. Direct3D技術內幕. 北京: 清華大學出版社, 2001.12 閻鋒欣, 侯增選, 等. Open Inventor程序設計從入門到精通M. 北

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論