鮑英基,劉俊,鄧慶奧
(江蘇建筑職業技術學院交通工程學院,江蘇 徐州 221116)
隨著BIM技術在橋梁工程規劃、設計、施工和運營管理階段的廣泛應用,橋梁工程建設正向信息化和智能化發展。在公路、鐵路和城市道路的橋梁工程建設中采用較多的預制拼裝法也隨著BIM技術的應用轉型升級,預制梁場的信息化管理便是其中重要的一個環節。但是現階段的管理需要多種BIM軟件協同,而各種軟件間的格式又不一致,且BIM軟件多是桌面端,無法滿足用戶隨時隨地查看模型的要求,這些因素都阻礙了工程技術人員使用BIM技術的積極性[1]。
BIM輕量化是一種將BIM模型中的非幾何數據剝離減小模型的數據量,并轉化為Web三維引擎可以識別的數據格式,通過瀏覽器進行展示的技術[2]。使用者無須安裝BIM軟件,只須通過瀏覽器便可查看和管理BIM模型,大大提高了便利性。本文針對具體工程項目,利用Revit創建三維BIM模型,并將模型導出為IFC標準格式,利用Xbim進行模型的輕量化,最后通過WebGL技術實現模型的可視化開發,提高了預制梁場的管理水平。
模型開發的思路如圖1所示,首先通過BIM軟件Revit創建預制梁場三維BIM模型,然后將模型導出為IFC標準文件,通過Xbim對模型輕量化處理后再通過IFC導入Revit中,利用OBJ Exporter For Autodesk將模型導出為Three.js可識別的OBJ格式,最后對模型進行可視化開發。

圖1 輕量化模型開發思路
預制梁場BIM模型創建完成后,首先進行模型的輕量化。目前,常用的BIM平臺有Autodesk、Bentley、Dassault和Tekla等,各個平臺間的數據格式一般是不同的。即使在同一個平臺內,各個軟件間的格式也不全相同,例如,Autodesk公司的 Revit和 Navisworks,Revit的文件格式為 rvt、rfa、rte,Navisworks的文件格式為nwd、nwc、nwf。不同格式的文件間需要一個統一的標準,便于數據交換,這就是IFC(Industry Foundation Class)標準,它是由國際協同聯盟(IAI)提出的,旨在建筑行業不同專業或同一專業的不同軟件間共享同一數據源,從而達到數據的共享和交互。
IFC標準包括資源層、核心層、交互層和領域層[3]。如圖2所示,每個層次都包含一些信息模塊,這些模塊間遵循引用規則,即上層資源可以引用同層和下層資源,當上層資源的數據發生變化時不會影響到下層資源,保證了信息的穩定性[4]。

圖2 IFC4.標準框架
由BIM模型導出的IFC文件包含模型所有的信息,數據量較大,模型的輕量化需要對IFC文件進行解析。Xbim(eXtensible Building Information Modelling)是一個.NET開源軟件開發工具包,它可以進行IFC架構驗證、查詢數據提取語法、IFC數據剝離等。
本項目為272省道徐州至沛縣公路建設工程市區段,全線共橋梁34座,總長約6 647.96 m,根據施工方案共設2個預制梁廠。使用Revit創建了一工區預制場的三維模型,然后導出為IFC格式文件并加載到Xbim中,如圖3所示。

圖3 預制梁場IFC文件導入Xbim中
WebGL是一項在網頁上繪制和渲染三維圖形并允許用戶與之進行交互的技術,用戶不需要高性能的計算機而只用通過網頁就可創建和渲染三維圖形。WebGL是內嵌在瀏覽器中的,不需要安裝插件和庫就可以直接使用。WebGL的網頁包含3種語言,分別是HTML5(超文本標記語言)、JavaScript和GLSL ES(著色器語言),由于GLSL ES通常是以字符串的形式在JavaScript中編寫的,因此,WebGL僅需HTML文件和JavaScript文件[5]。
雖然通過WebGL可以創建三維圖形,但是直接使用WebGL編程十分復雜,而且GLSL ES語言有一定難度。Three.js提供了一個WebGL特性的JavaScript API,用戶不需要詳細地學習WebGL就可以創建三維圖形,對工程技術人員較為友好[6]。
Three.js除了可以創建三維模型外,還可以將已有的模型導入,支持的類型有obj格式等,因此,可以將Xbim輕量化后的模型再鏈接到Revit中,通過插件OBJ Exporter For Autodesk導出為obj格式,然后就可以順利地將模型導入Three.js中,如圖4所示。

圖4 Three.js中模型可視化開發
通過Three.js可以對模型添加紋理和材質、使用各種光源來裝飾場景、對三維場景進行高級后期處理以及添加三維文本說明等,實現了預制梁場模型的可視化開發。
BIM技術具有信息化和智能化的特點,在橋梁中的應用將會越來越廣泛,但傳統的BIM軟件對計算機硬件要求較高,而且不便于隨時隨地查看,因此,模型的輕量化將是BIM技術應用的一個重要方面。WebGL技術使用戶可以通過網頁進行三維圖形的開發和渲染,Three.js更是提供了強大的JavaScript API,使工程技術人員也可以很方便地進行可視化開發。