国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Revit二次開發(fā)及其應(yīng)用研究

2019-09-24 08:34
水電站設(shè)計 2019年3期
關(guān)鍵詞:二次開發(fā)插件建模

王 增 竹

(中國電建集團成都勘測設(shè)計研究院有限公司,四川 成都 610072)

0 前 言

BIM(Building Information Modeling)技術(shù)由Autodesk公司在2002年率先提出,目前已經(jīng)在全球范圍內(nèi)得到業(yè)界的廣泛認(rèn)可。它可以輔助實現(xiàn)建筑信息的集成,貫穿建筑的設(shè)計、施工、運行直至建筑全壽命周期的終結(jié)。它將各種信息始終整合于一個三維模型信息數(shù)據(jù)庫中,設(shè)計團隊、施工單位、設(shè)施運營部門和業(yè)主等各方人員可以基于BIM進行協(xié)同工作,有效提高工作效率,節(jié)省資源,降低成本,實現(xiàn)可持續(xù)發(fā)展。

BIM的核心是通過建立虛擬的建筑工程三維模型,利用數(shù)字化技術(shù),為這個模型提供完整的、與實際情況一致的建筑工程信息庫。該信息庫不僅包含描述建筑物構(gòu)件的幾何信息、專業(yè)屬性及狀態(tài)信息,還包含了非構(gòu)件對象(如空間、運動行為)的狀態(tài)信息。借助這個包含建筑工程信息的三維模型,大大提高了建筑工程的信息集成化程度,從而為建筑工程項目的相關(guān)利益方提供一個工程信息交換和共享的平臺。

Revit軟件由Autodesk公司開發(fā),是全球建筑市場上最常用的BIM(Building Information Modeling,建筑信息模型)軟件平臺。它可幫助建筑設(shè)計師設(shè)計、建造和維護質(zhì)量更好、能效更高的建筑。其功能模塊主要包括:建筑、結(jié)構(gòu)、給排水和電氣等專業(yè)模型的協(xié)同設(shè)計,功能強大[1]。Revit軟件的優(yōu)勢有:

(1)參數(shù)式組件。使用智能型建筑組件提高設(shè)計準(zhǔn)確性。

(2)雙向關(guān)聯(lián)性。在設(shè)計中的任何變更都會自動反映在整個模型中。

(3)工作共享。多個用戶可同時處理相同的智能型建筑模型。

(4)施工建模。更深入了解建筑元素的可施工性。

Revit軟件提供建筑生命周期中詳盡的整合信息,以利于項目各參與方通過更精確的方式讓設(shè)計可視化,更好地促進溝通和交流,進而提高設(shè)計效率、降低項目風(fēng)險。隨著BIM建筑信息模型概念的推廣和落實,Revit越來越受到建筑工程業(yè)界的重視。

目前,Revit軟件在我國應(yīng)用方面做得不夠全面,例如,軟件內(nèi)部的單位都是以英制來換算的,因此需要二次開發(fā)工作來滿足本地化需求。

1 Revit二次開發(fā)

Revit軟件提供了豐富易用的二次開發(fā)接口(Application Programming Interface,應(yīng)用程序編程接口,簡稱API)。Revit軟件自帶的功能,可以滿足大多數(shù)情況的需求,如碰撞檢查、工程量統(tǒng)計等。但針對項目的特殊需求,如導(dǎo)出某類型窗的離地高度,就需要結(jié)合二次開發(fā)工作,自定義獲得模型中的詳細信息。此外,二次開發(fā)還能在軟件功能的基礎(chǔ)上,形成新的功能,如快速建模、批量修改等,以滿足項目的特定需求,提升用戶的工作效率。

Revit API通過連續(xù)不斷地強化補充,已經(jīng)逐漸變成了一個非常強大的體系。通過自主編程開發(fā),用戶可以實現(xiàn)軟件界面中沒有提供的功能。它提供的主要功能有:訪問模型的圖形數(shù)據(jù);訪問模型的參數(shù)數(shù)據(jù);創(chuàng)建、修改、刪除模型元素;創(chuàng)建插件UI進行增強;創(chuàng)建插件完成對重復(fù)自有工作的自動化;集成第三個程序;執(zhí)行BIM分析等。用戶自己開發(fā)的插件可以集成到軟件界面中,方便調(diào)用,并且編譯的DLL文件可以適用于多個Revit版本,通用性強。對于規(guī)律性強、數(shù)據(jù)量大的建模工作,利用Revit API二次開發(fā),可以有效提升工作效率。

