姚 遠(yuǎn) 上海城建信息科技有限公司,上海 200020
Revit軟件是當(dāng)今BIM領(lǐng)域中被廣泛使用的建模軟件,其軟件內(nèi)擁有一套特有的“族”分類(lèi)機(jī)制,根據(jù)Revit模型“族”類(lèi)別的特性,雖然以房建專(zhuān)業(yè)為藍(lán)本設(shè)計(jì)的Revit內(nèi)置族分類(lèi)的方式無(wú)需對(duì)模型進(jìn)行加工和額外信息的添加,比較方便快捷,但是在某些類(lèi)型的工程領(lǐng)域,例如道路、橋梁、隧道等市政工程的BIM模型需要額外的信息將模型構(gòu)件進(jìn)行分類(lèi)、組織,即利用Revit軟件為模型構(gòu)件添加屬性并賦予相關(guān)屬性值的方式對(duì)模型進(jìn)行有效的組織和編碼。
利用Revit軟件中的項(xiàng)目參數(shù)設(shè)定功能,可對(duì)模型添加構(gòu)件參數(shù),但是必須要求所有構(gòu)件必須擁有一致的參數(shù)名稱(chēng),確保在后期應(yīng)用中計(jì)算機(jī)系統(tǒng)能正確識(shí)別相同的參數(shù)名以進(jìn)行規(guī)則解析和分類(lèi)。例如圖1中,在項(xiàng)目中添加了名稱(chēng)為“W1”至“W5”的項(xiàng)目參數(shù),并將參數(shù)歸類(lèi)于“常規(guī)”下,則項(xiàng)目中的所有實(shí)體構(gòu)件(圖中示例為樓板)的“常規(guī)”屬性下都擁有W1至W5參數(shù)。
圖1 Revit項(xiàng)目參數(shù)添加過(guò)后的構(gòu)件屬性
據(jù)前所述,編碼的目的與編碼體系的建立需滿足能對(duì)模型構(gòu)件的自動(dòng)分類(lèi),即模型不同層級(jí)的分級(jí)要求;并且需滿足一定的靈活性以應(yīng)對(duì)不同應(yīng)用場(chǎng)景。雖然編碼具有靈活性,但是同一項(xiàng)目下的所有模型及構(gòu)件需享有同一套編碼規(guī)則標(biāo)準(zhǔn),以便將相同項(xiàng)目中的所有構(gòu)件按照規(guī)則進(jìn)行分級(jí)分類(lèi)管理。因此在項(xiàng)目模型建立初期,應(yīng)當(dāng)制定一套全項(xiàng)目共享的統(tǒng)一編碼體系標(biāo)準(zhǔn),通常根據(jù)項(xiàng)目規(guī)模和應(yīng)用要求可制定4~8級(jí)的編碼級(jí)別,并且為了滿足編碼唯一性需要,通常規(guī)定或增加最后一級(jí)的編碼為序號(hào)碼,序號(hào)碼為分辨所有編碼級(jí)別都相同的同種構(gòu)件的身份識(shí)別碼。編碼規(guī)則中一般需說(shuō)明編碼的級(jí)別數(shù)量,各級(jí)別的名稱(chēng)、代碼范圍(或代碼列表)以及代碼所指代的實(shí)際意義。以某工程BIM應(yīng)用系統(tǒng)模型編碼規(guī)則為例:
(1)分類(lèi)編碼:模型分類(lèi)代碼采用4層多位組合代碼,代碼結(jié)構(gòu)如下:XX_XX_XX_XX
一級(jí)代碼為【樓層】代碼,主要表示設(shè)施設(shè)備所屬的樓層,以土建工程常用命名方式為準(zhǔn),如地下一層的代碼為B1。二級(jí)代碼為【專(zhuān)業(yè)】代碼,主要表示設(shè)施設(shè)備所屬的專(zhuān)業(yè),以工程專(zhuān)業(yè)分類(lèi)為準(zhǔn);根據(jù)工程運(yùn)維階段應(yīng)用需要,該級(jí)還可選擇增加本標(biāo)準(zhǔn)條款。三級(jí)代碼為設(shè)施設(shè)備【類(lèi)型】代碼,主要表示設(shè)施設(shè)備所屬的類(lèi)型,包含專(zhuān)用及非專(zhuān)用設(shè)施設(shè)備兩大類(lèi),均為兩位數(shù)字或字母編碼。四級(jí)代碼為設(shè)施設(shè)備【型號(hào)】代碼,主要表示設(shè)施設(shè)備的型號(hào),包含專(zhuān)用及非專(zhuān)用設(shè)施設(shè)備兩大類(lèi),均為兩位數(shù)字或字母編碼。
(2)序號(hào)編碼:第五級(jí)序號(hào)碼為一個(gè)工程項(xiàng)目中同種設(shè)施設(shè)備的【順序】號(hào)碼,采用數(shù)字型號(hào)碼表示,號(hào)碼從“1”開(kāi)始至“999”,可按設(shè)施建設(shè)或設(shè)備安裝的順序進(jìn)行編制。根據(jù)以上編碼規(guī)則示例,該項(xiàng)目采用了共為5級(jí)的編碼參數(shù)體系(前四級(jí)分類(lèi),第五級(jí)序號(hào)編碼),并且在前四級(jí)的樓層、專(zhuān)業(yè)、類(lèi)型、型號(hào)的編碼基礎(chǔ)上,采用最后一位序號(hào)碼的方式保證構(gòu)件在自定義編碼下的唯一性和可復(fù)用性。為了保證唯一性的條件,第5位序號(hào)碼不建議采用人工的方式錄入信息,對(duì)于大型的項(xiàng)目而言構(gòu)件可達(dá)上萬(wàn)個(gè),以人工的方式對(duì)于保證唯一性、多人協(xié)作的容錯(cuò)性等都存在著非常大的困難,因此可借助計(jì)算機(jī)進(jìn)行自動(dòng)編碼序列號(hào)成為解決此問(wèn)題的一項(xiàng)關(guān)鍵技術(shù)。
圖2 模型屬性參數(shù)序號(hào)編碼插件
圖3 經(jīng)過(guò)插件自動(dòng)化編碼后的構(gòu)件屬性
編碼規(guī)則所制定的序列號(hào)編碼需保證同種類(lèi)構(gòu)件的唯一性,因此此類(lèi)的編碼建議采用計(jì)算機(jī)自動(dòng)編碼的方式進(jìn)行。筆者針對(duì)此需求進(jìn)行了基于Revit API開(kāi)發(fā)的自動(dòng)編碼插件,可達(dá)到第五位序列號(hào)的按規(guī)則自動(dòng)生成唯一性編碼,并且對(duì)于模型的其他級(jí)別編碼進(jìn)行編碼合理性檢查,包括:①所有分類(lèi)編碼必須全部填寫(xiě),沒(méi)有填寫(xiě)編碼的均為無(wú)效編碼;②所有分類(lèi)編碼必須為特定位數(shù)編碼;③所有分類(lèi)編碼必須在設(shè)定的當(dāng)前代碼范圍內(nèi),超出范圍的均為無(wú)效編碼;④所有序號(hào)必須全部填寫(xiě),沒(méi)有填寫(xiě)編碼的均為無(wú)效編碼;⑤所有序號(hào)不超過(guò)三位編碼。
如圖2及圖3示意,經(jīng)過(guò)Revit二次開(kāi)發(fā)的自動(dòng)化編碼插件利用了Revit API中對(duì)于構(gòu)件的篩選、構(gòu)件屬性的識(shí)別以及賦值的功能,加以特定的編碼算法和對(duì)編碼規(guī)則的預(yù)定義,通過(guò)插件的界面設(shè)定,可識(shí)別和記錄項(xiàng)目中所有構(gòu)件的前四位人工編碼,自動(dòng)賦予第五位參數(shù)唯一的身份序號(hào)碼,將本需要以人工輸入方式去獲得的編碼進(jìn)行快速的計(jì)算機(jī)自動(dòng)化,減少了人工工作量以及人工錄入所帶來(lái)的潛在錯(cuò)誤性,對(duì)BIM模型的后期應(yīng)用具有較高的價(jià)值,可被其他類(lèi)型的BIM后期應(yīng)用廣泛借鑒。
Revit模型編碼技術(shù)可被應(yīng)用于對(duì)于BIM模型的構(gòu)件層級(jí)管理,即在應(yīng)用平臺(tái)上可讓用戶(hù)方便地根據(jù)工程專(zhuān)業(yè)、樓層、設(shè)施設(shè)備的類(lèi)型等屬性快速定位到某些相應(yīng)的構(gòu)件上,極大地提升業(yè)務(wù)工作效率,并且對(duì)不同的用戶(hù)都比較友好。如圖4所示,在該應(yīng)用平臺(tái)界面左側(cè)提供了一列構(gòu)件的管理層級(jí)樹(shù),不僅可顯示出在大場(chǎng)景地圖上所有的BIM工程,還可根據(jù)用戶(hù)需要,定位到某個(gè)工程的相應(yīng)樓層和專(zhuān)業(yè),為用戶(hù)在GIS地圖大場(chǎng)景下進(jìn)行多工程項(xiàng)目管理提供了非常貼近業(yè)務(wù)的層級(jí)管理方式,解決了Revit內(nèi)建族類(lèi)型不適用于地下工程的缺陷。
圖4 地下工程BIM應(yīng)用平臺(tái)中的模型管理層級(jí)樹(shù)(左側(cè))