基于二次開發(fā)方法的BIM模型數(shù)據(jù)提取方法研究_第1頁
基于二次開發(fā)方法的BIM模型數(shù)據(jù)提取方法研究_第2頁
基于二次開發(fā)方法的BIM模型數(shù)據(jù)提取方法研究_第3頁
基于二次開發(fā)方法的BIM模型數(shù)據(jù)提取方法研究_第4頁
基于二次開發(fā)方法的BIM模型數(shù)據(jù)提取方法研究_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、    基于二次開發(fā)方法的bim模型數(shù)據(jù)提取方法研究    陶婉婉摘要:文章從bim模型的數(shù)據(jù)結(jié)構(gòu)入手,對其組成要素、數(shù)據(jù)結(jié)構(gòu)層級進行分析。然后提出從bim模型中進行信息提取的方法,使用二次開發(fā)方法在revit系列軟件的平臺上,對其api進行分析,并闡述代碼實現(xiàn)的過程。結(jié)合案例進行實證分析,驗證本文所提出方法的可行性,為加深bim模型在工程項目領域中的運用提供了技術(shù)支撐。abstract: this paper starts with the data structure of bim model, and analyzes its constituen

2、t elements and data structure hierarchy. then, the method of extracting information from bim model is proposed. the secondary development method is used to analyze the api on the platform of revit series software, and the process of code implementation is explained. the empirical analysis is carried

3、 out in combination with the case to verify the feasibility of the proposed method and provide technical support for deepening the application of the bim model in the field of engineering projects.關(guān)鍵詞:bim;數(shù)據(jù)提取;二次開發(fā)key words: bim;data extraction;secondary development:tu17;tu722       &

4、#160;                     :a                                  :1006-4311(2019)08-0159-031  bim模型數(shù)據(jù)結(jié)構(gòu)分析bim的全稱為building information modeling,bim模型的存在是為了給建筑工程進行可視化

5、的三維建模,其本質(zhì)還是一個繪圖軟件,那么在bim模型中最基本的單位就是圖元。圖元包括點、線、面等組成模型的最基本要素,包括模型圖元、視圖圖元和輔助圖元。而bim除了繪圖軟件的基礎上,具有參數(shù)化的特點,也就意味著所謂的圖元并不僅僅意味著表面的可視化,還要將圖元所具備的參數(shù)屬性進行可視化。下面根據(jù)三種圖元類型來進行一一闡述。1.1 模型圖元模型元素是bim模型中最重要的元素,表示建筑模型的幾何形狀,是建筑模型的重要組成部分。模型元素也稱為結(jié)構(gòu)構(gòu)件,分為結(jié)構(gòu)構(gòu)件和附屬構(gòu)件。結(jié)構(gòu)構(gòu)件可以獨立地存在于模型中,包括墻壁,地板等。而附著構(gòu)件則必須依附于結(jié)構(gòu)構(gòu)件而存在,包括門、窗等。1.2 視圖圖元在bim模

6、型中,視圖圖元指的是建筑模型的視圖以及明細表。視圖包括三維立面圖、平面圖、剖面圖、三維圖等,明細表主要是一些數(shù)據(jù)的整理與表達。1.3 輔助圖元輔助圖元是輔助于模型圖元的,分為基準圖元和注釋圖元。其中,基準圖元能夠通過軸網(wǎng)、參考平面、標高等形式實現(xiàn)bim模型在空間中的表達。而注釋圖元則指那些文字、尺寸和符號的標注,對建筑模型進行細節(jié)的表達。bim模型的所有數(shù)據(jù)都是以工程項目的構(gòu)件比如墻、門、窗等為核心展開的,而每個構(gòu)件都是其本身各種屬性數(shù)據(jù)的整合。文章中的bim模型是在autodesk公司開發(fā)的revit 2015平臺上進行建模的,在revit2015中的模型工程項目中,它由兩種類型組成:結(jié)構(gòu)構(gòu)

7、件和附屬構(gòu)件。而附屬構(gòu)件指的是門、窗、家具這些在模型中無法獨立存在,必須附著于結(jié)構(gòu)構(gòu)件上施工的構(gòu)件,如圖1所示。2  revit api解讀從bim模型中提取信息需要根據(jù)各個參與方對應的工作內(nèi)容進行revit api內(nèi)容編寫和代碼實現(xiàn)。文章根據(jù)常用的的一些構(gòu)件參數(shù)revit api進行解析并設計算法,以 revit 2015以及visual studio 2012為平臺,采用c#計算法編程語言進行編寫。revit api是revit系列軟件的類庫,其存在主要有三個功能:一是覆蓋軟件本身的功能,并從更深層次的源代碼角度解析和調(diào)整模型;二是使所有用戶能夠使用api代碼進行二次開發(fā),創(chuàng)建新

