齊成龍
(中國鐵路設(shè)計(jì)集團(tuán)有限公司橋梁院,天津 300142)
三維設(shè)計(jì)技術(shù)是當(dāng)前計(jì)算機(jī)輔助設(shè)計(jì)的發(fā)展趨勢,在機(jī)械、建筑、化工、石油等設(shè)計(jì)行業(yè)已得到較為成功的應(yīng)用,并成為市場競爭的重要工具[1-2]。中國鐵路總公司提出:要建立以建筑信息建模(BIM)為主要技術(shù)框架,以鐵路工程全生命周期管理為目標(biāo)的工程信息化平臺(tái)和應(yīng)用模式[3],從而確立了BIM技術(shù)在鐵路設(shè)計(jì)中的地位。
模型是信息的載體,而三維建模又是BIM技術(shù)的基礎(chǔ)和難點(diǎn)。目前基于達(dá)索軟件的BIM設(shè)計(jì)大多采用“骨架-模板”的建模思想[4-5]。文獻(xiàn)[5]在使用“骨架-模板”方法建立混凝土框架箱涵BIM模型時(shí),“骨架”為與涵節(jié)頂部相對(duì)應(yīng)的坐標(biāo)系群,涵節(jié)為工程模板(Engineering Template),實(shí)例化過程采用達(dá)索action功能。這種方法雖然能夠?qū)崿F(xiàn)批量建模,但是由于工程模板的復(fù)雜內(nèi)部邏輯結(jié)構(gòu),導(dǎo)致實(shí)例化效率低下,同時(shí)由于這種復(fù)雜的內(nèi)部邏輯對(duì)各個(gè)環(huán)節(jié)的使用者均開放,也不利于傳遞過程中數(shù)據(jù)的穩(wěn)定。
為了避免上述問題,通過三個(gè)方面闡述了對(duì)框架箱涵建模方法的優(yōu)化。
1)優(yōu)化后的設(shè)計(jì)過程同樣遵循“骨架-模板”的建模思想,其骨架生成方法與文獻(xiàn)[5]相同,不再贅述。本文介紹了一個(gè)通過C#語言開發(fā)的數(shù)據(jù)轉(zhuǎn)換工具,該工具能夠以框架箱涵設(shè)計(jì)軟件 RCCAD生成的文本文件作為輸入,輸出作為骨架坐標(biāo)系批量生成必要條件的數(shù)據(jù)表格,此表格同樣可以作為在涵洞節(jié)段批量生成過程中的輸入數(shù)據(jù)。
2)使用達(dá)索/CAA二次開發(fā)語言創(chuàng)建一個(gè)框架箱涵主體結(jié)構(gòu)建模工具,嵌入到達(dá)索軟件內(nèi)部,通過用戶定義特征避免了工程模板的復(fù)雜內(nèi)部邏輯結(jié)構(gòu),并確保了數(shù)據(jù)的穩(wěn)定傳遞和建模效率。
3)CAA開發(fā)的框架箱涵主體結(jié)構(gòu)建模工具在生成主體結(jié)構(gòu)同時(shí),還生成了與端部涵節(jié)關(guān)鍵表面相平行的平面。建立一個(gè)用于生成框架涵端部擋墻及排水坡的工程模板,該工程模板以meta input的方式引入端部涵節(jié)關(guān)鍵平面,以design table的方式修改模型尺寸參數(shù),實(shí)現(xiàn)端部結(jié)構(gòu)的快速建模。
文獻(xiàn)[5]已經(jīng)介紹:在生成框架箱涵骨架前,需要一個(gè)能夠反映涵洞節(jié)段、基礎(chǔ)布置方式及結(jié)構(gòu)詳細(xì)尺寸的數(shù)據(jù)表格,該數(shù)據(jù)表格在以往的設(shè)計(jì)過程中是通過手動(dòng)輸入建立的,這也是影響建模效率的一個(gè)重要因素。
在通常的框架箱涵設(shè)計(jì)過程中使用的是RCCAD軟件,RCCAD軟件的輸出內(nèi)容除了二維涵洞布置圖,還包括一些用以描述設(shè)計(jì)結(jié)果的文本文件。針對(duì)傳統(tǒng)建模方式效率低下的問題,通過C#語言開發(fā)出一個(gè)數(shù)據(jù)轉(zhuǎn)換工具,該工具讀入這些文本文件,并結(jié)合用戶手動(dòng)輸入相關(guān)尺寸信息,最終實(shí)現(xiàn)涵洞數(shù)據(jù)表格的快速生成。其使用界面如圖1所示。
在文獻(xiàn)[5]所述的傳統(tǒng)建模方法中,為了建立整個(gè)涵洞的主體結(jié)構(gòu)模型,首先建立節(jié)段和基礎(chǔ)的模型,再將模型轉(zhuǎn)化為工程模板,最后使用action功能批量實(shí)例化工程模板。針對(duì)傳統(tǒng)方法的缺點(diǎn),本章介紹一個(gè)CAA二次開發(fā)成果,它能夠批量創(chuàng)建涵洞節(jié)段及基礎(chǔ)模型,并且所創(chuàng)建的模型是僅對(duì)用戶開放部分參數(shù)的自定義特征,不僅提高了建模效率,還有利于模型應(yīng)用過程中的數(shù)據(jù)穩(wěn)定性。本章重點(diǎn)分析該設(shè)計(jì)工具的開發(fā)思路。
圖1 數(shù)據(jù)轉(zhuǎn)換工具操作界面Fig.1 User interface of data transformation tool
Dassault Systemes提供了一種基于組件的定制開發(fā)機(jī)制,即組件應(yīng)用架構(gòu)(Component Application Architecture,簡寫為 CAA)。CAA采用面向?qū)ο蟮某绦蛟O(shè)計(jì)(Object-Oriented-Programming,OOP)思想,基于COM和OLE技術(shù),使CAA開發(fā)的程序代碼更加規(guī)范化和標(biāo)準(zhǔn)化,程序模塊更加具有獨(dú)立性和可擴(kuò)展性。CAA架構(gòu)如圖2所示,描述了 Dassault Systemes內(nèi)部模塊之間的關(guān)系?;贑AA架構(gòu),客戶也可以把定制開發(fā)的功能加入到達(dá)索系統(tǒng)中。利用CAA實(shí)現(xiàn)的客戶定制功能,無論從界面風(fēng)格和操作習(xí)慣,都可以達(dá)到與達(dá)索無縫集成的效果。用戶非常容易接受和使用[6]。
圖2 CAA架構(gòu)Fig.2 CAA architecture
根據(jù)框架箱涵設(shè)計(jì)過程的需要,設(shè)計(jì)出如圖3所示的用戶交互界面。該人機(jī)交互的框架涵設(shè)計(jì)工具采用達(dá)索/CAA語言二次開發(fā),直接嵌入到達(dá)索軟件內(nèi)部。具備以下幾個(gè)特點(diǎn):1)涵節(jié)及基礎(chǔ)裝配功能嵌入到達(dá)索裝配設(shè)計(jì)(Assembly Design)模塊中,涵節(jié)、基礎(chǔ)節(jié)段編輯功能嵌入到達(dá)索零件設(shè)計(jì)(Part Desgn)模塊中;2)數(shù)據(jù)表格與定位骨架在同一個(gè)幾何圖形集下,與骨架信息同時(shí)讀取;3)作為設(shè)計(jì)成果的所有涵洞節(jié)段和基礎(chǔ)模型與作為骨架的坐標(biāo)系關(guān)聯(lián),當(dāng)骨架坐標(biāo)系位置發(fā)生變化時(shí),模型的空間位置也同步發(fā)生變化。
圖3 涵洞裝配用戶交互界面Fig.3 User interface of whole box culvert assembly
該設(shè)計(jì)工具的操作流程如圖4所示,使用其進(jìn)行框架箱涵BIM設(shè)計(jì)時(shí)應(yīng)遵循以下幾個(gè)步驟:
圖4 操作流程設(shè)計(jì)Fig.4 Operation process design
1)設(shè)計(jì)準(zhǔn)備工作。包括創(chuàng)建骨架坐標(biāo)系等設(shè)計(jì)準(zhǔn)備工作,與文獻(xiàn)[5]中的傳統(tǒng)建模方法相同,不再贅述。所不同的是設(shè)計(jì)信息表格可以采用達(dá)索/CAA的數(shù)據(jù)轉(zhuǎn)換工具生成,并且,需要將生成的表格結(jié)果放置在用于存儲(chǔ)涵節(jié)骨架的幾何圖形集當(dāng)中。
2)選擇用于存儲(chǔ)涵洞節(jié)段骨架的幾何圖形集。選擇幾何圖形集后,程序會(huì)自動(dòng)識(shí)別并讀入存儲(chǔ)在幾何圖形集內(nèi)的涵節(jié)骨架坐標(biāo)系和涵洞設(shè)計(jì)信息表格。
3)選擇用于存儲(chǔ)涵洞基礎(chǔ)骨架的幾何圖形集。選擇幾何圖形集后,程序會(huì)自動(dòng)識(shí)別并讀入存儲(chǔ)在幾何圖形集內(nèi)的基礎(chǔ)骨架坐標(biāo)系。
4)選擇用于存儲(chǔ)涵洞模型的父級(jí)根節(jié)點(diǎn)。生成的所有模型零件將懸掛在該節(jié)點(diǎn)下。
5)修改交互界面中的其他參數(shù)值?!捌渌麉?shù)值”包括上下部結(jié)構(gòu)骨架坐標(biāo)系的前綴,和上下部結(jié)構(gòu)滿足IFC分類的零件模板name屬性值。因?yàn)閷?duì)于不同的用戶來說,其通過EKL語言生成的節(jié)段坐標(biāo)系名稱前綴可能各不相同,為了便于對(duì)坐標(biāo)系的識(shí)別從而與設(shè)計(jì)信息表格中的涵洞節(jié)段編號(hào)一一對(duì)應(yīng),CAA程序在此處自動(dòng)抽取幾何圖形集內(nèi)第一個(gè)坐標(biāo)系名稱的前綴用以過濾出有用的編號(hào)信息。為了防止骨架編號(hào)起始值不為1導(dǎo)致程序抽取的前綴錯(cuò)誤,程序?qū)⒋宋谋究蛟O(shè)置為可編輯,用戶可根據(jù)具體情況手動(dòng)修改。
6)生成涵洞結(jié)構(gòu)模型。當(dāng)所有必需的步驟均完成時(shí),對(duì)話框的OK按鈕即被激活,點(diǎn)擊后生成涵洞上、下部結(jié)構(gòu)模型。
7)修改涵洞上、下部結(jié)構(gòu)節(jié)段模型。在結(jié)構(gòu)樹中雙擊特征節(jié)點(diǎn)或者在模型窗口中雙擊模型,即可打開如圖5所示的涵洞、基礎(chǔ)節(jié)段特征修改窗口,此窗口能夠根據(jù)用戶個(gè)性化需求修改節(jié)段尺寸參數(shù)和端部坐標(biāo)系。
圖5 涵洞節(jié)段(左),基礎(chǔ)節(jié)段(右)模型修改窗口Fig.5 Modification window of culvert segment(left)and base segment(right)model
2.4.1 模塊設(shè)計(jì)
Dassault/CAA是基于COM技術(shù)進(jìn)行組織開發(fā)的,因此將該設(shè)計(jì)工具劃分為三個(gè)模塊來實(shí)現(xiàn)其功能,分別為界面模塊(User Interface Modulus)、節(jié)段拓?fù)淠K(Topological Modulus)和特征模塊(Feature Modulus),如圖6所示。
2.4.2 界面模塊
界面模塊用于用戶界面交互功能的實(shí)現(xiàn),分為創(chuàng)建工具條和創(chuàng)建用戶交互窗口兩部分。
工具條采用Add-in的方式添加,由于涵洞上、下部結(jié)構(gòu)裝配功能和涵洞、基礎(chǔ)節(jié)段編輯功能分別嵌入到裝配設(shè)計(jì)模塊和零件設(shè)計(jì)模塊中,因此,分別實(shí)現(xiàn)CATIAssyWorkBenchAddin和CATIPrtCfgAddin兩個(gè)接口。
首先創(chuàng)建用戶交互窗口Dialog文件,再通過對(duì)CATMmrPanelStateCmd類的派生,重載 GiveMyPanel方法,使派生類與用戶交互對(duì)話窗口Dialog文件關(guān)聯(lián)。重載BuildGraph方法,從而完成傳統(tǒng)交互窗口無法實(shí)現(xiàn)的對(duì)話流程操作。
Build Graph方法通過命令狀態(tài)(Command State)和代理(Agent)兩個(gè)關(guān)鍵元素來實(shí)現(xiàn)用戶與界面的交互響應(yīng)。代理分為兩種,CATDialogAgent代理用來獲取界面控件響應(yīng),CATFeatureImportAgent繼承自 CATDialogAgent,專門用來獲取特征。每個(gè)命令狀態(tài)中存儲(chǔ)了若干個(gè)代理,CAA對(duì)某一代理所接受的用戶操作進(jìn)行判別,來決定是否執(zhí)行不同命令狀態(tài)之間的轉(zhuǎn)換。最終實(shí)現(xiàn)了如圖4所示的程序躍遷流程。
圖6 模塊設(shè)計(jì)Fig.6 Module design
圖7 CAA建模流程Fig.7 Modeling process of CAA
2.4.3 特征模塊
涵節(jié)與基礎(chǔ)節(jié)段分別作為具有獨(dú)立幾何形狀的實(shí)體,代表這兩種實(shí)體的特征需要派生自達(dá)索提供的MechanicalFormFeature基類,并為其指定屬性。屬性分為兩種類型,定位坐標(biāo)系屬于特征類型的屬性,因?yàn)樽鴺?biāo)系是一個(gè)特征,節(jié)段各幾何尺寸屬于數(shù)值類型的屬性。
達(dá)索向用戶開放三種 CAA建模工具(Representation Modeler):幾何建模工具(Geometry Modeler),特征建模工具(Feature Modeler),物理建模工具(Mechanical Modeler)。這三種建模工具在用戶定義特征的創(chuàng)建和使用過程中起到重要作用,如圖7所示。
通過特征建模工具能夠得到該特征的抽象基類,此抽象基類僅對(duì)特征屬性進(jìn)行了聲明。物理建模工具用于定義此抽象基類,簡單來說就是物理建模工具使用一個(gè)類型接口(Type Interface)和一個(gè)工廠接口(Factory Interface)將抽象基類具體化。特征模塊需要完成的工作即是創(chuàng)建這兩個(gè)接口:
類型接口(Type Interface)包含若干個(gè)方法,這些方法的作用是對(duì)特征屬性進(jìn)行定義,使用戶借助類型接口能夠達(dá)到提取特征屬性值和對(duì)特征屬性賦值的目的。
工廠接口(Factory Interface)僅包含1個(gè)方法,此方法以屬性值作為輸入?yún)?shù),實(shí)例化得出以類型接口表示的特征結(jié)果。
2.4.4 節(jié)段拓?fù)淠K
節(jié)段拓?fù)淠K的作用是將特征模塊創(chuàng)建的以內(nèi)存數(shù)據(jù)表示的特征結(jié)果轉(zhuǎn)化為可視的拓?fù)湓煨汀?/p>
通過繼承CATIFmFeatureBehaviorCustomization接口,并重載此接口的Build方法,在本方法內(nèi)部運(yùn)行幾何建模工具來生成拓?fù)湓煨汀?/p>
作為達(dá)索內(nèi)部機(jī)制,當(dāng)系統(tǒng)執(zhí)行更新(Update)操作時(shí),CATIFmFeatureBehaviorCustomization接口的Build方法自動(dòng)被激活。作為承擔(dān)控制建模流程作用的模塊,界面模塊執(zhí)行以下流程:成功生成特征結(jié)果后,運(yùn)行更新操作,系統(tǒng)通過Build方法觸發(fā)節(jié)段拓?fù)淠K,從而生成與特征結(jié)果相適應(yīng)的可視化拓?fù)鋷缀涡螤睢?/p>
在生成節(jié)段拓?fù)湫螤顣r(shí),以特征屬性值作為輸入元素,這些輸入元素通過類型接口提供的方法獲取。
如圖8所示:每一個(gè)節(jié)段,包括上部結(jié)構(gòu)和基礎(chǔ),其端面法線方向即Y軸方向,與涵洞軸線方向不一致,這個(gè)斜交角度可以從涵洞數(shù)據(jù)表格中獲取。在本模塊,端部坐標(biāo)系除了用于確定模型空間位置,在生成截面關(guān)鍵點(diǎn)繼而生成幾何體的過程中也起到重要的作用。
如圖9所示:涵洞上部結(jié)構(gòu)截面由外圈和內(nèi)圈組成,分別用6個(gè)和8個(gè)關(guān)鍵點(diǎn)表示。作為特征屬性的涵節(jié)坐標(biāo)系,其原點(diǎn)和方向向量可通過CATMathAxis類的 GetOrigin,GetDirections方法獲取,繼而生成XZ平面。
圖8 節(jié)段及端部坐標(biāo)系Fig.8 Segment(left)and axis systems on their ends
圖9 涵洞上部結(jié)構(gòu)截面關(guān)鍵點(diǎn)Fig.9 Key points of the superstructure of culvert continuous girder section
拓?fù)鋵觾?nèi)部操作流程如下:
1)對(duì)屬于CATPlane類的XZ平面執(zhí)行GetParam方法,以涵洞節(jié)段斷面尺寸為參數(shù),生成CATSurParam類型的外圈關(guān)鍵點(diǎn),這些關(guān)鍵點(diǎn)均位于XZ平面內(nèi)。
2)使用 CATGeoFactory接口的 CreatePLine方法,以步驟1)生成關(guān)鍵點(diǎn)和XZ平面作為輸入?yún)?shù),生成同樣位于XZ平面的屬于CATPCurve類型的6根線,這些線由外圈6個(gè)關(guān)鍵點(diǎn)依次首尾相連得到。
3)使用CATCGMCreateTopSkin函數(shù),以步驟1)生成的XZ平面和步驟2)生成的外圈線組成的數(shù)組作為輸入?yún)?shù),生成CATICGMTopSkin類型的外圈蒙皮。
4)使用 CATCGMCreateTopPrism函數(shù),以步驟3)生成的外圈蒙皮和涵軸方向作為輸入?yún)?shù),以涵軸長度作為拉伸距離向涵軸方向拉伸,生成CATICGMTopPrism類型的拉伸體。
5)使用與步驟1)—步驟4)相同的方法生成內(nèi)圈拉伸體。
6)使用 CATCGMCreateDynBoolean函數(shù),以步驟4)和步驟5)生成的內(nèi)外圈體作為輸入?yún)?shù)執(zhí)行布爾減操作,生成CATICGMDynBoolean類型的涵節(jié)結(jié)果。
對(duì)于涵洞基礎(chǔ)節(jié)段,拓?fù)洳僮鞯牧鞒膛c上部結(jié)構(gòu)節(jié)段類似。不同的是,其截面只有一個(gè)由4個(gè)點(diǎn)組成的外圈,使用CATCGMCreateTopPrism函數(shù)執(zhí)行拉伸操作后,不再需要布爾減運(yùn)算。
一般情況下,框架涵每個(gè)端部包含大小里程側(cè)各一個(gè)擋墻及擋墻中間的排水坡共3個(gè)結(jié)構(gòu)。由于端部附屬結(jié)構(gòu)幾何構(gòu)造復(fù)雜,以拓?fù)湔Z言表示比較困難,同時(shí),與涵節(jié)相比,端部附屬結(jié)構(gòu)數(shù)量較少,因此,采用實(shí)例化工程模板的方式生成端部附屬結(jié)構(gòu)模型。為了克服工程模板實(shí)例化速度慢的問題,將涵洞每個(gè)端點(diǎn)的3個(gè)結(jié)構(gòu)封裝在一個(gè)裝配文件下,這樣,對(duì)于每個(gè)涵洞工點(diǎn)僅需執(zhí)行兩次實(shí)例化操作,從而提高了建模效率。封裝后的端部附屬結(jié)構(gòu)模型及其結(jié)構(gòu)樹如圖10所示。
圖10 框架涵端部附屬結(jié)構(gòu)模型及結(jié)構(gòu)樹Fig.10 Auxillary structure model on the end of culvert and its tree structure
由圖10可以看出:端部附屬結(jié)構(gòu)模型以6個(gè)平面作為輸入元素,這些元素分別代表最外側(cè)涵洞節(jié)段的幾個(gè)平面。而在圖11中,端部涵洞節(jié)段零件除了包括節(jié)段幾何體以外,還給出了6個(gè)平面,這6個(gè)平面分別與涵洞某些特定的結(jié)構(gòu)面平行。作為端部附屬結(jié)構(gòu)模板輸入元素的6個(gè)平面和端部涵節(jié)零件發(fā)布的6個(gè)平面是一一對(duì)應(yīng)的,并且具有相同涵義的平面其名稱也相同。這樣,在實(shí)例化端部附屬結(jié)構(gòu)工程模板時(shí),就能采用meta input的方式,不需手動(dòng)依次選擇6個(gè)輸入元素,僅選擇端部涵節(jié)零件即可完成模型實(shí)例化。
常用的框架涵節(jié)段按照孔徑可以區(qū)分為2,3,4,5,6 m幾種類型,每種孔徑對(duì)應(yīng)若干種凈高尺寸,而每一種凈高尺寸又對(duì)應(yīng)若干種角度選擇,對(duì)于有些孔徑的涵節(jié),邊坡坡率也可以作為一個(gè)劃分原則,以2 m孔徑為例,其類型劃分如表1所示。
圖11 端部涵節(jié)對(duì)外發(fā)布的平面Fig.11 Planes publicated by culvert segments
表1 2 m孔徑框架涵類型劃分Table 1 Types of culvert with a 2 m clear width
從表1可見:2 m孔徑涵洞僅有2,2.5 m兩種凈高選項(xiàng),其類型就包含了10種,如果考慮凈高選項(xiàng)更多的其他孔徑類型,涵節(jié)類型劃分就更加復(fù)雜。
作為端部附屬結(jié)構(gòu)重要部件的擋墻,其幾何形狀由多個(gè)尺寸參數(shù)確定。同時(shí),端部擋墻的尺寸參數(shù)值,與其緊密相連的涵節(jié)型號(hào)是一一對(duì)應(yīng)的。所以,可以采用與涵節(jié)類型相同的劃分原則列出擋墻尺寸參數(shù)表,該參數(shù)表如圖12所示,放在端部附屬結(jié)構(gòu)模型的關(guān)系節(jié)點(diǎn)下。
圖12 關(guān)系節(jié)點(diǎn)下的擋墻尺寸Fig.12 Parapet dimensions table on relation node
表格數(shù)值與擋墻端部附屬結(jié)構(gòu)的尺寸參數(shù)相關(guān)聯(lián),當(dāng)成功實(shí)例化工程模板以后,根據(jù)涵節(jié)孔徑、凈高、斜交角度等參數(shù)選擇并激活對(duì)應(yīng)的數(shù)據(jù)行,端部附屬結(jié)構(gòu)尺寸自動(dòng)與該行數(shù)據(jù)關(guān)聯(lián),刷新模型后,幾何形狀隨即與新的尺寸參數(shù)匹配更新。省去查尋標(biāo)準(zhǔn)圖中的設(shè)計(jì)數(shù)據(jù)并手動(dòng)依次輸入多種尺寸參數(shù)的繁瑣過程,提高了建模效率。
因此,對(duì)于端部附屬結(jié)構(gòu),采用“選擇端部涵節(jié)模型→實(shí)例化工程模板→激活對(duì)應(yīng)設(shè)計(jì)表格行數(shù)據(jù)→更新模型”的建模流程,可以高效、精確地建立涵洞端部附屬結(jié)構(gòu)模型。
本文介紹的這種高效、精確的框架箱涵BIM建模方法已在眾多鐵路工程中得到了應(yīng)用,例如牡佳客專BIM試點(diǎn)項(xiàng)目、京沈客專BIM試點(diǎn)項(xiàng)目、京雄城際BIM項(xiàng)目等。
采用這種建模方法,大幅度提高了鐵路框架箱涵的BIM建模效率和設(shè)計(jì)效率。
圖13所示為與地形相結(jié)合后的牡佳客專某框架箱涵模型??梢钥闯?,當(dāng)鐵路框架箱涵BIM模型與三維地形結(jié)合后,之前在二維設(shè)計(jì)過程中無法充分體現(xiàn)的各種設(shè)計(jì)要素能夠更加直觀的展現(xiàn)在設(shè)計(jì)人員面前。
圖13 框架箱涵模型與地形相結(jié)合Fig.13 Box culvert model combined with terrain
本文在文獻(xiàn)[5]所述的傳統(tǒng)框架箱涵建模方法基礎(chǔ)上,介紹了一套優(yōu)化的建模方法。
該方法仍然采用“骨架-模板”的建模思想,其骨架生成方法也與文獻(xiàn)[5]相同。對(duì)于骨架生成和節(jié)段實(shí)例化所需的數(shù)據(jù)表格,不再采用人工手動(dòng)輸入的方式生成,而是通過C#語言開發(fā)一個(gè)數(shù)據(jù)轉(zhuǎn)換程序,能以RCCAD文本文件為輸入條件,自動(dòng)生成數(shù)據(jù)表格。
文獻(xiàn)[5]當(dāng)中,涵洞節(jié)段及基礎(chǔ)模型采用工程模板的action實(shí)例化方法生成,為了避免這種方法效率低下且穩(wěn)定性不足的缺陷,使用CAA開發(fā)出一個(gè)框架箱涵建模工具,通過用戶定義特征避免了工程模板的復(fù)雜內(nèi)部邏輯結(jié)構(gòu),并提高了數(shù)據(jù)的穩(wěn)定傳遞和建模效率。
框架箱涵端部結(jié)構(gòu)包括擋墻和排水坡,其參數(shù)眾多、幾何構(gòu)造復(fù)雜,不適宜采用用戶定義特征的方式由CAA二次開發(fā)建模。所以,在優(yōu)化后的建模方法中,將端部附屬結(jié)構(gòu)封裝到一個(gè)裝配體中,采用工程模板的方式實(shí)例化。由于采用meta input的方式獲取工程模板輸入元素,并且通過設(shè)計(jì)表格的方式批量快速為幾何尺寸賦值,從而提高了建模效率。