夏 宇,譚衢霖,2,蔡小培,秦曉春
(1.北京交通大學 土木建筑工程學院,北京 100044;
2.北京交通大學 線路工程空間信息技術研究所,北京 100044)
建筑信息化模型(BIM,Building Information Modeling)是一種應用于工程項目規劃、設計、建造、管理、運營的數字信息化工具[1]。通過建立虛擬的工程項目三維模型,利用數字化信息技術,為工程項目提供完整的、與實際情況一致的建筑工程信息庫,在工程項目全生命周期過程中進行共享和傳遞,為各建設主體提供協同工作的基礎。將BIM 技術運用到鐵路線路工程的設計中,可以實現工程項目的可視化管理、工程信息傳遞共享,從而提高鐵路線路工程的信息集成效率,保證工程質量,降低成本。文獻[2]研究了基于BIM的三維鐵路道岔各個組成部分和計算方法,設計可視化界面,實現了不同型號的三維道岔建模;文獻[3]研究了鐵路BIM三維場景的構建,建立了鐵路沿線地形、構造物、附屬設施等三維模型;文獻[4]利用Civil 3D 部件編輯器,擬合路線平、縱、橫斷面的隧道部件,建立了隧道參數化BIM模型;文獻[5]研究了基于VBA的軌道結構三維數字化的建模方法,對建立軌道結構參數化標準件立體庫方面進行了初步探索與研究。本文基于Autodesk Civil 3D部件編輯器(SAC,Subassembly Composer)研究自定義部件參數化信息模型的構建方法。
Civil 3D是一款面向基礎設施行業的BIM解決方案[6-7],它提供了強大的設計分析和信息管理功能,其數字化曲面建模功能廣泛適用于勘察設計、巖土工程、交通運輸、水利水電、市政工程等領域,可在各類工程設計對象之間建立智能化邏輯關系,設計人員通過智能對象動態地創建工程信息模型,便捷地把設計思路轉化成參數化模型。
部件作為其中一個重要組件,在道路、鐵路、管廊、輸電線等線性工程設計工作中發揮巨大作用,但Civil 3D 本身內置的部件模型多為公路模型,無法直接應用于鐵路工程設計,可通過軟件提供的SAC進行定制化開發。
SAC是一種以繪制流程圖的方式創建帶有復雜邏輯的自定義部件,通過可視化的軟件界面和參數驅動方法創建部件模型。SAC通過自定義表達式或者調用Civil 3D中提供的土木工程對象相關的應用程序編程接口(API)創建功能強大的裝配部件,不需要復雜的編程即可便捷高效地創建適用于各個專業的部件,并能實現批量出圖,從而提高設計效率。
基于Civil 3D構建鐵路線路部件模型,其核心步驟是使用部件進行鐵路橫斷面裝配設計。
部件是用于組成橫斷面的基本設計元素,例如軌道、橋梁、路基、邊坡、擋墻等[8]。部件是由點(Point)、連接(Link)、造型(Shape)3種基本單元組成:點是部件幾何形狀的頂點;連接是點之間的連線,通過點的坐標增量(水平增量dx和豎直增量dy)定義;造型是多個連接圍成的一個閉合區域。每個部件都可以由若干個點、連接和造型構成。
橫斷面的裝配基準樣式是由基準線和基準點構成[9]。裝配的基準線通常顯示為視覺輔助對象(標記),用于表示裝配基準點處的垂直軸,可以通過選擇基準線標記實現在基準點上附著部件;基準點是裝配上的一個點,通常表示控制路線附近裝配上附著的第一個部件的起點,位于道路中線和縱斷面設計線上,根據不同的橫斷面情況進行部件裝配。
不同的橫斷面形式需要不同的部件,Civil 3D提供了多種預定義部件,這些部件通過預設的邏輯判斷條件,結合目標曲面模型可以智能地適應復雜多變的橫斷面,例如當挖方或填方超過一定高度,模型自動添加邊坡平臺[10]。工程項目中橫斷面形式往往復雜多變,當預定義部件不能解決復雜、特殊的裝配問題時,Civil 3D提供了另外3種方法來創建自定義部件:(1)以CAD圖元的形式來創建;(2)通過C#和VB.NET API語言編程的方式來創建;(3)通過SAC的形式創建。3種創建自定義部件工具的比較分析如表1所示。

