999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Revit 開發創建模型數據提取插件

2022-11-12 10:21:30丁軍晨王曉東彭禹立張雯亮夏皓倫馬靖東
科學技術創新 2022年33期
關鍵詞:二次開發信息模型

丁軍晨,王曉東,彭禹立,張雯亮,夏皓倫,馬靖東

(遼寧工程技術大學土木工程學院,遼寧阜新 123000)

引言

Revit 是Autodesk 公司制作的一系列軟件,主要用于建筑信息建模,為設計師和工程師提供了一個設計和記錄建筑信息的平臺,可以根據他們對有關項目的需求,更好的設計、建造和維護建筑。由于Revit 消除了建筑行業很多復雜的任務,在國內外的建筑行業中得到了廣泛的應用。

Autodesk 公司在設計Revit 的同時也為Revit 提供了API 接口[1-2]。Revit API 是一個類庫,只有在Revit 運行時才能夠工作。通過強大的Revit API,用戶可以添加基于Revit API 開發的插件來擴展和增強Revit 的功能和應用。通過這些功能和應用可以在短時間內完成龐雜的工作,大幅度的節省了工程師的時間成本。運用在工程中,可以加快項目的進度。

二次開發技術可以實現以下的功能[3]:(1) 訪問模型的參數數據;(2) 訪問模型的圖像數據;(3) 創建插件完成一些重復龐雜的工作;(4) 通過創建插件來增強Revit 的UI;(5) 對BIM實現各種分析;(6) 自動創建項目文檔;(7) 借助第三方應用來完成如連接外部的數據庫。

編譯完成后, 需要使用Revit 附加模塊AddInManager 將程序運行到Revit 2017 平臺上,附加模塊的運行界面見圖1。

圖1 AddInManger2014 運行界面

1 基于Revit 插件開發

本文基于Revit 2017 以及Revit2017 SDK,由于Revit 二次開發的核心運行環境為.NET4.7,因此可以選擇Visual Studio 2017 版本為程序編寫平臺,通過NET4.7環境,使用C#編程語言完成編寫與編譯[4-5],主要工作包括參數信息收集與參數信息載入[6-8]。

1.1 總體架構

在Revit API 與編程技術的支持下,可以選擇需要輸出的構件參數,以及輸出后不同參數所放置的位置。通過收集器與過濾器收集模型相關的參數信息,然后將收集到的相關信息寫入到Excel 表格中。

1.2 程序開發

(1) 在Visual Studio 2020 中創建一個類庫,在類庫中添加引用RevitAPI 與RevitAPIUI,并將“復制本地”勾選為false,通過加載外部命令IExternalApplication 的方式,來實現Revit 軟件與外部應用的同步性。以上操作完成后需要實現OnStartup 和OnshutDown 函數的內容,將用戶所需要的操作放置其中,OnStartup 中的操作會在Revit 啟動時調用并執行,OnshutDown 中的操作會在Revit 關閉時調用并執行。使用IExternalApplication 命令可制作Revit 插件的UI 時需要編寫如下代碼:

(2) 在上述類庫中新建一個類,并調用外部命令IExternalCommand(IExternalCommand 是Revit API 通過外部命令來擴展Revit 時必須在外部命令中實現的接口),調用此外部命令可以讓插件加載運行。在此類中需要在抽象函數Execute 添加相關構件的收集器,為了更好的收集到構件的信息,需要再加入一個過濾器。遍歷過濾器把相關參數寫入DATATABLE 中。

最后將在IExternalCommand 中所編寫的命令添加到Revit 的UI 中,使之成為Revit 插件按鈕的命令。

利用API 為Revit 編寫插件的流程見圖2 所示。

圖2 插件開發流程圖

2 模型數據結構分析

Revit 圖元是模型的基礎,在Revit 的數據體系中,大部分的類是繼承于元素的。在Revit 中,圖元可大致分為模型圖元、基準圖元、視圖專有圖元[2]。

2.1 模型圖元

模型圖元表示建筑業實際的三維幾何圖形,他們顯示再模型的相關視圖中。模型圖元有兩種類型包括主體圖元與模型構件,主體圖元可以獨立存在與模型中,不受其他構件存在與否的影響,其包括墻、樓板等,模型構件必須依附于主體圖元存在,包括樓梯、門等,模型構件又包括結構圖元與MEP 圖元。

2.2 基準圖元

基準圖元可以在空間和細節上表達項目場景中的模型,其包括軸網、標高和參照平面。

2.3 視圖專有圖元

視圖專有圖元有兩種類型,包括注釋圖元與詳圖,其中注釋圖元包括文字說明、標記等,詳圖包括詳圖線、填充區域等。他們都時模型表現的方法。

模型圖元是BIM信息繼承的載體,各種信息都動態的集中在模型圖元中,而模型圖元又是以各類構件的形式表現出來的。為滿足工程的需求,構件中信息可分為基本信息和擴展信息,其中基本信息是基礎新數據,而擴展信息是為了滿足工程需要加入的信息,需要通過對模型的信息進行擴展才能得到,見圖3。

圖3 Revit 圖元

3 模型數據提取與輸出的方法

3.1 信息的提取

