胡志剛,鄭秋白
(1.河南科技學院,河南新鄉(xiāng) 453003;2.宇暢路橋養(yǎng)護工程有限公司,河南駐馬店 463000)
在生產和生活的各個領域中,以圓柱形表面為構成元素的各種零、部件是應用最多的工業(yè)品.在有關的工程設計和鈑金設計中,繪制其三視圖和展開圖、放樣圖是必不可少的環(huán)節(jié).但在尺規(guī)繪圖或者二維CAD繪制相交圓柱體圖樣的過程中,因為圓柱體直徑和交角等參數不同,獲得的三視圖和圓柱表面展開圖也相應地變化著,要一一繪制出基于不同直徑和交角的相交圓柱體三視圖和表面展開圖樣顯得很繁瑣和不便,同時又做了許多不必要的重復性工作,效率低、設計時間長[1].本文介紹一個利用AutoCAD的Lisp集成開發(fā)環(huán)境和手段開發(fā)的AutoCAD參數化繪圖命令,它針對兩個圓柱體相交,根據輸入不同的直徑和交角,自動繪制出相對應的三視圖及兩個圓柱體表面展開圖,避免了上述設計繪圖的缺點,為有關圓柱體相交的各類零、部件工程設計和鈑金展開圖設計提供了一個十分高效準確的繪圖手段.
該應用程序適用于兩個圓柱體軸線相交的一般及特殊情況,即兩圓柱體一般為直徑不等和軸線夾角在0~180°之間,也可以是特殊情形,即等直徑或者軸線夾角為90°.
兩個圓柱體相交,圓柱體Ⅰ的直徑為d,圓柱體Ⅱ的直徑為D,軸線夾角為α,且D≥d;
以兩圓柱體軸線交點O和O1為圓心,分別在圓柱體Ⅰ和圓柱體Ⅱ上建立O1-X1Y1Z1和O-XYZ兩個笛卡爾坐標系,其中X坐標軸與圓柱體Ⅱ的軸線重合,其中Y1坐標軸與圓柱體Ⅰ的軸線重合[2-5],圓柱表面上任一點為P(x,y,z),如圖1所示.
圖1 相交圓柱體、坐標系及基本參數Fig.1 Intersecting cylinders,coordinate systems and basic dimensions
圓柱Ⅰ
圓柱Ⅱ
兩個坐標系的變換關系如下
在O-XYZ坐標系中定義的相貫線參數方程為
當圓柱Ⅱ在X-S二維坐標系中表面展開時,其上面的相貫線展開方程為
在坐標 O1?X1Y1Z1系中,相貫線的參數方程為
圓柱I在 Y1?S1二維坐標系中展開時,其上的相貫線展開方程為
以1中的圓柱面及相貫線展開的參數方程(3)、(4)、(5)、(6)為算法,用AutoLisp語言進行圓柱體三視圖和表面展開圖參數化繪圖命令二次開發(fā),該二次開發(fā)的應用程序應該實現如下一些功能[7]:
(1)基本參數輸入接口界面.通過該界面輸入兩個圓柱體的半徑R、r和軸線夾角α.
(2)繪制三視圖.通過輸入繪圖的起始點,可以自動繪制出兩個相交圓柱體的三視圖,且隱藏線用虛線表示.
(3)繪制兩個圓柱體表面的展開圖.可以在三視圖的相應位置上繪制圖兩個圓柱體的鈑金展開圖,包括精確繪制出相貫線的展開線部分.
(4)標注必要的尺寸.
用DCL語言定義如圖2所示的輸入兩個圓柱體的半徑R、r和軸線夾角α對話框,并賦予大、小圓柱體直徑和軸線夾角的初值分別為100、50和45°.
圖2 基本參數輸入對話框Fig.2 Dialog box of basic dimensions
依據1中所給出的算法,進行參數化繪圖的Lisp語言程序設計[6-7].其設計流程圖如圖3所示.
圖3 Lisp程序流程Fig.3 Diagram of Lisp program
以下是繪制小圓柱體Ⅰ鈑金展開圖的程序段
在程序設計中,將繪圖命令命名為cyl_intersect,并將該程序設置為運行AutoCAD后自動加載[6,8].加載程序后,輸入命令名cyl_intersect,在彈出的圖2所示的對話框中,輸入圓柱體的直徑和軸線夾角.若大圓柱Ⅱ的直徑小于小圓柱的Ⅰ直徑時,系統顯示圖4所示信息提示,必須重新輸入命令和正確的直徑數值;若輸入的角度α≤0或α≥180,系統同樣顯示錯誤信息,必須重新輸入該命令及正確的軸線夾角.
圖4 錯誤輸入下的提示信息Fig.4 Information of error entry
正確地輸入3個參數后,系統提示指定繪圖的起始點,系統將從該起始點處繪制出相應的相交圓柱體的三視圖和兩個圓柱面展開圖.圖5、圖6、圖7和圖8分別是兩個相交圓柱體的不等徑斜交、不等徑正交、等徑斜交和等徑正交四種情況的圖樣.
圖5 不等徑斜交圖形Fig.5 Drawing of unequal diameters and oblique intersection
圖6 不等徑正交圖形Fig.6 Unequal diameters and perpendicular intersection drawing
圖7 等徑斜交圖形Fig.7 Equal diameters and oblique intersection drawing
圖8 等徑正交圖形Fig.8 Equal diameters and perpendicular intersection drawing
該二次開發(fā)的Lisp應用程序對各類圓柱體形狀三通管的鈑金展開圖的繪制非常方便有效,依據該種算法的程序結構進行適當的改進,還可以設計出兩個圓柱體偏交、兩個圓錐體相交及圓柱體和圓錐體相交的鈑金展開圖繪圖命令,這對常見的圓柱、圓錐形管件的圖樣繪制提供極大的方便.依照這樣的思路,可以設計和開發(fā)出一個基于AutoCAD的彎頭、三通管件、錐管、各種接頭、型鋼構件、封頭及其工業(yè)產品表面的可展開及不可展開曲面的表面展開圖的設計和繪圖系統,為此類零部件及工業(yè)品的設計提供一個強有力的工具.
[1]侯愛民.偏斜交圓柱圓錐表面展開圖計算機繪制數模原理[J].機械管理開發(fā),2013,13(3):197-198.
[2]石光源,周積義,彭福蔭.機械制圖[M].5版.北京:高等教育出版社,1990.
[3]馬伏波.相貫件表面展開圖在AutoCAD中的繪制[J].煤炭科學技術,2003,31(10):25-27.
[4]孫嘉燕,張國安.常用工程形體兩圓柱相貫線和表面展開的通用程序設計[J].沈陽農業(yè)大學學報,1995,26(1):108-112.
[5]高麗華.相交圓柱與圓錐表面展開圖的計算機繪制[J].機械設計與制造工程,2001,30(5):45-46.
[6]廖紹平,劉鳳波.基于AutoLisp開發(fā)交互式繪制巷道的方法[J].現代礦業(yè),2013,534(10):94-95.
[7]高建洪.圓柱相貫體表面展開CAD[J].蘇州城建環(huán)保學院學報,1999,12(1):39-43.
[8]胡志剛.大型橢圓形封頭放樣圖參數化繪圖的Lisp實現[J].河南科技學院學報:自然科學版,2013,41(5):53-57.