劉子璇,李世森
(天津大學(xué) 水利工程仿真與安全國家重點實驗室,天津 300072)
目前,港口碼頭三視圖的繪制多用Auto CAD進行,但是用二維平面圖形表現(xiàn)港工建筑物遠不如三維模型清晰直觀[1]。因此,建筑信息模型(Building Information Modeling,簡稱BIM)逐漸得到了更廣泛的普及和應(yīng)用。建筑信息模型以工程項目的各項真實數(shù)據(jù)為基礎(chǔ)來建立建筑模型,通過參數(shù)化形式模擬仿真建筑物的幾何信息,以及材料、數(shù)量、造價等非幾何信息[2]。Autodesk Revit作為專業(yè)三維建模的BIM類軟件,它的基礎(chǔ)是族文件,通過關(guān)聯(lián)參數(shù)生成三維模型,具有2D和3D視圖功能。Revit還擁有豐富的族庫,用戶也可根據(jù)需要自己建立或修改族[3]。BIM技術(shù)帶來了二維設(shè)計向三維設(shè)計升級的巨大變革,提高了水運行業(yè)的信息化水平,促進了水運行業(yè)科學(xué)、綠色發(fā)展。
靳銘宇[4]系統(tǒng)地闡述了Autodesk Revit在中國的發(fā)展現(xiàn)狀。季景遠[5]介紹了Revit在高樁碼頭設(shè)計關(guān)鍵環(huán)節(jié)的使用方法,演示了用三維建筑模型(BIM)設(shè)計方法代替?zhèn)鹘y(tǒng)二維設(shè)計在港口工程設(shè)計中的應(yīng)用。王鵬[6]詳細介紹了一些高樁碼頭工程中特有的族的創(chuàng)建思路和參數(shù)化的方法,完成了高樁碼頭工程的完整三維信息化模型和動態(tài)展示。望毅、李銀發(fā)[7]對將BIM技術(shù)應(yīng)用于港口工程實現(xiàn)數(shù)字建造過程的可行性進行了研究探索。高琰哲、陶桂蘭[8]建立了基于BIM設(shè)計的碼頭構(gòu)件族庫,利用建立完成的族庫逐步搭建了高樁碼頭信息化模型。謝錦波、周國然[9]等人基于Revit軟件對高樁碼頭三維交互設(shè)計系統(tǒng)進行了二次開發(fā),闡明了系統(tǒng)開發(fā)思路和方法,并展示了系統(tǒng)的應(yīng)用效果。
重力式碼頭具有較好的耐久性、抗凍性能和抗冰性能,其承受地面荷載的能力以及對地面超載等的適應(yīng)能力都比其他形式的碼頭強[10]。重力式碼頭結(jié)構(gòu)形式簡單、所用鋼材量少、維修簡單且費用低,在國內(nèi)得到了廣泛的應(yīng)用[11]。迄今為止,在港口工程中BIM技術(shù)的應(yīng)用甚少,僅有的研究也都限于高樁碼頭。所以,在重力式碼頭參數(shù)化的研究中進一步應(yīng)用BIM技術(shù),有助于促進我國港口工程的科學(xué)高效發(fā)展。
本文建立的重力式碼頭沉箱族實現(xiàn)了沉箱三維模型的自動生成,該族庫應(yīng)用在實際工程中可以節(jié)約大量的人力物力。港口設(shè)計人員只需要在沉箱族中輸入沉箱的相關(guān)參數(shù)數(shù)據(jù),就可以快速生成相應(yīng)的沉箱模型,極大的提高了繪圖效率。同時可快速計算混凝土用量,且混凝土用量值會隨沉箱參數(shù)的改變做出相應(yīng)改變,可以幫助設(shè)計人員更好的對方案進行比選和對沉箱的造價進行預(yù)估。重力式碼頭沉箱族按照高度進行了分類并對相對固定的參數(shù)設(shè)置了默認值,大大減少了需要設(shè)計人員手動輸入的參數(shù),只需根據(jù)碼頭規(guī)模確定沉箱高度范圍,便可直接調(diào)用相應(yīng)模型,同時亦可以手工修改其中的默認值,省時省力,體現(xiàn)了沉箱族的人工智能特性。
重力式碼頭沉箱構(gòu)件是一種巨大的鋼筋混凝土箱,中間由隔墻隔開,成為若干艙格。重力式碼頭沉箱的艙格數(shù)量較多且內(nèi)部有加強角。
沉箱族的建立采用將沉箱的各部分進行實心拉伸并連接在一起的方法(由于Revit中空心拉伸不可作為嵌套族陣列,所以不能采用將實心沉箱主體進行挖空繪制箱格的方案)。
如圖1所示,為了沉箱模型建立的便捷性,將“單位箱格”作為沉箱繪制過程中陣列的基本單元,如圖中紅色邊框所示?!皢挝幌涓瘛被締卧姆秶鸀槌料涞呐摳駜糸L沿長度方向向兩邊分別延長橫隔墻寬度的一半、凈寬沿寬度方向向兩邊分別延長縱隔墻寬度的一半,上至艙頂、下至艙底(不含底板),并包含八個加強角?!皢挝幌涓瘛弊宓慕⒉襟E為創(chuàng)建參照平面,采用拉伸工具繪制加強角和四邊的墻體并與相應(yīng)參照平面鎖定,用標注工具對參照平面進行標注并且關(guān)聯(lián)相應(yīng)的參數(shù)。
圖1 重力式碼頭沉箱族“單位箱格”示意
繪制前后趾、前后壁、側(cè)壁、底板等的參照平面,采用“拉伸”工具繪制除“單位箱格”外的墻體,對墻體進行標注并和相應(yīng)參照平面鎖定。
由于重力式碼頭沉箱中“單位箱格”重復(fù)的數(shù)量較多,且在同一沉箱中結(jié)構(gòu)相同,所以采用“陣列”工具進行繪制。將“單位箱格”族在長度方向上進行陣列為“單位箱格長度方向陣列”族,為了保證陣列后陣列圖元可以隨“單位箱格”中各項參數(shù)的變化而改變,“單位箱格”需要作為嵌套族載入“單位箱格長度方向陣列”族進行陣列,并將兩個族的族參數(shù)進行關(guān)聯(lián)。再將該陣列族作為嵌套族,按照和上面類似的方法在寬度方向上進行陣列并進行對應(yīng)族參數(shù)的關(guān)聯(lián)。這樣就完成了“單位箱格”陣列的繪制。
Revit“陣列”工具要求陣列個數(shù)必須大于等于2,當陣列個數(shù)小于 2時軟件會出現(xiàn)報錯,無法進行正常陣列?!皢挝幌涓瘛痹陂L度方向上的陣列個數(shù)一般不會少于兩個,而“單位箱格長度方向陣列”在寬度方向上的陣列數(shù)個為“寬度箱格數(shù)”,可能為一個所以當寬度方向箱格為一排時需對陣列進行可見性設(shè)置。
將參數(shù)“單位箱格寬度方向陣列數(shù)”的公式定義為“if((寬度箱格數(shù))<2,2,(寬度箱格數(shù)))”,含義為當“寬度箱格數(shù)”的數(shù)值小于2時,“單位箱格寬度方向陣列數(shù)”為2,若不小于2,“單位箱格寬度方向陣列數(shù)”為“寬度箱格數(shù)”,這樣就解決了Revit軟件報錯的情況。
此時若寬度箱格數(shù)為2和1,參數(shù)“單位箱格寬度方向陣列數(shù)”都為 2,需要單獨載入“單位箱格長度方向陣列”為單個的情況,并對兩種情況進行可見性設(shè)置。將“單位箱格長度方向陣列單個”族載入到沉箱族中并放在陣列首個圖元的位置,再將其可見性與參數(shù)“箱格寬度方向_單個”進行關(guān)聯(lián),將“箱格寬度方向_單個”參數(shù)的公式設(shè)置為“寬度箱格數(shù)<2”,即在寬度箱格數(shù)小于2的情況下,“單位箱格長度方向陣列單個”可見。選中陣列組中的任意一個實例,將其可見性和參數(shù)“箱格寬度方向_多個”進行關(guān)聯(lián),并將“箱格寬度方向_多個”參數(shù)的公式設(shè)置為“not(箱寬度方向_單個)”,即在寬度箱格數(shù)大于等于2的情況下,“單位箱格長度方向陣列”可見。
這樣就完成了“單位箱格長度方向陣列”的可見性設(shè)置,寬度箱格個數(shù)大于等于2時,顯示單位箱格長度方向陣列;寬度箱格個數(shù)等于1時,顯示單個陣列,可見性參數(shù)設(shè)置見圖2。
圖2 “單位箱格寬度方向”陣列族參數(shù)設(shè)置界面
1)由于參數(shù)調(diào)試導(dǎo)致的報錯
修改參數(shù)時,可能導(dǎo)致邏輯約束出現(xiàn)差錯,產(chǎn)生軟件報錯;或者參數(shù)約束的應(yīng)該出現(xiàn)變化的圖元沒有產(chǎn)生相應(yīng)變化。
第一種報錯的原因是參數(shù)在約束圖元時產(chǎn)生了邏輯沖突,第二種報錯的原因是圖元有些邊沒有鎖定在相應(yīng)平面上,無法和參數(shù)約束的參照平面一起移動。解決方法為每次新繪制一個圖元并為圖元添加參數(shù)后應(yīng)及時進行參數(shù)的調(diào)整測試,觀察參數(shù)變化后圖元是否有正確的變化,以便及時發(fā)現(xiàn)問題并進行調(diào)整。
2)對參照平面進行約束時報錯
對參照平面的約束過多或重復(fù)約束時會出現(xiàn)過約束報錯,原因是同一個距離被兩個參數(shù)約束,解決方法為將有關(guān)聯(lián)的參數(shù)用公式表示,同時可以減少手工輸入的工作量。
3)陣列圖元參數(shù)變化引起的報錯
圖元陣列后,改變圖元的參數(shù)會出現(xiàn)軟件報錯,原因是圖元陣列后約束圖元的參照平面等并沒有一起陣列,其他陣列的圖元不會受到這些參照平面的約束,解決方法為將圖元作為一個整體嵌套族載入,就可以通過參數(shù)約束陣列組全部圖元。
4)陣列時圖元不能在某一方向上移動
幾個圖元一起陣列時,軟件報錯顯示有些圖元不能在這一方向移動,原因是有些圖元只能在橫向移動,有些圖元只能在縱向移動,解決方法為將這幾個圖元作為一個嵌套族載入另一個族,并作為整體進行陣列移動。
這四種解決方法已經(jīng)在本沉箱族的建立中實現(xiàn)。
重力式碼頭沉箱族的使用流程見圖3。
圖3 重力式碼頭沉箱族使用流程
重力式碼頭沉箱族可以通過輸入不同的箱格數(shù)及沉箱構(gòu)件尺寸快速建立出相應(yīng)的沉箱模型,使設(shè)計工程師在今后的設(shè)計中更加快速便捷的建立沉箱模型。下面以遼東灣某漁港重力式碼頭沉箱構(gòu)件設(shè)計數(shù)據(jù)為例,演示“重力式碼頭沉箱”族三維模型的快速生成。表1為遼東灣某漁港重力式碼頭的沉箱尺寸數(shù)據(jù)。
表1 遼東灣某漁港碼頭沉箱尺寸
首先在 Revit族中打開“重力式碼頭沉箱”族,在族類型對話框中輸入相應(yīng)數(shù)據(jù),見圖 4,族類型中灰色部分為可以用公式表示出的族類型,不需要輸入。點擊族類型對話框中的確定,即可快速完成遼東灣某漁港重力式碼頭沉箱的繪制,繪制完成的三維模型見圖5。
圖4 遼東灣某漁港碼頭沉箱數(shù)據(jù)界面
圖5 遼東灣某漁港碼頭沉箱三維模型
建立重力式碼頭沉箱族后用戶提供碼頭的尺寸、箱格數(shù)等數(shù)據(jù),就可以一鍵生成沉箱的 Revit三維模型。為了使碼頭設(shè)計工程師更加便捷的建立重力式碼頭沉箱三維模型,本文開發(fā)了重力式碼頭沉箱族的人工智能特性,對沉箱族按照高度進行了分類并對相對固定的參數(shù)設(shè)置了默認值,大大減少了需要設(shè)計人員手動輸入的參數(shù),設(shè)計人員只需根據(jù)碼頭噸級和吃水等數(shù)據(jù)確定沉箱高度范圍,便可直接調(diào)用相應(yīng)模型,省時省力。
本文根據(jù)重力式碼頭的設(shè)計經(jīng)驗,將沉箱族分為沉箱高度5~10 m、10~15 m、15~20 m、20~25 m、25~30 m、30~35 m六個類型,每個類型分別對應(yīng)不同的沉箱尺寸參數(shù)的默認值,用戶可以根據(jù)碼頭的規(guī)模選擇相應(yīng)的沉箱模型,同時可以根據(jù)碼頭實際情況在該經(jīng)驗值的基礎(chǔ)上進行調(diào)整。將沉箱族載入到項目中,六種族類型的三維模型如圖6所示。
圖6 沉箱族不同類型三維模型
本文重力式碼頭沉箱族中添加了計算混凝土用量的參數(shù)“混凝土用量”,單位為m3。該參數(shù)為共享參數(shù),載入到項目中后可以直接加入明細表中進行統(tǒng)計,見圖7。當沉箱任一參數(shù)發(fā)生改變時,“混凝土用量”值會隨即做出相應(yīng)改變?;炷劣昧拷y(tǒng)計可以幫助設(shè)計人員更好的對方案進行比選和對沉箱的造價進行預(yù)估。
圖7 混凝土用量族參數(shù)界面
本文探討了Revit在重力式碼頭沉箱族設(shè)計中的應(yīng)用,詳細介紹了沉箱族建立過程的思路、難點,以及沉箱族在三維碼頭模型繪制過程中的應(yīng)用,還介紹了Revit建模過程中容易出現(xiàn)的問題和解決辦法。研究表明:
1)使用嵌套族可以解決建模過程中很多參數(shù)化問題,如:圖元不能隨著參數(shù)的改變進行相應(yīng)變化,陣列時有些圖元無法一起陣列等。
2)陣列工具可大大減小繪圖的工作量,提高模型的參數(shù)化水平。當圖元陣列的個數(shù)有小于兩個的情況,需要單獨繪制一個圖元,并進行陣列個數(shù)公式的編輯和可見性設(shè)置,保證圖元可以以正常的數(shù)量顯示。
3)通過一個實際案例對所建立的重力式碼頭沉箱族的有效性進行測試,模型得到了直觀三維展現(xiàn),后續(xù)人員可簡單高效的利用該族進行重力式碼頭設(shè)計。同時沉箱族可以計算出沉箱模型所用混凝土量,方便設(shè)計人員更好的進行方案比選和對造價預(yù)估。
4)本文重力式碼頭沉箱族根據(jù)沉箱高度分為六種不同類型,都根據(jù)設(shè)計經(jīng)驗設(shè)置了默認值,設(shè)計人員可以直接調(diào)用模型或進行適當修改,大大減少了手工輸入的數(shù)據(jù),體現(xiàn)了沉箱族的人工智能特性。
5)三維重力式碼頭沉箱族模型直觀易懂,這樣可以使施工人員在施工過程中更明確的了解設(shè)計人員的設(shè)計理念和意圖,更快更好的完成項目的施工。