8、的命令,從而滿足用戶對于部分功能的縮放需求;三是使其能夠與第三方應用軟件相連接,從而運用于分析應用領域。文章使用revit api來對revit系列軟件進行二次開發(fā),實現(xiàn)從bim模型中提取數(shù)據(jù)的功能。而在這之前,首先需要下載軟件開發(fā)工具包(software development kit),獲取revit api幫助文檔以及revitlookup的插件。然后下載visual studio 2012,選擇c#語言進行編程。同時,通過addinmanager插件來加載在visual studio 2012平臺上所編寫的二次開發(fā)插件。其中,在visual studio 2012平臺上進行代碼編寫時,

9、需要使用revit api.dll和revit apiui.dll程序集。這兩個程序集所包含的內(nèi)容不同,具體如表1所示。而在信息提取的二次開發(fā)過程中,主要運用到的是revit api.dll的iexternaldbapplication接口、parameter方法、訪問db級別的element以及revit apiui.dll中的iexternalapplication相關(guān)接口、taskdialogs任務對話框內(nèi)容。3  bim模型數(shù)據(jù)提取方法對bim模型信息的提取主要分為兩大內(nèi)容:一是bim模型中所有的構(gòu)件清單,二是所有構(gòu)件所帶有的屬性參數(shù)。revit api對于建筑構(gòu)件的分類細度

10、比較大,比如結(jié)構(gòu)柱的族類型下就包含圓形柱、方形柱等類型,然而在工程項目施工過程中,并不會因為柱子的族類型不同而影響施工工序,因此將revit api中的構(gòu)件個體映射至較高較高層級的類上,然后再根據(jù)每個構(gòu)件的屬性參數(shù)來確定其工程量。revit api映射的構(gòu)件類如表2所示。僅僅從bim模型中提取出構(gòu)件清單是遠遠不夠的,還需要將所有構(gòu)件所負有的參數(shù)化屬性信息提取出來才能夠得到完整的模型信息。對構(gòu)件屬性數(shù)據(jù)的提取能夠通過revit api內(nèi)置參數(shù)(builtinparameter)或者共享參數(shù)(sharedparameter)從bim模型中直接提取4。而提取的前提是建立重要的數(shù)據(jù)屬性api及其對應的

11、revit api的迎神。常用的屬性參數(shù)映射整理如表3所示。4  實證研究為了驗證上文所提出的本體理論,本模型只有一層,如圖2所示,占地面積78平方米。在此模型中,含有所有常用的建筑結(jié)構(gòu)構(gòu)件,包括樓板、屋頂、梁、柱、門、窗。從bim模型中提取出所有構(gòu)件的族、幾何數(shù)據(jù)以及位置數(shù)據(jù),首先要在visual studio 2012平臺上利用c#語言對數(shù)據(jù)提取代碼進行編寫,具體代碼詳情如下:filteredelementcollector fec = new filteredelementcollector(doc, doc.activeview.id);list liste = fec.to

12、elements().tolist();stringbuilder str = new stringbuilder();foreach (var ele in liste)parameter vol = ele.get_parameter(builtinparameter.host_volume_computed);parameter area = ele.get_parameter(builtinparameter.host_area_computed);parameter lev = ele.get_parameter(builtinparameter.stairs_base_level_

13、param);options opt = new options();opt.view = doc.activeview;if (vol!=null&&area!=null)str.append(ele.category.name.tostring() + "," + vol.asdouble().tostring() + "," + area.asdouble().tostring() + "n");taskdialog.show("the list of componentsparameters", str.tostring();return result.succeeded;代碼撰寫完成后,使用addinmanager插件將此代碼附著于revit 2015平臺上,提取出的所有構(gòu)件清單,此模型一共提取出26個構(gòu)件,整理如表4所示。5  結(jié)論通過對bim模型中的數(shù)據(jù)結(jié)構(gòu)進行分析,結(jié)合revit系列軟件的api,文章提出使用二次開發(fā)的方法來提取bim模型的信息。并且最終通過實證研究驗證了文章所提出的二次開發(fā)的方法能夠有效地根據(jù)需求,提取revit系列軟件平臺上bim模型的構(gòu)件級相關(guān)數(shù)據(jù)信息,包括構(gòu)件的基本屬性、構(gòu)件的層次以及

溫馨提示

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

評論

0/150

提交評論