1.1 二次開發(fā)條件

Revit API借助Microsoft Visual Studio平臺,依托C#、C++、VB.NET等語言,可滿足多種開發(fā)需要。開發(fā)所需的條件包括:Revit軟件、Revit SDK(Software Development Kit,軟件開發(fā)工具)、Microsoft Visual Studio。Revit軟件是開發(fā)功能實現(xiàn)和檢驗的載體。Revit SDK是軟件安裝包中自帶的,可為開發(fā)者提供常用的二次開發(fā)命令,其中包含Add-in Manager加載插件和Lookup構(gòu)件信息查看插件,能夠有效提高開發(fā)效率。Microsoft Visual Studio是二次開發(fā)的平臺,代碼在此平臺編寫,通過Revit API在Revit內(nèi)部進行編譯,最后加載到Revit軟件中實現(xiàn)相應(yīng)的功能。

1.2 二次開發(fā)流程

Revit二次開發(fā)的流程如圖1所示,主要包括:需求分析、模式設(shè)置、新建類、編寫代碼、編譯、加載、調(diào)試等步驟。

需求分析。此步驟是對功能是否具備開發(fā)條件進行分析,二次開發(fā)的功能是在Revit自身功能之上的延伸,使軟件中需要繁瑣操作才能實現(xiàn)的功能,得以快速完成。

模式設(shè)置。選擇外部命令(External Command)或者外部應(yīng)用(External Application)方式來實現(xiàn)功能。兩者的區(qū)別為:外部命令由用戶點擊按鈕來啟動命令,而外部應(yīng)用在啟動和關(guān)閉Revit.exe時自動執(zhí)行。在實際開發(fā)中,外部命令最常用。

新建類。依據(jù)模式的不同,分別從IExternalCommand和IExternalApplication接口派生,重載相應(yīng)方法。

編寫代碼。在Visual Studio中編寫代碼,這是二次開發(fā)的核心環(huán)節(jié)。在編寫時可以參考SDK工具包中的代碼樣例。

編譯和加載。編譯代碼,生成DLL文件,在Revit中借助Add-in Manager將DLL文件加載到軟件中(見圖2)。

調(diào)試。調(diào)試是開發(fā)工作的重要一環(huán)。編譯后的代碼,有時無法實現(xiàn)預(yù)定的功能,需要在軟件中不斷調(diào)試修改。對于外部命令和外部應(yīng)用,要采用不同的調(diào)試方法。

圖1 Revit二次開發(fā)的流程

圖2 利用Add-In Manager將DLL文件加載到Revit中并實現(xiàn)

2 Revit二次開發(fā)的應(yīng)用

2.1 快速建模

模型建立的工作量大而且比較瑣碎,利用Revit二次開發(fā)工具,可以很大程度減少重復(fù)工作,提升建模效率,實現(xiàn)快速建模。目前市場上已經(jīng)有很多Revit二次開發(fā)插件具備輔助快速建模的功能(見圖3),如橄欖山、鴻業(yè)、建模大師等等。這些插件可以實現(xiàn)軸線生墻、軸線生梁、快速畫柱等功能,提高建模效率。

市場上的插件大多是針對建筑項目的應(yīng)用特點而研發(fā)的,除此之外,其他專業(yè)的項目人員也在開發(fā)相應(yīng)的插件。丁建洋等[2]針對軌道交通工程設(shè)計專業(yè)多、模型復(fù)雜的特點,開發(fā)了軌道交通快速建模工具集,該工具集能夠?qū)崿F(xiàn)軌道交通專業(yè)的單體(如軌枕、支吊架等)的快速建模,在項目中取得了良好的應(yīng)用效果。賈盈平[3]等開展了面向?qū)傩缘膮?shù)化建模在Revit API中的應(yīng)用,借助二次開發(fā),只通過界面輸入矢高、跨度和環(huán)數(shù)等結(jié)構(gòu)參數(shù)即可以完成模型的快速建立,實現(xiàn)了三維模型的快速生成。

