張 鋼,楊松林,張力小,張莉莎
(1.河北科技大學 機械電子工程學院,石家莊 050018;2.北京師范大學 環(huán)境學院,北京100875)
在化工企業(yè)的圖紙設計中涉及大量的管道設計,多數(shù)采用二維的設計方式。二維電子圖紙不易看懂,其中的錯誤很難被發(fā)現(xiàn),等到施工時才顯示出來,這給工程施工造成嚴重后果。二維的表達方式也給改建或擴建帶來不便。與二維設計相比,三維設計有利于全面考慮操作、檢查、安全的需要;容易發(fā)現(xiàn)施工時可能出現(xiàn)的問題,并事先獲得解決;有利于工程建設制定計劃、編制預算、劃分分包范圍。針對化工廠中的大量的二維電子圖紙,對其進行三維實體重建是很有必要的。
管道布置圖是在設備布置圖上增加了管道布置情況的圖樣。管道布置圖中所解決的主要問題是如何用管道把設備連起來。根據(jù)管道布置圖的特點可知,需要對其進行一定的預處理,內(nèi)容包括:
1)刪除多余信息:例如圖框、管架等。
2)重新表達:將雙管線用其中心線表示轉為單管線表達,重疊隱藏的管線重新表達清楚,刪除斷線號等。
3)工程語義的關聯(lián):采用建塊方法建立圖形與其屬性(工程語義)的關聯(lián),塊名按一定規(guī)則命名。
4)圖形分段處理:分別以主要設備為中心,手動將一組相關聯(lián)的視圖存放在不同名的.dwg文件中,文件名用主要設備名稱命名,將這樣的圖段叫做“子圖”,子圖中的各個圖形的位置和原來管道布置圖中相應坐標一致。
選擇VB為編程工具,采用AutoCAD作為圖形處理平臺,利用Access建立數(shù)據(jù)庫來存儲三維重建數(shù)據(jù)。VB通過ActiveX Automation技術[1]與AutoCAD進行接口和通信從而實現(xiàn)對AutoCAD的控制和操作,進而實現(xiàn)AutoCAD圖形的信息提取、存儲和圖形的建立等。利用VB強大的數(shù)據(jù)庫訪問功能將提取的數(shù)據(jù)信息按照一定的規(guī)則添加到Access數(shù)據(jù)庫中,以便三維重建時能夠從其中讀取所需信息。根據(jù)所存儲數(shù)據(jù)的內(nèi)容利用Access數(shù)據(jù)庫創(chuàng)建多個數(shù)據(jù)表,并創(chuàng)建它們的鏈接。利用ADO技術[2]可以實現(xiàn)Visual Basic對Access數(shù)據(jù)庫的訪問和數(shù)據(jù)交互更新等。
圖形識別和信息匹配是三維重建的一個重點也是難點,是根據(jù)二維工程圖,對圖形對象進行識別判斷,通過編程方法和用戶交互選擇方式實現(xiàn)圖形與工程語義的匹配及視圖之間的匹配,進而得到圖形對象所在的空間的位置和方位三維數(shù)據(jù)及其圖形對象本身的數(shù)據(jù)。
1) 圖形識別
根據(jù)對象名稱和線寬識別管道和一般彎頭。通過塊名識別管道標注、退化彎頭、三通、異徑管、閥門、儀表、附件和設備;通過塊的屬性值來判斷是何種閥門、儀表、附件或設備。
2)圖形匹配
管道往往由好幾個管段組成,管段之間是由閥門、儀表、附件、一般彎頭和異徑管連接的,管道標注只標注在其中的一個管段上。圖形匹配[3]方法是首先找與管道標注塊相交的且交點是管道標注塊基點的管段,直接把管道標注相關信息賦值相應管段,例如標高直接賦值給管段的Z方向值,把已匹配的管道標注刪除,給已匹配的管段賦予顏色以區(qū)分是否匹配。接下來需要對其它對象匹配,這里依據(jù)深度優(yōu)先搜索算法[4]原理沿管道方向的管段端點去遍歷圖形,識別其它對象并對它們進行匹配,通過管道端點的對象來判斷繼續(xù)還是終止搜索,例如對象是設備就會終止這個方向的搜索。最后把匹配的數(shù)據(jù)存入建好的數(shù)據(jù)庫中。
3) 視圖匹配
根據(jù)表達的需要,管道布置圖采用一組視圖:平面圖、剖視圖、向視圖和局部放大視圖。所有視圖都放在同一坐標下,為了還原它們在三維重建坐標系下的坐標,需要先在主視圖上確定三維重建的坐標系,通過人機交互選擇方式來對視圖進行匹配,然后對除主視圖以外的其它視圖進行坐標變換[5]。
三維實體重建基本思路:首先,通過編程方法結合化工三維圖形庫[6]和三維重建數(shù)據(jù)庫實現(xiàn)設備自動重建并準確在空間定位;其次,根據(jù)三維重建數(shù)據(jù)庫進行管道和管道連接件的三維實體重建;再次,實現(xiàn)閥門、儀表和管道附件的三維實體重建;最后,人機交互處理空間三維模型,例如與設備管口相連的直管段是由設備管口確定位置的,需要人機交互處理。
從三維重建數(shù)據(jù)庫得到管道的起點P1( X1, Y1, Z1)、終點P2( X2, Y2, Z2)和管徑D。根據(jù)這幾個參數(shù)可以得到管道半徑R,點P1到點P2的三維向量P,點P1和點P2這兩點的距離L,空間坐標系Z軸正方向的單位方向向量為Iz,向量P和向量Iz的向量積為向量H,選HAxis為向量H正方向上的一點,向量P和向量Iz的夾角為θ。
三維管道實體重建思路:首先在空間坐標下以原點繪制管道截面和拉伸路徑,在XY平面上以原點center ( 0 , 0 , 0 )為圓心,R為半徑繪制管道截面,以原點center ( 0 , 0 , 0 )和點 point_z ( 0 , 0 , L )為兩端點繪制拉伸路徑,建立三維實體管道,效果如圖1中a所示;然后以向量H正方向為旋轉軸旋轉三維實體管道,旋轉角度為θ,使管道中心線方向與向量P一致,效果如圖1中b所示;最后將三維管道移到P1點,實現(xiàn)空間三維管道的重建,效果如圖1(c)所示。
圖1 三維管道重建示意圖
三通和異徑管的重建方法與管道的重建方法類似,三通可以看成是兩個管道三維重建的疊加,異徑管可以看成是截面繞X軸旋轉生成三維異徑管實體,其它過程和三維管道重建過程類似。
彎頭三維實體重建思路:從三維重建數(shù)據(jù)庫得到圓弧的圓心C ( X0, Y0, Z0)、起點P1( X1, Y1, Z1)、終點P2( X2, Y2, Z2)和半徑r。根據(jù)這幾個已知參數(shù)建立一個參考坐標系,由參考坐標系和固定坐標系(空間坐標系)可以得到變換矩陣。假設將點C移到固定坐標系的原點,按照管道重建的方法建立三維彎頭實體,然后使用該變換矩陣[7]將彎頭三維實體進行幾何變換,最后完成彎頭的三維實體重建。
參考坐標系的建立方法:以點C ( X0, Y0, Z0)為坐標系原點,點P1( X1, Y1, Z1)為X軸方向上的一點,由該坐標系下的XOY平面上的另一點為P2( X2, Y2, Z2)可得Y軸正方向上的一點P3( X3, Y3, Z3)。根據(jù)立體解析幾何的知識知,CP1⊥ CP3,有
根據(jù)C、P1、P2、P3四點共面得
由于P3是Y軸正半軸上的任一點,假設其坐標滿足
由以上三個式子結合起來,可以得到X3、Y3和Z3的值,最終確定參考坐標系。
由于閥門、儀表、附件和設備在管道布置圖中都是用圖形符號表示的,無法對它們提取足夠的信息進行三維實體重建,所以必須建立相應的化工三維圖形庫以便管道布置圖的三維實體重建的調(diào)用。重建方法:由三維重建數(shù)據(jù)庫可以得到閥門、儀表和附件與管道的兩個交點(由這兩個點可以計算出安裝角度)、安裝平面和型號,設備的放置位置、放置角度和型號。根據(jù)型號調(diào)出相應閥門、儀表、附件或設備,由安裝位置和角度把其放置在相應空間位置完成閥門、儀表、附件和設備的三維實體重建。
圖2 管道布置圖的一個子圖
圖2為某石化集團有限公司50萬噸/年直柴脫酸精制改造的管道布置圖的一個子圖,現(xiàn)以此圖為實例說明其三維重建過程,對此子圖進行圖形識別、信息提取及匹配,將數(shù)據(jù)存放在三維重建數(shù)據(jù)庫中。根據(jù)上文的三維實體重建方法得到如圖3(a)所示,其中圖3(b)是(a)的一個局部放大效果圖,從(b)中可以看出管道和設備還沒有連接,這就需要對其進行人機交互處理,得到如圖3(c)所示的效果,完成這個子圖的三維實體重建。
圖3 三維實體重建實例
三維實體重建追求的目標是將化工二維管道布置圖進行批量轉換,直接將二維電子圖紙翻譯成三維立體圖,使用戶直接看到最終設計效果,它不僅對其在化工行業(yè)普及有重要的意義,而且對三維技術發(fā)展也具有重要的意義。
[1] 宋小春, 陸載涵, 趙大興.AutoCAD考試系統(tǒng)中圖形數(shù)據(jù)的提取和自動評分[J].湖北工學院學, 2002,17(3): 10-12.
[2] 徐楓, 馬國之, 劉良旭.基于ADO技術的數(shù)據(jù)庫訪問研究與實現(xiàn)[J].計算機工程與設計, 2004, 25(1): 107-110.
[3] 薛峰, 張燕, 趙盼.二維化工工藝管道圖的三維重建[J].科學技術與工程, 2010, 10(14): 3523-3526.
[4] 王力強, 常桂然, 王鳳, 申健.工廠管道設計軟件管段圖提取方法的研究[J].小型微型計算機系統(tǒng), 1998, 19(1):62-67.
[5] 趙曉峰, 孫靜波, 孔慶.面向三維重建的工程圖信息預處理的研究[J].計算機系統(tǒng)應用, 2008, 2: 47-49.
[6] 朱長江.工程設計中建立AutoCAD圖形庫新方法[J].武漢造船, 1999, 4: 36-38.
[7] 李清泉, 嚴勇, 楊必勝, 等.地下管線的三維可視化研究[J].武漢大學學報·信息科學版, 2003, 28(3): 277-282.