對構件信息提取需要使用Revit API 的項目參數BuiltlnParameter 或者共享參數SharedParameter,項目參數特定于單一項目中,不能與其他項目進行共享,且不可用于多個項目之間的使用。共享參數則可以用于多個項目與族文件中,不僅可以在族文檔中定義與再定義參數,還可以實現項目參數的功能。共享參數的設定具有更高的普適性。如果項目需要在文件中建立明細表,且需要推廣到所有的項目中,可以采用共享參數來提取構件的參數化屬性信息。

3.2 信息的輸出

由于Revit 數據結構相對復雜,并不支持將模型構件信息導出Excel,需要通過二次開發將信息輸出到Excel 中。常用的輸出方法有三種,分別為NPOI 庫;Epplus 庫;COM組件。COM組件需要設備安裝Excel 軟件,在導出模型構件信息時需要考慮Excel 版本的問題。NPOI 與Epplus 都是開源的C#讀寫Excel 文檔的項目,它們都可以在沒有安裝Office 情況下對Excel 文檔進行讀寫的操作,NPOI 庫使用較少,因為相同數據結構的數據,Epplus 的導出能力遠比NPOI 強,除此之外,NPOI 庫支持Excel 的版本有限。如果需要大量屬性信息的輸出,可以采用Epplus 庫作為Revit 信息的輸出方法。

4 實例驗證

用于實例驗證的插件使用了項目參數BuiltlnParameter 提取信息,使用COM組件將信息輸出到Excel 中。其核心代碼如下所示。

此插件可以從模型中提取構件的族類型,位置信息與幾何信息,將提的取構件參數化屬性信息導入Excel表格。插件面板見圖4 所示。

圖4 插件示意圖

為了驗證插件的功能與上文提出理論,以Revit2017 建筑樣例項目(圖5)為例,在這個模型中含有建筑中常用的構件,包括墻、門、窗等構件。

圖5 Revit 2017 建筑樣例項目模型展示圖

從Revit 2017 建筑樣例項目中提取墻的信息,得到墻的族類型、標高、寬度與高度,見表1。

表1 樣例項目模型中提出墻的部分數據

5 結論

Revit 的二次開發功能為設計師創造了諸多便利,本文通過Revit 二次開發的功能,結合本文對模型構件信息分析與提出的模型構件信息提取與輸出的方法,設計出了一款模型構件信息提取插件,并且通過實例驗證了插件的可行性與本文提出方法的可靠性。通過這款插件可以導出工程所需構件的信息,滿足了一些工程對于模型構件信息進行大批量提取的需求。

猜你喜歡
二次開發信息模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
西門子Easy Screen對倒棱機床界面二次開發
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
3D打印中的模型分割與打包
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
基于Pro/E二次開發的推土鏟參數化模塊開發
主站蜘蛛池模板: 啪啪国产视频| 在线免费不卡视频| 伊人AV天堂| 亚洲国产午夜精华无码福利| 久久毛片免费基地| 亚洲一区二区三区麻豆| 亚洲第一在线播放| 免费高清自慰一区二区三区| 高清大学生毛片一级| 日本高清视频在线www色| 性激烈欧美三级在线播放| 欧美19综合中文字幕| 久久9966精品国产免费| 91精品视频在线播放| 日韩精品无码免费专网站| 一个色综合久久| 国产三级毛片| 日韩欧美在线观看| 91久久国产综合精品女同我| 五月天在线网站| 亚洲系列无码专区偷窥无码| 日韩国产综合精选| 成年免费在线观看| 伊人成人在线| 91蝌蚪视频在线观看| 国产精品太粉嫩高中在线观看| 无码AV动漫| 欧美日韩精品在线播放| 亚洲精品另类| 理论片一区| 又污又黄又无遮挡网站| 欧美一区精品| 亚洲国产天堂久久综合| 制服丝袜 91视频| 日韩经典精品无码一区二区| 色噜噜在线观看| 天天躁夜夜躁狠狠躁躁88| 91娇喘视频| 国产成人乱码一区二区三区在线| 亚洲黄网在线| 亚洲欧美日韩动漫| 成人精品午夜福利在线播放| 精品视频在线观看你懂的一区| 丁香五月婷婷激情基地| 欧洲成人免费视频| 成年女人a毛片免费视频| 91久久大香线蕉| 国产成人午夜福利免费无码r| 亚洲天堂久久新| 99热在线只有精品| 国产成人亚洲综合A∨在线播放| 国产又大又粗又猛又爽的视频| 内射人妻无套中出无码| 婷婷亚洲天堂| 亚洲精品在线观看91| 国产在线观看第二页| 色屁屁一区二区三区视频国产| 日韩无码真实干出血视频| 亚洲无线一二三四区男男| 国产91蝌蚪窝| 日本成人精品视频| 亚洲精品国产自在现线最新| 久久性妇女精品免费| 久久精品最新免费国产成人| 亚洲视频无码| 国产高清在线观看| 欧美一级黄色影院| 91精品国产情侣高潮露脸| 欧美在线视频不卡第一页| 激情午夜婷婷| 青青操国产| 乱码国产乱码精品精在线播放| 亚洲国产日韩视频观看| 一级不卡毛片| 国产在线专区| 国产成人av大片在线播放| 伊人激情久久综合中文字幕| 亚洲成人精品在线| 2048国产精品原创综合在线| 午夜福利免费视频| 亚洲人成人无码www| 99精品在线看|