OpenCascade HLR for Pipe Model
eryar@163.com
摘要Abstract:在工廠輔助設計(Plant Design)或船舶輔助設計(Ship Design)等CAD設計軟件中建完模型后都會出安裝圖或制作圖,這也是這類輔助設計軟件的最終的一個輸出,還有再就是輸出材料數據用來對物資進行管理。OpenCascade提供的Hidden Line Removal算法可以對模型進行隱藏線消除,此功能可用來生成制作圖和安裝圖。本文通過實例演示了HLR算法的效果。
關鍵字Key Words:OpenCascade, HLR, Hidden Line Removal,Pipe Model, Plant Design CAD, Ship Design CAD,
一、引言 Introduction
OpenCascade的造型算法中有HLR(Hidden Line Removal)可用來去除在某個方向上投影生成的隱藏的線。這個功能實現了工業設計CAD中生成安裝圖或制作圖時需要去掉隱藏線的需求。對HLR算法感興趣的讀者可以結合OpenCascade的源程序來對其實現進行研究。
在工廠設計系統(PDMS)或造船生產設計系統(Marine Design)中都要生成安裝圖或零件制作圖,這些圖紙都是根據模型自動生成的。生成之后需要消隱和標注,其中標注的內容有管路號、管零件號、尺寸、標高等等。將三維模型沿一個方向投影后去除隱藏線的算法可用來生成二維的安裝圖或零件制作圖紙。
下面通過具體實例來演示OpenCascade中的HLR算法。
二、程序演示 Program Demo
在工廠設計和船舶設計系統中都有對管路的建模和出圖,下面將從ModelDataExchange中導出的管路模型在OpenCascade中進行HLR看看從三維投影到二維的效果。
Figure 2.1 HLR with Hidden Line in Blue
Figure 2.2 HLR for Valves
圖2.2中的藍色部分的線是被擋住的線,可以去除。
Figure 2.3 Top Projection HLR
Figure 2.4 Top Projection without Hidden Line
Figure 2.5 Top Projection in Single Line
Figure 2.6 Projection in arbitrary direction
Figure 2.7 Projection in arbitrary direction
上面的程序演示中左邊的3D視口中顯示的為管路的三維模型,2D視口以二維數據顯示了投影后得到的圖形。轉換為二維圖形后,數據可以轉換到常見的二維圖紙格式來保存,如保存為DXF、DWG等格式。
三、結論 Conclusion
OpenCascade的HLR算法可將三維模型轉換為二維圖形,這個功能可用來自動生成CAD軟件的零件制作圖和安裝圖。從上圖所示的效果來看,消隱效果還不錯,速度還比較快。就是單線消隱的不是很滿意,如果要對管子對進單線顯示,還需要再做處理。
可以看出OpenCascade的功能還是很強大,可以用OpenCascade來造型、建模、出圖,基本可以用來開發一個CAD的軟件。