




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
隨著BIM技術(shù)的發(fā)展,建筑領(lǐng)域圖紙逐步由二維圖紙轉(zhuǎn)變?yōu)槿S圖紙,建筑行業(yè)中越來越多的人員投入到BIM技術(shù)中,推動著BIM技術(shù)的發(fā)展,使其更加成熟。在二維圖紙轉(zhuǎn)化為三維圖紙過程中,由于數(shù)據(jù)量過大,人工進(jìn)行轉(zhuǎn)化與錄入將會提高工程成本,且錄入過程中也容易導(dǎo)致人為錯(cuò)誤,人工處理將會是一件事倍功半的方式。如何省時(shí)省力地將二維圖紙中的數(shù)據(jù)快速地轉(zhuǎn)化到三維模型中,成為需要解決的問題??梢酝ㄟ^將CAD數(shù)據(jù)信息快速錄入Revit平臺中為基礎(chǔ)的方式,深入研究CAD數(shù)據(jù)信息到Revit數(shù)據(jù)信息的轉(zhuǎn)化。1、Revit二次開發(fā)工具Revit與CAD軟件均為Autodesk公司的產(chǎn)品,Revit中也有對于CAD數(shù)據(jù)的讀取接口,但是Revit提供的數(shù)據(jù)讀取接口只局限與CAD圖層信息,對于CAD圖層中的數(shù)據(jù)未提供相應(yīng)的讀取接口與方法。通過對行業(yè)中CAD數(shù)據(jù)格式的研究,選擇第三方提供的Teigha開發(fā)包,Teigha開發(fā)包是OpenDesignAlliance(簡稱ODA)研發(fā)的核心圖形技術(shù)庫,支持多數(shù)據(jù)與CAD數(shù)據(jù)的交互轉(zhuǎn)化。同時(shí),在Revit二次開發(fā)中,可以采用Java、C#以及Python等語言,本次研究采用比較常用的C#語言,采用MicrosoftVisualStudio2017開發(fā)工具與Revit2016軟件,開發(fā)采用C#語言。2、Revit二次開發(fā)2.1
Revit二次開發(fā)特點(diǎn)Revit模型文件其本質(zhì)是一個(gè)數(shù)據(jù)庫,Revit二次開發(fā)主要解決模型數(shù)據(jù)量大,人工操作費(fèi)時(shí)費(fèi)工的問題,實(shí)現(xiàn)對模型數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行批量處理操作:增加、刪除、修改以及查詢,簡稱增刪改查。增是在模型中創(chuàng)建新的看得見的實(shí)體模型,或者對模型中的圖元添加看不見的類型或配置。刪是批量刪除不需要的元素,改是修改模型中元素的空間位置、狀態(tài)和各種屬性。查是獲取數(shù)據(jù)庫中存在的信息。通過二次開發(fā)也能夠完善Revit使用過程中的不足,能夠個(gè)性化去定制,滿足客戶的個(gè)性需要,其主要特點(diǎn)如下:(1)軟件功能集成化Revit二次開發(fā)能夠?qū)崿F(xiàn)Revit軟件沒有自帶按鈕工具的功能,通過二次開發(fā)可以實(shí)現(xiàn)Revit軟件操作步驟的合并,將多余步驟省略一步到位。在沒有Revit二次開發(fā)的情況下,對于Revit的操作與控制,只能用自帶的按鈕工具來進(jìn)行,超出軟件功能使用范圍無法操作,但通過二次開發(fā)可以實(shí)現(xiàn)。(2)數(shù)據(jù)處理批量化Revit二次開發(fā)能夠進(jìn)行大量的數(shù)據(jù)批量處理。人工對于重復(fù)操作,長時(shí)間都會出現(xiàn)疲勞,厭煩的情緒,容易出現(xiàn)人為錯(cuò)誤,利用計(jì)算機(jī)最擅長的快速重復(fù)操作的優(yōu)勢,Revit二次開發(fā)可以實(shí)現(xiàn)批量改族,批量布置族,批量提取信息,批量添加信息等,項(xiàng)目越大、批量操作越多,對于Revit二次開發(fā)就越有必要,越能凸顯開發(fā)的重要性。(3)流程自動化Revit二次開發(fā)可以按不同的需求,選擇合適的執(zhí)行流程:順序執(zhí)行、條件執(zhí)行以及循環(huán)執(zhí)行,自動化完成按照設(shè)定的流程。確定的工作流通過編譯,人工可以簡單操作按鈕就可實(shí)現(xiàn)。(4)數(shù)據(jù)標(biāo)準(zhǔn)化盡管Revit有許多格式可以導(dǎo)出,但是數(shù)據(jù)的丟失、適用性一直是個(gè)問題。想要導(dǎo)入或?qū)С鯡xcel,不能按照仔細(xì)需求進(jìn)行導(dǎo)出,或者導(dǎo)出的數(shù)據(jù)并不是自己想要的,或者不夠全;想要導(dǎo)出到其他軟件進(jìn)行結(jié)構(gòu)計(jì)算,出現(xiàn)構(gòu)件屬性的丟失,數(shù)據(jù)不能夠滿足計(jì)算要求;想要與數(shù)據(jù)庫進(jìn)行交互,無法進(jìn)行操作;想要做VR展示,模型數(shù)據(jù)可選擇性較低,展示效果差。而通過Revit二次開發(fā),可以將信息通道打穿,杜絕信息孤島,實(shí)現(xiàn)數(shù)據(jù)的標(biāo)準(zhǔn)化,滿足所有數(shù)據(jù)交互的需求。2.2
數(shù)據(jù)獲取與轉(zhuǎn)化基于Revit軟件的二次開發(fā)可以根據(jù)特定的需求進(jìn)行定制,Revit提供了基礎(chǔ)的開發(fā)接口(API),通過對鏈接到Revit模型中的CAD文件進(jìn)行訪問,獲取CAD文件中的圖層,此時(shí)獲得的CAD圖層,只是CAD圖層名稱,而沒有CAD圖層中所包含的文字?jǐn)?shù)據(jù)。通過調(diào)用Teigha開發(fā)包,對CAD文件的圖層信息進(jìn)行解析,獲取帶有定位信息的CAD文字?jǐn)?shù)據(jù),根據(jù)相應(yīng)的算法,按照需要進(jìn)行篩選處理,獲得準(zhǔn)確的數(shù)據(jù),再導(dǎo)入到模型中,實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)化與標(biāo)準(zhǔn)化。2.3
功能二次開發(fā)(1)開發(fā)環(huán)境配置Revit二次開發(fā)需要進(jìn)行開發(fā)環(huán)境的安裝及配置文件。1)Revit2016作為開發(fā)的基礎(chǔ)支持軟件與環(huán)境,使用最新版本交底的Revit軟件,便于后期二次開發(fā)代碼的維護(hù)與更新,可以向后兼容。2)VisualStudio2017VisualStudio2017作為微軟提供的軟件開發(fā)工具,使用于多語言開發(fā),提供了很多框架及內(nèi)置安裝包,可以按照需求調(diào)整,減少開發(fā)難度。3)RevitSDK2016RevitSDK是由Autodesk公司專門為Revit二次開發(fā)人員提供的工具,運(yùn)用SDK可以開發(fā)各種形式的插件。同時(shí),SDK文件中提供了Add—InManager插件、程序加載工具、示例代碼、RevitAPI使用說明等。4)配置AddinManagerAddinManager將編譯完成的代碼加載到Revit軟件中執(zhí)行。安裝完成RevitSDK后,需要對AddinManager進(jìn)行配置,以便的編譯后的代碼可以在Revit平臺環(huán)境中能夠測試與運(yùn)行。5)RevitLookupRevitLookup為Revit中模型對象的查看工具,也是基于Revit開發(fā)的插件,在開發(fā)時(shí)使用Lookup工具,可以提高程序的編寫效率。6)NSIS2.5.1NSIS是一款非常好用的編程工具,軟件的功能非常強(qiáng)大,集成了網(wǎng)絡(luò)上能夠收集到的大部分插件。用戶可以通過軟件來進(jìn)行一些編程設(shè)計(jì),支持大多數(shù)的編程語言。NSIS是“Nullsoft腳本安裝系統(tǒng)”(NullsoftScriptableInstallationSystem)的縮寫,它是一個(gè)OpenSource的Windows系統(tǒng)下安裝制作程序。它提供了安裝、卸載、系統(tǒng)設(shè)置、文件解壓縮等功能。NSIS通過它的腳本語言來描述安裝程序的行為和邏輯的,因?yàn)樗谀_本文件,所以可以完全控制安裝程序的每個(gè)部分。它的腳本語言支持變量、函數(shù)、字串處理,就像是一個(gè)普通的程序語言——但它是為安裝程序這類應(yīng)用所設(shè)計(jì)的,根據(jù)需要進(jìn)行腳本語言進(jìn)行軟件包制作。(2)功能實(shí)現(xiàn)通過RevitAPI提供的PickObject方法提取鏈接文件中CAD文件中的圖層信息,獲得CAD圖紙中的所有文字信息,通過類型篩選,將文字類型的數(shù)據(jù)進(jìn)行過濾提取,提取CAD文件中的房間名稱到Revit。
1)獲得CAD鏈接文件在Revit中新建模型,按照CAD圖紙建立包含功能房間的BIM模型,并利用Revit軟件自帶功能批量對功能房間統(tǒng)一命名為“房間”。將帶有房間名稱的CAD圖紙鏈接到Revit模型中,按照軸線定位一致,為實(shí)現(xiàn)從CAD文件中批量修改房間名稱做準(zhǔn)備。2)獲得CAD圖層中文字信息根據(jù)獲得的CAD文件,引用Teigha的.dll文件對圖層進(jìn)行解析分析,篩選出屬于屬性為文本的圖層,并對其中的文本進(jìn)行讀取。3)篩選與屬于房間名稱的文字關(guān)鍵代碼獲取CAD圖層中的文本信息后,不能直接賦值給Revit模型構(gòu)件,因?yàn)槲谋拘畔⒅写嬖谥罅康臒o關(guān)信息,通過篩選甄別后才是正確的信息。通過對大量的民用建筑圖紙的研究,功能房間存在著很多相同的關(guān)鍵字,可以通過這些關(guān)鍵字建立算法,實(shí)現(xiàn)對文本信息的篩選。4)錄入Revit模型在獲取鏈接CAD文本信息時(shí),將文本信息的位置也一起提取,便于將文字位置與Revit模型中的功能房間的位置進(jìn)行匹配。根據(jù)文字信息與功能房間位置相近的原理,建立位置算法,將文字信息與功能房間距離最近的兩者進(jìn)行匹配,完成對功能房間的改名。5)按鈕的功能從事BIM工作的人員一般均為Revit軟件使用者,不會編程語言,可對于開發(fā)的插件代碼看不懂或者不會使用。因此很有必要將開發(fā)的功能轉(zhuǎn)化為按鈕,從業(yè)人員不用懂開發(fā)直接使用按鈕就可以達(dá)到使用的目的。2.4
插件測試Revit二次開發(fā)實(shí)現(xiàn)的功能只是在開發(fā)階段中所用的項(xiàng)目完全適用,在改變使用環(huán)境因素的條件下,測試是否也同樣具有適用性。Bug測試按照問題等級分為崩潰、嚴(yán)重、一般以及建議四類,作為主要功能類主要重點(diǎn)測試,對Bug進(jìn)行排除,實(shí)現(xiàn)插件無問題運(yùn)行。2.5
安裝包制作利用Nsis軟件對所有開發(fā)文件進(jìn)行整合打包,形成.nsis文件,使用腳本對.nsis進(jìn)行編譯轉(zhuǎn)化,形成最終的插件安裝包。3
總結(jié)自BIM引入國內(nèi)以來,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 混凝土裂縫修補(bǔ)施工方案
- 飄窗造型施工方案
- 水電專項(xiàng)樣板施工方案
- 隔斷施工方案
- 愛國主題教育
- 培養(yǎng)創(chuàng)意設(shè)計(jì)能力的實(shí)踐課
- 高壓灌漿施工方案
- 安全管理月度工作總結(jié)
- 韶關(guān)鋁單板施工方案
- 課題開題報(bào)告:基礎(chǔ)教育公平與高質(zhì)量發(fā)展研究
- 2023-2024學(xué)年五年級科學(xué)下冊(冀人版)第4課露和霜(教學(xué)設(shè)計(jì))
- 《管理學(xué)》第一章-管理導(dǎo)論
- 2024年國考公務(wù)員行測真題及參考答案
- 宮頸癌與HPV疫苗知識科普宣傳
- 2024年全國國家版圖知識競賽題庫及答案(共200題)
- 二手車交易定金合同范本5篇
- NB∕T 10391-2020 水工隧洞設(shè)計(jì)規(guī)范
- 口腔主治醫(yī)師 《基礎(chǔ)知識》題庫及答案解析1000題
- HJ 651-2013 礦山生態(tài)環(huán)境保護(hù)與恢復(fù)治理技術(shù)規(guī)范(試行)
- 車輛進(jìn)出道閘車牌識別系統(tǒng)采購安裝調(diào)試合同樣本
- 2024年遼寧省中考模擬提升練習(xí)英語試卷
評論
0/150
提交評論