丁廣文, 吳勝強(qiáng)
(邢臺職業(yè)技術(shù)學(xué)院機(jī)電工程系,河北 邢臺 054035)
在進(jìn)行產(chǎn)品設(shè)計時,經(jīng)常要用到曲線、曲面的繪制[1]。在Pro/E 中還可以使用專門的工具進(jìn)行曲線、曲面的繪制??墒钱?dāng)需要繪制用高次方程表達(dá)曲面Z=f (x, y)的時候,單純使用Pro/E 往往無從下手。這時候可以結(jié)合使用數(shù)學(xué)軟件MATLAB 來完成這類曲面的繪制[2]。下面以電視機(jī)屏幕曲面為例來介紹如何繪制高次方程表達(dá)的曲面。
電視機(jī)屏幕高次曲面方程[3]如下
其中:系數(shù)A1~A15取值如表1 所示。
表1 各系數(shù)取值表
針對這樣的曲面,解決的基本思路是:利用數(shù)學(xué)軟件MATLAB,根據(jù)方程生成點(diǎn),然后再使用Pro/E 用點(diǎn)生成曲面。
在MATLAB 中新建一個M 文件,然后編寫程序如下:
surf(X,Y,Z);hold on,colormap(hot) %顯示曲面的立體圖形%
stem3(X, Y, Z, 'bo')
S1=[X(: ) Y(: ) Z(: )]; %把X、Y、Z 3 個矩陣中的數(shù)據(jù)存儲到矩陣S 中%
這段程序的想法是將曲面的取值范圍設(shè)定為860×860,增量為10,這樣就可以根據(jù)曲面方程生成點(diǎn)陣。然后,將點(diǎn)陣存儲到矩陣S1 當(dāng)中[4]。
運(yùn)行該程序,得到的曲面圖形如圖1 所示。
圖1 用MATLAB 生成的曲面圖形
打開Workspace(工作空間)標(biāo)簽,雙擊變量S1,彈出的矩陣表格中就是各坐標(biāo)點(diǎn)數(shù)據(jù),如圖2 所示。
選中所有點(diǎn)的數(shù)據(jù),復(fù)制到記事本中,存為point.txt 文件。
圖2 各坐標(biāo)點(diǎn)數(shù)據(jù)
將文件point.txt 的文件名修改為point.ibl(此格式為Pro/E 支持的格式)。
使用Pro/E 將點(diǎn)陣輸入進(jìn)來,具體使用的方法是點(diǎn)擊插入,共享數(shù)據(jù),自文件,選擇point.ibl文件,即可將點(diǎn)陣輸入到Pro/E 中[5]。
輸入進(jìn)來后,該文件還不能保存,這是Pro/E會自動提示保存成pts 文件。這時接受軟件的設(shè)置。然后可以使用包絡(luò)命令生成曲面。
再使用小平面命令對曲面進(jìn)行優(yōu)化。優(yōu)化后的曲面如圖3 所示。
用這種方法得到的公式曲線、曲面不是貼圖,而是實(shí)際繪出的圖元,不僅可以在MATLAB中控制精度,還可以用于進(jìn)行各種相應(yīng)命令的操作,如復(fù)制、鏡像、旋轉(zhuǎn)等。Pro/E 結(jié)合MATLAB實(shí)現(xiàn)公式曲面的繪制,加強(qiáng)了Pro/E 在曲面造型方面的功能,使其在設(shè)計方面發(fā)揮更大的作用。
圖3 優(yōu)化后的曲面
[1] 蔣建強(qiáng). 基于數(shù)控高次曲線插補(bǔ)的研究與應(yīng)用[J]. 制造業(yè)自動化, 2006, 28(12): 826-828.
[2] 苗蘭芳, 黃 勁, 鄭文庭, 等. 點(diǎn)模型的局部幾何重建和光線跟蹤[J]. 計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報, 2006, 18(6): 805-811.
[3] 李蘭友, 李 瑋, 白克壯. Visual Basic.NET 圖形圖像編程與實(shí)例詳解[M]. 北京: 電子工業(yè)出版社, 2002. 105-210.
[4] 飛思科技產(chǎn)品研發(fā)中心. MATLAB7 基礎(chǔ)與提高[M]. 北京: 電子工業(yè)出版社, 2005. 166-198.
[5] 林清安. Pro/ENGINEER Wildfire 2.0基礎(chǔ)入門與范例[M]. 北京: 電子工業(yè)出版社, 2007. 117-155.