圖3 橄欖山快速建模插件

2.2 輔助三維出圖

三維出圖是模型應(yīng)用的重要方面,也是三維正向設(shè)計的成果體現(xiàn)。通過三維模型直接生成CAD圖紙,可以直接利用模型信息,也方便后期的修改。但由于Revit的本地化工作還不夠完善,在標(biāo)注、明細表等方面還有優(yōu)化的空間。

李昌華等[4]研究了Revit管線自動標(biāo)注方法的實現(xiàn),基于Revit管線批量自動標(biāo)注的實際工程要求,針對不同的管線排布情況,開發(fā)了相應(yīng)的管線自動標(biāo)注功能。利用該功能可以簡化標(biāo)注操作,提高標(biāo)注效率。陳劍佳等[5]研究了基于Revit 的梁平法快速成圖方法及輔助軟件,通過二次開發(fā),添加配筋小標(biāo)簽、 鏈接配筋結(jié)果、集中標(biāo)注所有跨梁、直接添加鋼筋信息到梁實體圖元中等,提出一種梁平法快速成圖方法,能夠滿足設(shè)計中反復(fù)修改的需求。

2.3 滿足項目的特定需求

在實際項目中,會遇到特殊的建模和應(yīng)用需求,如特定功能的族的建立,特殊模型信息的批量導(dǎo)出等等。二次開發(fā)為滿足項目的特定需求提供了良好的平臺,通過開發(fā)可以實現(xiàn)建立復(fù)雜構(gòu)件和導(dǎo)出特定信息等功能,提高模型建立和應(yīng)用的效率。

陳慶軍等[6]進行了基于Revit及Revit API的應(yīng)縣木塔建模研究,通過二次開發(fā),快速并準(zhǔn)確地建立了階基、華拱、柱子、斗拱等特殊族,降低了斗拱創(chuàng)建的難度,為木塔的結(jié)構(gòu)分析建立了基礎(chǔ)。丁曉宇等[7]開展了基于Revit二次曲面網(wǎng)殼參數(shù)化建模的研究,使用C#編程語言和 API類庫,開發(fā)出了單層二次曲面網(wǎng)殼結(jié)構(gòu)的參數(shù)化設(shè)計插件,實現(xiàn)了二次曲面網(wǎng)殼結(jié)構(gòu)在Revit視圖中的自動生成。

3 結(jié) 語

BIM技術(shù)帶來了建筑行業(yè)的新一輪變革。Revit軟件是目前BIM技術(shù)的重要應(yīng)用軟件和平臺,二次開發(fā)技術(shù)有利于Revit推廣和應(yīng)用,是實現(xiàn)功能本地化的重要工具。它可以大大提高模型建立的速度,提高協(xié)同設(shè)計效率,輔助三維出圖,有利于滿足項目的特定需要。二次開發(fā)具有一定的技術(shù)門檻,設(shè)計人員進行開發(fā)時需要先進行較長時間的學(xué)習(xí);此外由于Revit軟件的限制,二次開發(fā)成果的保護力度也不夠,這些都在一定程度上限制了二次開發(fā)的應(yīng)用。但隨著國家對BIM技術(shù)的不斷宣傳和推廣,我們相信,Revit二次開發(fā)技術(shù)將被更加廣泛地應(yīng)用。

猜你喜歡
二次開發(fā)插件建模
聯(lián)想等效,拓展建?!浴皫щ娦∏蛟诘刃鲋凶鰣A周運動”為例
自編插件完善App Inventor與樂高機器人通信
西門子Operate高級編程的旋轉(zhuǎn)坐標(biāo)系二次開發(fā)
淺談Mastercam后處理器的二次開發(fā)
基于PSS/E的風(fēng)電場建模與動態(tài)分析
不對稱半橋變換器的建模與仿真
西門子Easy Screen對倒棱機床界面二次開發(fā)
基于jQUerY的自定義插件開發(fā)
基于Revit MEP的插件制作探討
ANSYS Workbench二次開發(fā)在汽車穩(wěn)定桿CAE分析中的應(yīng)用