表1 部件創建方法對比
代碼(Code)是為部件中的幾何單元、點、連接、造型指定的具有特定工程含義的名稱。代碼的指定是創建連續部件的核心內容,部件中的每個基本單元可以指定多個代碼,不同的單元可以指定相同的代碼,擁有相同代碼的幾何單元沿著路線方向進行連接,形成連續的三維空間模型。點代碼控制要素線的生成,連接代碼控制路線三維帶狀面的生成,造型代碼控制道路三維空間實體的生成。
基于SAC創建自定義參數化部件一般需要以下步驟:定義部件變量參數、添加幾何圖元、關聯幾何圖元、編輯部件、定義代碼、修改參數驅動圖元、調試運行,如圖1所示。

圖1 SAC部件創建流程圖
(1)對于擬構建的部件模型,根據其幾何形位和邏輯關系定義部件參數變量,指定參數數據類型(如坡度、斜率、超高等);定義數據類別為輸入參數或輸出參數;對參數進行賦值。
(2)添加幾何圖元,將幾何圖形元素(點、連接、造型、輔助點、曲線、插值點等)從工具箱拖放至流程圖中。
(3)根據圖元元素間的幾何關系,用命令(如Angle and Delta X(Y)、Angle and Distance、Delta X on Surface、Interpolate Point、Slope and Delta X(Y)、Slope to Surface等)將幾何圖元元素進行關聯。
(4)分析各個圖元間的邏輯關系,通過編寫API函數表達式進一步完善部件復雜幾何關系。
(5)對圖元進行代碼編寫,沿線路走向構建連續的參數化模型,通過代碼將其連接,實現三維空間實體的生成。
(6)適當調整部件參數變量或函數關系,驅動圖元可實現不同斷面參數部件模型的快速構建。
(7)將部件在Civil 3D中調試運行,最終完善部件模型。
Civil 3D內置的單線有砟軌道部件中,鋼軌和軌枕用簡單幾何形狀近似代替實際結構,難以滿足精細化建模的要求。基于SAC按照Ⅲ型混凝土軌枕、60 kg/m鋼軌進行單線有砟軌道部件精細化建模,依次對道砟、底砟、軌枕、鋼軌進行建模。
3.1.1 道砟結構
(1)定義軌道坡度、軌枕間距、軌枕縱向長度、軌距、粗砟邊坡等參數變量,根據道砟寬度、道砟厚度、道砟坡度等參數設計道砟結構;(2)根據底砟邊坡、底砟寬度等參數設計底砟結構。
3.1.2 軌枕結構
軌枕結構為不連續模型,根據軌枕縱向長度L1及軌枕間距參數L2,按樁號位置判斷是否設置軌枕,定義變量并編寫VB表達式。對變量X進行判斷,當X>0且X 表2 軌枕結構主要參數及表達式 圖2 軌枕構建流程 3.1.3 鋼軌結構 根據軌枕結構幾何關系,按照60 kg/m鋼軌的軌底、軌腰、軌頭幾何尺寸、標準軌距(1 435 mm)等形位關系分別構建左右鋼軌結構,進行鋼軌結構參數化建模。編寫所有圖元的代碼,生成連續的三 維空間實體模型,單線有砟軌道部件如圖3所示。 圖3 單線有砟軌道部件 將SAC中構建的單線有砟軌道部件保存為.pkt文件并導入到Civil 3D中進行部件裝配,在三維場景模式下進行渲染,三維軌道部件模型如圖4所示。 圖4 三維軌道部件模型 基于SAC進行多級邊坡參數化建模,建模流程如圖5所示。 圖5 多級邊坡部件創建流程圖 3.2.1 單級邊坡構建多級邊坡應先進行單級邊坡設計。(1)進行填挖方判斷,創建目標曲面,根據裝配點到地形曲面的空間距離判斷填挖方(API函數:p1.distance to surface(地形曲面)>0時為填方,p1.distance to surface(地形曲面)<0時為挖方);(2)定義邊坡高度、挖方坡比、填方坡比等變量,添加幾何圖元。創建輔助點AP1,根據幾何關系判斷邊坡形式,將輔助點根據填方坡比放坡到地形曲面點AP1,計算h值并與定義變量邊坡高度相比,若h≤H為單級邊坡;若h>H則需設置多級邊坡(API函數:math.abs(p1.y-ap1.y) 3.2.2 多級邊坡 圖6 設置輔助點判斷邊坡形式 設計多級邊坡時,對平臺寬度和平臺坡度進行定義變量,設置判斷函數判斷平臺類型。分別計算P2、AP2點到地形曲面的豎向距離Y1、Y2,若Y1Y2>0,則為半寬平臺,直接放坡到地形曲面;若Y1Y2≤0,則為全寬平臺,Y1Y2<0時需繼續進行放坡,此時,ap2點與p3點重合,以p3點為新的放坡點,進行嵌套結構設計,逐級進行放坡。主要實現函數如下:p2.distance to surface(地形曲面)*ap2.distance to surface(地形曲面)<0為半寬平臺,p2.distance to surface(地形曲面)*ap2.distance to surface(地形曲面)>0 or p2.distance to surface(地形曲面)*ap2.distance to surface(地形曲面)=0為全寬平臺。本文以構建四級邊坡模型為例,當構建完成第3級邊坡的全寬平臺,對第4級邊坡直接放坡到地形曲面。如實際工程需要,可繼續進行設計放坡嵌套結構,實現更高級數邊坡的建模。判斷平臺形式如圖7所示。 圖7 設置輔助點判斷平臺形式 修改完善部件代碼,逐一對幾何圖元進行代碼編輯,賦予部件屬性,構建連續部件的模型。可對定義的變量進行參數設定,快速建立多種參數化多級邊坡形式。在Civil 3D中導入多級邊坡部件調用裝配,調試運行,將多級邊坡部件與地形曲面相融合可精確計算填挖方工程量,多級邊坡部件如圖8所示。 圖8 Civil 3D多級邊坡部件 隧道部件構建以單線單洞為例進行參數化設計,構建如圖9所示的隧道輪廓,隧道部件構建流程如圖10所示。 圖9 隧道襯砌內輪廓圖 圖10 隧道部件創建流程圖 3.3.1 隧道輪廓 確定各圓弧的圓心。如圖9所示,定位隧道中心點,根據隧道輪廓各圓弧間相切的關系依次確定圓 心O2、O1、O4、O3。 定 義 變 量R1、R2、R3、R4、L1、h1及襯砌厚度d。添加輔助點AP1定義隧道中心,根據圖中幾何關系及定義變量依次確定圓心O2、O1、O4,最后根據圓弧相切的幾何關系求出O3相對隧道中心點的坐標,求解過程如下: 設O2(x2,y2),O3(x3,y3),O4(x4,y4) 其中: 將式(3)帶入式(1)中,得: 式(4)可表示為: 其中: 可得圓心O3的坐標: SAC中確定圓心O3的坐標主要實現函數見表3。 確定各圓弧的端點,根據圓心位置及變量R1、R2、R3、R4參數關系,采用內差點定位各段圓弧端點位置,設置圓弧依次連接各端點構造隧道襯砌內輪廓線,內輪廓完成后,可在適當范圍內修改圓弧參數,實現內輪廓的動態變化和參數化建模。根據變量襯砌厚度d和隧道外輪廓幾何關系構造隧道襯砌外輪廓線。明確上下曲面分界點,對隧道部件幾何圖元逐一進行編碼、調試運行。 表3 圓心O3的坐標主要實現函數 3.3.2 建筑限界 根據客貨共線鐵路直線建筑限界的幾何尺寸,在隧道輪廓部件的基礎上,根據幾何尺寸繪制客貨共線鐵路限界。鐵路限界可與通風設備、照明設備等附屬設施進行碰撞檢查。圖11為含有客貨共線鐵路限界的隧道輪廓。 圖11 參數化隧道部件(含客貨共線鐵路限界) 修改完善部件代碼,逐一對幾何圖元進行代碼編輯,賦予部件屬性,構建連續部件的模型。在Civil 3D中導入隧道部件調用裝配,調試運行。如圖12所示為隧道部件。 圖12 隧道部件 本文基于Civil 3D部件編輯器構建的鐵路BIM部件模型可與地形曲面相融合,創建參數化定義的動態三維信息模型。利用創建的自定義組件,以交互設計的方式變更用于定義橫截面的輸入參數即可快速修改完善鐵路部件模型。通過SAC可視化的軟件界面和參數驅動方式創建部件,可實現復雜鐵路線路結構的斷面構建,在公路、水利、管廊等其它領域,各專業都可以創建自定義部件滿足設計需要,為設計人員提供了一種新的建模思路。BIM 理念貫穿項目全生命周期,涉及多軟件平臺交互協同工作,下一步將深入研究各階段模型精度要求和信息傳遞方式,更好地實現數據信息共享。



3.2 多級邊坡部件構建




3.3 隧道部件構建










4 結束語
