龔彥峰,程 巖,劉笑娣,王少鋒
(1. 中鐵第四勘察設(shè)計(jì)院集團(tuán)有限公司,湖北 武漢 430063; 2. 水下隧道技術(shù)國家地方聯(lián)合工程研究中心,湖北 武漢 430063; 3. 上海同巖土木工程科技股份有限公司,上海 200092; 4. 上海地下基礎(chǔ)設(shè)施安全檢測與養(yǎng)護(hù)裝備工程技術(shù)研究中心,上海 200092)
盾構(gòu)施工法以其機(jī)械化程度高、速度快已成為隧道建設(shè)最重要的施工方法[1]。目前管片結(jié)構(gòu)圖繪制由設(shè)計(jì)人員借助CAD軟件完成,而管片結(jié)構(gòu)空間形式復(fù)雜,各構(gòu)件并非規(guī)則圖形,需從不同角度進(jìn)行剖切與投影才能完整表達(dá)管片結(jié)構(gòu),同時(shí)管片幾何尺寸參數(shù)多,改變某一參數(shù)將導(dǎo)致設(shè)計(jì)人員不得不耗費(fèi)大量時(shí)間進(jìn)行全部重新繪制。人工繪制方法需要做大量的幾何運(yùn)算,計(jì)算繁瑣且繪制不夠精細(xì),存在著工作量大、易出錯(cuò)等缺點(diǎn)。
在隧道出圖方面,相關(guān)學(xué)者進(jìn)行了探索性研究。曾紅兵[2]針對(duì)油氣管道盾構(gòu)隧道進(jìn)行AutoCAD2004二次開發(fā),在VS2002平臺(tái)利用ObjectARX2004語言進(jìn)行隧道縱斷面繪圖;趙祥岍等[3]將Visual Basic語言與AutoCAD相結(jié)合,針對(duì)矩形隧道、圓形隧道與馬蹄形隧道定制通用隧道圖模板,實(shí)現(xiàn)自動(dòng)繪圖;劉濤[4]利用Visual Lisp語言對(duì)AutoCAD進(jìn)行二次開發(fā),編制盾構(gòu)隧道管片參數(shù)化設(shè)計(jì)程序;周建暉等[5]研究了現(xiàn)有公路隧道輔助設(shè)計(jì)軟件的思路和技術(shù)特點(diǎn),結(jié)合公路隧道設(shè)計(jì)過程的實(shí)際需要,提出了公路隧道輔助設(shè)計(jì)軟件的新思路,即建模和出圖采用參數(shù)式與交互式相結(jié)合,將計(jì)算、優(yōu)化與出圖集成統(tǒng)一;陳衛(wèi)軍等[6]通過研究參數(shù)化繪圖方法,提出參數(shù)化繪圖可以作為隧道CAD系統(tǒng)開發(fā)的主導(dǎo)思路,并以端式洞門設(shè)計(jì)部分為例說明了隧道CAD參數(shù)化繪圖的實(shí)現(xiàn)。
雖然針對(duì)隧道自動(dòng)出圖許多學(xué)者已進(jìn)行了研究,但存在以下不足:①以往CAD自動(dòng)出圖均基于AutoDesk平臺(tái)進(jìn)行開發(fā),界面不夠友好,操作不便;②所作插件受平臺(tái)及版權(quán)限制,適用性不強(qiáng);③隧道出圖均為簡單的輪廓圖形,涉及管片結(jié)構(gòu)出圖方面探究更為少見。針對(duì)以上問題,筆者進(jìn)行管片結(jié)構(gòu)自動(dòng)出圖研究,開發(fā)完全獨(dú)立于AutoDesk平臺(tái)相關(guān)軟件。
DXF(drawing exchange format,圖形交換格式)是AutoCAD 圖形文件標(biāo)記數(shù)據(jù)的一種表示方法。DXF文件具有ASCⅡ和二進(jìn)制兩種格式[7],其中ASCⅡ類型更為常見,便于使用,筆者所使用的DXF文件均指ASCⅡ格式。DXF文件在每個(gè)數(shù)據(jù)元素前都帶一個(gè)稱為組碼的整數(shù),組碼的值表明了其后數(shù)據(jù)元素的類型,本質(zhì)上DXF文件就是由組碼與組碼關(guān)聯(lián)的值組成,每個(gè)組碼和組碼對(duì)應(yīng)的數(shù)據(jù)條目各占一行。
完整的DXF文件由7個(gè)段(SECTION)構(gòu)成,分別為HEADER、CLASS、TABLE、BLOCK、ENTITIES、OBJECT。ENTITIES段為DXF文件最重要的部分,包含了所有實(shí)體對(duì)象的幾何信息。
各段均以0組碼以及組碼值SECTION開始,最后以組碼0以及組碼值ENDSEC結(jié)束,中間附帶其余組碼以及相應(yīng)的組碼值構(gòu)成各完整段,所有段組合構(gòu)成完整的文件。
實(shí)際工程中制作管片所需圖紙一般包括立面圖、千斤頂視圖、方向視圖與剖面圖。
管片立面圖包含了沿管片內(nèi)弧面方向視角信息。主要有管片寬度、弦長、管片標(biāo)志與對(duì)接面標(biāo)志以及注漿孔、拼裝定位孔、手孔、激光定位孔等,其示意圖如圖1。
圖1 管片立面(單位:mm)Fig. 1 Segment plan drawing
千斤頂視圖分為迎千斤頂與背千斤頂視圖,迎千斤頂視圖為沿盾構(gòu)掘進(jìn)方向視角所包含的信息。 主要有弧長、圓心角、縱向螺栓孔、管片環(huán)縫、凹凸榫等,如圖2,背千斤頂與迎千斤頂視圖呈對(duì)稱關(guān)系。
圖2 管片迎千斤頂視圖(單位:mm)Fig. 2 Segment facing jack side drawing
方向視圖分為左右兩個(gè)方向,如圖3為方向視圖的一種。包含了沿管片三維模型寬度方向兩個(gè)側(cè)面視角信息,主要有管片寬度、厚度、環(huán)向螺栓孔、定位棒槽等。
圖3 管片方向視圖(單位:mm)Fig. 3 Segment direction drawing
管片各結(jié)構(gòu)視圖僅可展示管片表面信息,對(duì)于管片結(jié)構(gòu)內(nèi)部則需沿三維模型不同位置進(jìn)行剖切之后,以剖面圖表達(dá)。通常沿管片三維模型橫縱中軸線以及孔洞處進(jìn)行剖切,橫剖面圖如圖4,縱剖面圖如圖5,主要為了展示具體的注漿管、手孔、拼裝定位孔等。
讀取DXF文件為解碼過程[8]。根據(jù)各段所對(duì)應(yīng)的關(guān)鍵標(biāo)識(shí)符,依次對(duì)文件進(jìn)行檢索,當(dāng)檢索到標(biāo)識(shí)符所對(duì)應(yīng)的段時(shí),即跳到該段進(jìn)行相應(yīng)的處理。讀取該段組碼所對(duì)應(yīng)的組碼值信息并存儲(chǔ)到定義的數(shù)據(jù)結(jié)構(gòu)中,如未搜索到該段則跳過。例如在文件中搜索到“TABLE”字段,即跳到TABLE段進(jìn)行數(shù)據(jù)處理,其中ENTITIES段為主要讀取對(duì)象。
圖4 管片橫剖面(單位:mm)Fig. 4 Segment cross section drawing
圖5 管片縱剖面(單位:mm)Fig. 5 Segment vertical section drawing
與DXF文件解碼相比,編碼實(shí)現(xiàn)所需的DXF文件流程要相對(duì)復(fù)雜,需要根據(jù)DXF組碼將所要生成的文件信息依次寫入組碼所對(duì)應(yīng)的組碼值中。對(duì)必不可少的組碼不能有遺漏,通過以下流程實(shí)現(xiàn)。
3.1.1 定義基本圖元
以組成結(jié)構(gòu)圖基本圖元為單位,預(yù)定義各圖元參數(shù),包括ENTIYIES段中出現(xiàn)的點(diǎn)、線段、圓弧、橢圓弧等,各圖元名稱和其所包含的字段以及類型見表1。
表1 圖元定義Table 1 Primitive definition
3.1.2 基本圖元賦值
在圖元基本參數(shù)定義基礎(chǔ)上,將組成文件的圖元賦予實(shí)際值。例如需生成一個(gè)圓心位于坐標(biāo)系原點(diǎn)、半徑為5的整圓DXF文件,首先定義Point(0,0),將圓弧圓心CenterPo實(shí)際值賦為Point,半徑值Radius設(shè)為5,起始角StartAng與終止角EndAng置為0與2π。同理針對(duì)不同圖元,將該圖元字段信息賦予實(shí)際值。
3.1.3 寫文件
以“寫”的方式將所需要生成的文件賦予完整路徑名稱,創(chuàng)建出一個(gè)空文件。根據(jù)DXF文件組碼格式,依次寫入7個(gè)段的信息,以ENTIYIES段為主,在寫入該段時(shí),將各圖元組碼和所對(duì)應(yīng)的組碼值即步驟2中預(yù)存儲(chǔ)的信息寫入。最后在文件末尾加上結(jié)束標(biāo)志。
布爾運(yùn)算技術(shù)是計(jì)算機(jī)幾何造型技術(shù)中構(gòu)造復(fù)雜實(shí)體最重要的內(nèi)容之一[9]。實(shí)際管片結(jié)構(gòu)圖構(gòu)件種類多,參數(shù)復(fù)雜,部分構(gòu)件幾何參數(shù)無法通過計(jì)算獲取,直接繪制難以確定各構(gòu)件具體位置信息。將復(fù)雜管片結(jié)構(gòu)圖根據(jù)構(gòu)件組成進(jìn)行分解,借助幾何對(duì)象的布爾運(yùn)算,通過平移、鏡像、旋轉(zhuǎn)等操作,可快速確定管片各構(gòu)件位置,最終將各構(gòu)件通過布爾求并運(yùn)算組成完整的管片結(jié)構(gòu)圖。
3.2.1 三維管片外輪廓提取
管片外輪廓提取本質(zhì)上為布爾運(yùn)算求交,管片三維模型如圖6。
圖6 管片三維模型Fig. 6 Segment three-dimensional model
由于管片外輪廓較為規(guī)則,針對(duì)管片不同結(jié)構(gòu)圖,通過幾何對(duì)象運(yùn)算即可提取出其外輪廓。
1)對(duì)立面圖,如圖7,通過計(jì)算管片內(nèi)外弧弦長結(jié)合管片寬度,可以確定外輪廓。
圖7 立面圖輪廓提取Fig. 7 Elevation profile extraction
管片外弦長:
|A1B1|=2Rsin(0.5θ)
(1)
管片內(nèi)弦長:
|C1D1|=2rsin(0.5θ)
(2)
式中:R為管片外半徑;r為管片內(nèi)半徑;θ為該塊圓心角。
結(jié)合管片寬度W,可選取中心點(diǎn)O1為基準(zhǔn)點(diǎn)(0,0),確定各角點(diǎn)坐標(biāo),提取立面圖外輪廓。
2)對(duì)千斤頂視圖,如圖8。
圖8 千斤頂視圖輪廓提取Fig. 8 Outline extraction of jack side drawing
外圓弧與內(nèi)圓弧起始角為:
(3)
終止角為:
(4)
選取圓心點(diǎn)O2為基準(zhǔn)點(diǎn)(0,0),點(diǎn)A2(XA2,YA2)坐標(biāo)參數(shù)XA2、YA2計(jì)算公式見式(5):
(5)
點(diǎn)B2坐標(biāo):
(6)
點(diǎn)C2、點(diǎn)D2坐標(biāo)將外半徑R替換為內(nèi)半徑r即可。
3)對(duì)方向視圖,以中心點(diǎn)O3為基準(zhǔn)點(diǎn)(0,0),厚度T為:
T=R-r
(7)
點(diǎn)A3、點(diǎn)B3、點(diǎn)C3、點(diǎn)D3坐標(biāo)參數(shù)分別為:XA3=-0.5T;YA3=0.5W;XB3=0.5T;YB3=0.5W;XC3=-0.5T;YC3=-0.5W;XD3=0.5T;YD3=-0.5W。
最終提取管片方向視圖外輪廓如圖9。
圖9 方向視圖輪廓提取Fig. 9 Outline extraction of direction drawing
對(duì)不同的剖面,根據(jù)剖切方向不同,其外輪廓與千斤頂視圖或方向視圖外輪廓提取方法相同。
3.2.2 二維幾何運(yùn)算
二維幾何運(yùn)算主要是圖元的平移、鏡像、旋轉(zhuǎn)等邏輯運(yùn)算以及線段與弧線求交。線段、圓弧、橢圓弧的邏輯運(yùn)算實(shí)現(xiàn)均以點(diǎn)為基礎(chǔ),分別將其圓心和端點(diǎn)進(jìn)行相應(yīng)操作即可實(shí)現(xiàn)。通過二維幾何運(yùn)算,可進(jìn)一步實(shí)現(xiàn)管片圖中各構(gòu)件的平移、鏡像、旋轉(zhuǎn)等,可以減少運(yùn)算量,大大提高出圖效率,以線段與圓弧為例進(jìn)行說明。
1)對(duì)線段平移,設(shè)A4B4端點(diǎn)分別為A4(XA4,YA4)、B4(XB4,YB4),需移動(dòng)方向向量V(VX,VY),則平移之后線段A′4B′4端點(diǎn)坐標(biāo)為:
XA′4=XA4+VXYA′4=YA4+VY
(8)
XB′4=XB4+VXYB′4=YB4+VY
(9)
2)對(duì)線段鏡像,如圖10,設(shè)線段A5B5端點(diǎn)分別為A5(XA5,YA5)、B5(XB5,YB5),選取的鏡像線C5C′5一般方程為:
a1x+b1y+c1=0
(10)
圖10 線段鏡像Fig. 10 Line mirror
根據(jù)鏡像之后點(diǎn)A′5與點(diǎn)A5相連直線A5A′5與鏡像線C5C′5垂直可求取A5A′5直線一般方程為:
a2x+b2y+c2=0
(11)
A5A′5與C5C′5聯(lián)立可獲取交點(diǎn)J5(XJ5,YJ5),根據(jù)點(diǎn)J5為A5A′5中點(diǎn)即可求取鏡像之后點(diǎn)A′5坐標(biāo)為:
(12)
3)對(duì)于線段的旋轉(zhuǎn),如圖11,以旋轉(zhuǎn)基點(diǎn)O′6(XO′6,YO′6)建立局部坐標(biāo)系。
圖11 線段旋轉(zhuǎn)Fig. 11 Line rotation
根據(jù)點(diǎn)A6(XA6,YA6),可獲取角度γ為:
(13)
線段O′6A6長為:
(14)
結(jié)合旋轉(zhuǎn)角β可求取旋轉(zhuǎn)之后點(diǎn)A′6局部坐標(biāo)系下坐標(biāo):
(15)
將點(diǎn)A′6坐標(biāo)移回整體坐標(biāo)系下即可得到A6點(diǎn)旋轉(zhuǎn)之后的點(diǎn)A′6,同理可獲取B6點(diǎn)旋轉(zhuǎn)之后點(diǎn)B′6,實(shí)現(xiàn)線段A6B6繞點(diǎn)O′6旋轉(zhuǎn)。
4)線段與弧線求交可將線段方程與相應(yīng)弧線方程聯(lián)立求解獲取交點(diǎn)坐標(biāo),設(shè)線段直線方程為:
a3x+b3y+c3=0
(16)
圓弧方程為:
(x-xo)2+(y-yo)2=r2
(17)
聯(lián)立可直接求解交點(diǎn)坐標(biāo)為:
(18)
直線與橢圓弧求交方法相同。
以實(shí)際管片縱剖面圖結(jié)合縱向手孔為例,介紹布爾運(yùn)算實(shí)現(xiàn)流程,設(shè)管片外半徑為4.25 m,管片內(nèi)半徑為3.85 m,管片環(huán)寬為1.6 m,手孔長L為280 mm,孔徑d為20 mm,手孔H8E′8長為55 mm,手孔軸線與B9C9夾角為60°,如圖12。
圖12 縱剖面圖豎向手孔布爾運(yùn)算Fig. 12 Boolean operation of vertical handhole in longitudinal section
1)根據(jù)管片方向視圖輪廓提取方法,以中心點(diǎn)O8(0,0)為基準(zhǔn)點(diǎn),以mm為單位進(jìn)行繪制,管片厚度為:T=4 250-3 850=400。
縱剖面角點(diǎn)坐標(biāo)A8為:XA8=-0.5×1 600=-800;YA8=0.5×400=200。
同理可得其余角點(diǎn)坐標(biāo):B8(800,200)、C8(800,-200)、D8(-800,-200),至此管片剖面輪廓提取完畢。
2)以點(diǎn)E8為基準(zhǔn)點(diǎn)E8(XE8,YE8),繪制豎向手孔,可設(shè)F8(XE8-10,YE8+10),F(xiàn)′8(XE8-10,YE8-280),G8(XE8+10,YE8-5),G′8(XE8+10,YE8-280),H8(XE8-
55,YE8-280),I8(XE8+55,YE8-280),J8(XE8-55,YE8-380),至此手孔各線段端點(diǎn)坐標(biāo)均已確定。
3)以點(diǎn)E8為基點(diǎn),將整個(gè)手孔繞點(diǎn)E8旋轉(zhuǎn)60°,并將旋轉(zhuǎn)之后線段F9F′9與B9C9求交獲取交點(diǎn)K9、G9G′9與B9C9求交獲取交點(diǎn)L9、H9J9與C9D9求交獲取交點(diǎn)J′9,H9I9與C9D9求交獲取交點(diǎn)I′9,確定旋轉(zhuǎn)之后新的手孔各線段端點(diǎn)坐標(biāo),完成縱剖面圖豎向手孔布爾運(yùn)算。
將管片結(jié)構(gòu)中不同類型構(gòu)件劃分為組,根據(jù)幾何特點(diǎn)進(jìn)行參數(shù)化定制。通過選取基準(zhǔn)點(diǎn),預(yù)定義所有構(gòu)件。在繪制完整管片結(jié)構(gòu)圖時(shí)將所需構(gòu)件通過平移、旋轉(zhuǎn)、鏡像等操作置于正確位置,以管片剖面圖中環(huán)向手孔和凹凸榫為例進(jìn)行說明。
目前國內(nèi)大型盾構(gòu)隧道管片環(huán)間一般采用斜螺栓形式[10],對(duì)環(huán)向手孔參數(shù)化定制如圖13。
圖13 管片環(huán)向手孔Fig. 13 Segment circumferential handhole
參數(shù)包括長度L1、L2、L3、W1、W2、W3以及角度ω,以點(diǎn)O10設(shè)為基點(diǎn)(0,0),則可得O′10(0,-L1)與A10(W1,-L1)。
以點(diǎn)O10為基點(diǎn),將直線O10O′10、A10C10、A10B10旋轉(zhuǎn)角度ω,并與管片內(nèi)側(cè)圓弧求交,獲取交點(diǎn)B′10、交點(diǎn)C′10,其余線段起點(diǎn)、終點(diǎn)均可以點(diǎn)O10為基點(diǎn)(0,0)結(jié)合線段旋轉(zhuǎn)獲取,實(shí)際管片繪制中通過輸入該構(gòu)件參數(shù)即可實(shí)現(xiàn)其參數(shù)化定制。
盾構(gòu)管片環(huán)縫設(shè)計(jì)中,接縫面通長設(shè)置凹凸榫保證拼裝精度[11],同時(shí)減少盾構(gòu)施工千斤頂作用下的混凝土破損。凹凸榫由線段和圓弧圖元組成,以凹凸榫中心為原點(diǎn),如圖14,設(shè)基點(diǎn)O11(0,0),根據(jù)長度L0、厚度T0以及內(nèi)半徑R0可得:
左右內(nèi)圓弧圓心,A11(-0.5L0,0);A12(0.5L0,0)
線段B11、B12點(diǎn)坐標(biāo):B11(-0.5L0,R0);B12(0.5L0,R0)
線段C11、C12點(diǎn)坐標(biāo):C11(-0.5L0,-R0);C12(0.5L0,-R0)
同理根據(jù)厚度T,可確定外圓弧各線段起點(diǎn)、終點(diǎn)坐標(biāo),實(shí)現(xiàn)其參數(shù)化定制。
圖14 管片凹凸榫Fig. 14 Segment rebate
在管片構(gòu)件預(yù)定基礎(chǔ)上,針對(duì)不同管片結(jié)構(gòu)圖,遵循從全局到局部,從重要決定性構(gòu)件到所關(guān)聯(lián)的構(gòu)件為原則,將組成管片結(jié)構(gòu)圖的構(gòu)件逐一進(jìn)行繪制。通過布爾運(yùn)算,將構(gòu)件繪制于其所在的管片結(jié)構(gòu)圖中正確位置,最終生成完整管片結(jié)構(gòu)圖。
C++程序語言提供了一種重要的類機(jī)制,包含了數(shù)據(jù)的定義和用于處理數(shù)據(jù)的方法,類之間通過繼承可以建立一種上下級(jí)關(guān)系[12]。對(duì)基本圖元建立的類框架體系如圖15。
圖15 幾何圖元類體系Fig. 15 Geometry primitive class system
通過基類派生出各個(gè)子類,子類可以繼承基類所擁有的操作,且各子類同時(shí)具有其獨(dú)特屬性和各自不同的操作方法。組子類可以理解為由點(diǎn)、線、圓弧、橢圓弧等一種或多種對(duì)象組成的子類。在實(shí)際管片繪制過程中,只需將組成管片結(jié)構(gòu)的各個(gè)基本圖元組成組類對(duì)象,組類對(duì)象在進(jìn)行操作時(shí)會(huì)根據(jù)不同的對(duì)象實(shí)現(xiàn)其所對(duì)應(yīng)的數(shù)據(jù)處理方法。面向?qū)ο竽K化編程可以大大提高編程效率。
軟件基于同濟(jì)曙光三維數(shù)字分析平臺(tái)(GEOFBA3D)進(jìn)行開發(fā),軟件主界面如圖16。
圖16 軟件主界面Fig. 16 Software main interface
管片基本幾何尺寸參數(shù)設(shè)置如圖17,可快速構(gòu)建管片基本模型,并采用參數(shù)化設(shè)計(jì),通過輸入出圖所需控制參數(shù)之后如圖18,可快速生成管片結(jié)構(gòu)圖。
圖17 管片基本參數(shù)設(shè)置Fig. 17 Segment basic parameter setting
圖18 管片構(gòu)件參數(shù)設(shè)置Fig. 18 Segment component parameter setting
以千斤頂視圖并結(jié)合具體的螺栓孔為例說明管片結(jié)構(gòu)圖的編程實(shí)現(xiàn):
1)以結(jié)構(gòu)體形式定義基本圖元,包括點(diǎn)、線段、圓弧、橢圓弧等。
2)根據(jù)DXF組碼格式,定義不同Entity實(shí)體對(duì)象,主要為Entity對(duì)象組碼賦值。
3)定義幾何類,包括基類和子類,并在各類中添加各成員變量,以及各種運(yùn)算與繪制DXF方法。
4)將整個(gè)千斤頂視圖定義為一個(gè)組類對(duì)象JackGroup,并求取組成千斤頂視圖的各子組的幾何圖元。
螺栓孔可以先確定圓弧中軸線位置處,創(chuàng)建出BoltGroup,根據(jù)螺栓孔組數(shù),將BolGroup進(jìn)行拷貝,并將拷貝出的螺栓孔對(duì)象通過旋轉(zhuǎn)置于正確位置,將所有單個(gè)螺栓孔對(duì)象添加到BoltHoleGroup中,組成完整的螺栓孔對(duì)象。
將輪廓OutLineGroup、凹凸榫RebateGroup、螺栓孔BoltHoleGroup添加至JackGroup中,組成完整的千斤頂側(cè)圖,如圖19。
5)在所有對(duì)象創(chuàng)建完畢之后,調(diào)用JackGroup繪制DXF的方法,將所有組對(duì)象包含的圖元屬性添加到Entity實(shí)體對(duì)象中,以“寫”方式創(chuàng)建空白DXF文件,調(diào)用Entity寫的方法,將所有對(duì)象組碼值寫入文件中,生成千斤頂視圖。
圖19 千斤頂視圖實(shí)現(xiàn)流程Fig. 19 Jack side drawing implementation process
以外直徑14.5 m、內(nèi)直徑13.3 m的某盾構(gòu)過江隧道為例,一環(huán)管片分為10塊,分別為封頂塊、相鄰塊與標(biāo)準(zhǔn)塊。選擇軟件出圖功能,輸入管片基本信息和各構(gòu)件參數(shù)之后,可快速自動(dòng)生成管片立面圖、千斤頂視圖、方向視圖與縱橫剖面圖,只需改變輸入?yún)?shù),生成的管片結(jié)構(gòu)圖會(huì)自動(dòng)調(diào)整。軟件生成的各類型管片圖如圖20~圖24。
圖20 立 面(單位:mm)Fig. 20 Elevation
圖21 迎千斤頂視圖(單位:mm)Fig. 21 Facing jack side drawing
圖22 方向視圖(單位:mm)Fig. 22 Direction drawing
圖23 橫剖面(單位:mm)Fig. 23 Cross section drawing
圖24 縱剖面(單位:mm)Fig. 24 Vertical section drawing
與目前人工借助CAD軟件繪制相比,在效率方面,使用筆者開發(fā)的軟件通過參數(shù)化設(shè)置斷面以及構(gòu)件,可在數(shù)十秒內(nèi)生成管片圖紙,而人工繪制則需要數(shù)天時(shí)間才能完成;在精度方面對(duì)于管片當(dāng)中某些復(fù)雜構(gòu)件,如圖25的手孔,人工繪制不夠完整精確,只能以示意圖進(jìn)行表達(dá),導(dǎo)致管片制作誤差較大,而該類構(gòu)件是實(shí)際應(yīng)用當(dāng)中管片防水以及拼裝關(guān)鍵部位,基于筆者布爾運(yùn)算方法利用開發(fā)軟件進(jìn)行提取繪制,其尺寸完全真實(shí),精度得到了提升。
圖25 管片手孔Fig. 25 Segment handhole
1)對(duì)DXF文件進(jìn)行解碼與組碼,定義各圖元參數(shù)將組成管片結(jié)構(gòu)的各構(gòu)件進(jìn)行參數(shù)化定制,將復(fù)雜的管片結(jié)構(gòu)圖分解為不同類型構(gòu)件。
2)通過幾何布爾運(yùn)算,提取管片結(jié)構(gòu)圖外輪廓并將各構(gòu)件拼裝組成管片結(jié)構(gòu)圖,生成工程所需管片圖紙。
3)基于曙光平臺(tái)利用C++程序語言進(jìn)行模塊化設(shè)計(jì),開發(fā)盾構(gòu)隧道管片結(jié)構(gòu)出圖軟件,實(shí)例證明,與人工繪圖相比,管片設(shè)計(jì)出圖效率與精度得到了提高,也為其余工程設(shè)計(jì)出圖提供新思路。