版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
西南交通大學(xué)峨眉校區(qū)機(jī)械工程系圖形變換概述一、圖形的幾何變換----按照一定的規(guī)則,將一個(gè)幾何圖形上的點(diǎn)轉(zhuǎn)變?yōu)榱硪粋€(gè)幾何圖形上的點(diǎn),從而實(shí)現(xiàn)圖形的變換。例:比例變換、平移變換等。計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換二、圖形變換的方法思考:如何將原幾何圖形上的點(diǎn)轉(zhuǎn)變成新圖形上的點(diǎn)?---一定的對(duì)應(yīng)關(guān)系。兩種方法:1、解析法:用函數(shù)的形式來(lái)表示幾何變換的規(guī)律。特點(diǎn):較簡(jiǎn)單,直觀。2、矩陣法:用矩陣的形式來(lái)表示幾何變換的規(guī)律。特點(diǎn):適合于計(jì)算機(jī)進(jìn)行程序處理。計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系例:比例變換:
解析法:x’=a*xy’=b*y
矩陣法:[x’y’]=[xy]
a
0
0
b
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系西南交通大學(xué)峨眉校區(qū)機(jī)械工程系三、點(diǎn)的齊次坐標(biāo)表示齊次坐標(biāo)——將平面上一個(gè)點(diǎn)[x,y]表示為[u,v,t],其中x=u/t,y=v/t.
作用:①將避免因一個(gè)坐標(biāo)的值過(guò)大,計(jì)算機(jī)不能處理的情況。如:計(jì)算機(jī)能處理的整數(shù)范圍為-32768~32767,若表示x=6000,可令:u=3000,t=1/2.②用齊次坐標(biāo)矩陣來(lái)表示變換矩陣較方便。此時(shí),一般令t=1,即:用齊次坐標(biāo)[xy1]表示點(diǎn)[xy].計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換四、變換矩陣
幾何變換原理:
點(diǎn)集合1一定的變換規(guī)律點(diǎn)集合
2
(原圖形)(新圖形)
P*T(變換矩陣)=P’
x1y11
x1’y1’1x2y21
a
b
0
x2’y2’1
........
*
cd
0
=
........
xnyn1dxdy1xn’yn’1
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系1.
比例變換——將原圖形以原點(diǎn)為基點(diǎn),按一定的比例進(jìn)行縮放變換。變換關(guān)系:變換矩陣:
x’=ax
a0
0y’=
byT=
0
b0
0
01
即:P’
=P*Tx1’y1’1
x1y11
a00x2’y2’1=x2y21*
0b0x3’y3’1
x3y31
001
若
a、b>1,圖形放大;0<a、b<1,圖形縮小。
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系編程時(shí),調(diào)用同一繪圖子程序,則有:原圖形:新圖形:
pset(x1,y1);pset(x1’,y1’);line-(x2,y2);變換成line-(x2’,y2’);line-(x3,y3);
line-(x3’,y3’);line-(x1,y1);
line-(x1’,y1’);計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系2、平移變換——將原圖形平行移動(dòng)到新位置。變換關(guān)系:變換矩陣:
x’=x+dx
10
0y’=y+dyT=01
0
dxdy1
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系3、旋轉(zhuǎn)變換——將原圖形繞原點(diǎn)旋轉(zhuǎn)θ角,以逆時(shí)針?lè)较驗(yàn)檎较?。因:x’=Rcos(θ+α)
=Rcosθcosα-Rsinθsinα=
xcosθ-ysinθy’=Rsin(θ+α)
=Rsinθcosα+Rcosθsinα=xsinθ+ycosθ
變換關(guān)系:變換矩陣:
x’=xcosθ-ysinθcosθsinθ0y’=xsinθ+ycosθT=-sinθcosθ0
0
0
1計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系4、對(duì)稱變換①.關(guān)于X軸對(duì)稱變換關(guān)系:變換矩陣:
x’=x
100y’=-yT=
0-10001
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系②.關(guān)于Y軸對(duì)稱變換關(guān)系:變換矩陣:
x’=-x-100y’=yT=010
001計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系③.關(guān)于原點(diǎn)對(duì)稱變換關(guān)系:變換矩陣:
x’=-x
-100y’=-yT=0-10
001計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系④.關(guān)于y=x直線對(duì)稱變換關(guān)系:變換矩陣:
x’=y010y’=xT=100
001計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系⑤.關(guān)于y=-x直線對(duì)稱變換關(guān)系:變換矩陣:
x’=-y0-10y’=-xT=-100
001計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系五.圖形的組合變換:
將圖形進(jìn)行連續(xù)幾次變換,可進(jìn)行下列變換:
P’=P*T1*T2*.....*Tn
或:P’=P(T1*T2*.....*Tn)
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系例:將三角形ABC以A點(diǎn)(x1,y1)為基點(diǎn),x方向放大2倍,y方向放大3倍。思路:將A點(diǎn)平移到原點(diǎn)進(jìn)行放大將A點(diǎn)移回。結(jié)果:
x1’y1’z1’x1y111
00200100x2’y2’z2’=x2y21*010*030*0
1
0x3’y3’z3’x3y31
-x1–y11001x1y10計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系例:
輸入一個(gè)三角形的各個(gè)頂點(diǎn)坐標(biāo),繪制圖形。
再根據(jù)需要,輸入變換矩陣(數(shù)組),進(jìn)行幾何變換,顯示變換后各個(gè)點(diǎn)的坐標(biāo),并繪制變換后的圖形。
Dimp(1To3,1To3)AsSingle‘定義三角形的三個(gè)頂點(diǎn)的坐標(biāo)數(shù)組
'可考慮使用REDIM定義動(dòng)態(tài)數(shù)組,實(shí)現(xiàn)對(duì)任意多邊形的繪制Dimch(1To3,1To3)AsSingle‘定義齊次變換矩陣的數(shù)組主程序:PrivateSubComOK1_Click()n=1'確定p數(shù)組(三角形頂點(diǎn)的坐標(biāo)數(shù)組)
Fori=1To3Forj=1To3p(i,j)=Val(Text1(n).Text)n=n+1Nextj,I
Com計(jì)算.Enabled=True:Com繪圖.Enabled=True:Comok1.Enabled=FalseEndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系環(huán)境初試化子程序:PrivateSubForm_Load()Comok1.Enabled=False:Comok2.Enabled=FalsePicture1.Scale(-1000,700)-(1000,-700)'自定義picture1圖片框的刻度Picture1.AutoRedraw=TruePicture1.BackColor=RGB(100,100,100)Picture1.DrawWidth=1
'用點(diǎn)劃線繪制坐標(biāo)軸Picture1.DrawStyle=3Picture1.Line(-800,0)-(800,0)Picture1.Line(0,-600)-(0,600)n=1
'初始化
p,ch數(shù)組Fori=1To3Forj=1To3p(i,j)=Val(Text1(n).Text)ch(i,j)=Val(Text2(n).Text)n=n+1Nextj,iEndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系輸入變換矩陣子程序:PrivateSubComok2_Click()n=1'確定ch數(shù)組(變換矩陣)
Fori=1To3Forj=1To3ch(i,j)=Val(Text2(n).Text)n=n+1Nextj,iCom計(jì)算.Enabled=True:Com繪圖.Enabled=True:Comok2.Enabled=FalseEndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系變換計(jì)算子程序:PrivateSubCom計(jì)算_Click()Dimtemp(1To3,1To3)AsSingle'定義一個(gè)臨時(shí)暫存數(shù)組tempFori=1To3'矩陣乘法
Forj=1To3temp(i,j)=p(i,1)*ch(1,j)+p(i,2)*ch(2,j)+p(i,3)*ch(3,j)Nextj,in=1Fori=1To3Forj=1To3p(i,j)=temp(i,j)'將結(jié)果放回p數(shù)組,并顯示
Text1(n).Text=Str(temp(i,j))n=n+1Nextj,iCom計(jì)算.Enabled=True:Com繪圖.Enabled=True:Comok1.Enabled=FalseEndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系繪圖子程序:PrivateSubCom繪圖_Click()Picture1.ForeColor=RGB(Int(Rnd*255),Int(Rnd*255),Int(Rnd*255))
'設(shè)置繪圖線條(顏色、寬度、線型)Picture1.DrawWidth=3Picture1.DrawStyle=0Picture1.Line(p(1,1),p(1,2))-(p(2,1),p(2,2))Picture1.Line-(p(3,1),p(3,2))Picture1.Line-(p(1,1),p(1,2))EndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系PrivateSubText1_Change(IndexAsInteger)'修改坐標(biāo)Com計(jì)算.Enabled=False:Com繪圖.Enabled=False:Comok1.Enabled=TrueEndSub--------------------------------------------------------------------------------------PrivateSubText2_Change(IndexAsInteger)'修改變換矩陣
Com計(jì)算.Enabled=False:Com繪圖.Enabled=False:Comok2.Enabled=TrueEndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系二、命令組文件
利用命令組文件調(diào)用AutoCAD進(jìn)行參數(shù)化繪圖
參閱教材《計(jì)算機(jī)輔助設(shè)計(jì)》P142
用高級(jí)語(yǔ)言開發(fā)AutoCAD接口的一種有效途徑是利用命令組文件。所謂命令組文件是指用戶根據(jù)所要畫出的圖形,預(yù)先用一系列AutoCAD命令和選擇項(xiàng)構(gòu)成的命令序列,并以文本形式存儲(chǔ)的文件。它的擴(kuò)展名為“.SCR"。文件中每一個(gè)空格均被解釋成一個(gè)回車,行尾的回車換行符也被解釋成一個(gè)回車。它的生成主要有兩種方式,一種是利用文本編輯器生成;另一種是通過(guò)高級(jí)語(yǔ)言的寫文件功能生成。
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系注意:1)要求編寫命令組文件的用戶必須熟悉AutoCAD的命令提示順序。2)空格在命令組文件中有其確定的含義,AutoCAD往往將一個(gè)空格解釋為一個(gè)回車,因此用戶需特別注意空格的個(gè)數(shù)。
例如:有EXAMPLE.SCR命令組文件,其內(nèi)容和格式如下:計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系在AutoCAD中調(diào)用已生成的SCR文件的方法:
(1)、啟動(dòng)AutoCAD軟件。(2)、在命令行(command)輸入:Script(縮寫為SCR)
在彈出的“SelectScriptFile”對(duì)話框中選中需調(diào)用的SCR文件
計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系常用的參數(shù)化設(shè)計(jì)及繪圖的步驟:(1)、利用高級(jí)語(yǔ)言編寫機(jī)械零部件的參數(shù)化設(shè)計(jì)程序。(2)、調(diào)用設(shè)計(jì)程序,輸入零件的設(shè)計(jì)參數(shù),進(jìn)行設(shè)計(jì)計(jì)算,得到所設(shè)計(jì)零部件的尺寸數(shù)據(jù),并且設(shè)計(jì)程序能根據(jù)計(jì)算出的尺寸數(shù)據(jù)自動(dòng)產(chǎn)生SCR命令組文件。(3)、進(jìn)入AutoCAD軟件環(huán)境,調(diào)用SCR文件生成所需的零件圖。計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系例1、讀取某個(gè)數(shù)據(jù)文件,將文件中的數(shù)據(jù)進(jìn)行排序,并將結(jié)果存儲(chǔ)在一個(gè)新的文件中。OptionBase1'聲明數(shù)組的缺省下標(biāo)為1Dimnum()AsInteger'定義動(dòng)態(tài)數(shù)組DimnAsIntegerPrivateSub輸入_Click()Open"c:\1.txt"ForInputAs#1'打開并讀取文件,文件號(hào)為#1Input#1,n'讀取一個(gè)數(shù)據(jù)(第一個(gè)),賦予n(需要讀取的數(shù)據(jù)個(gè)數(shù))ReDimnum(n)AsInteger'重新定義動(dòng)態(tài)數(shù)組Fori=1Ton
Input#1,num(i)'依此讀取數(shù)據(jù),賦予數(shù)組num()NextiClose#1
'關(guān)閉文件Fori=1Ton'數(shù)據(jù)排序(冒泡法)
Forj=1Ton-1Ifnum(j)>num(j+1)Thentemp=num(j):num(j)=num(j+1):num(j+1)=tempEndIfNextj,iEndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系PrivateSub輸出_Click()Open"c:\2.txt"ForOutputAs#2'建立文件,文件號(hào)為#2Print#2,"TheSorteddatais:"'向建立的文件輸出數(shù)據(jù)Fori=1TonPrint#2,num(i);'向建立的文件輸出數(shù)據(jù)IfiMod3=0ThenPrint#2,'每三個(gè)數(shù)據(jù)換行NextiClose#2
'關(guān)閉文件EndSub計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系例2:
畫一矩形,兩圓,圓心在矩形水平方向的三等分處,垂直方向的二等分處
PrivateSub輸出_Click()X1#=Text1.Text'輸入數(shù)據(jù)Y1#=Text2.TextX2#=Text3.TextY2#=Text4.Textr#=Text5.TextFileName$="c:\"&Text6.Textrectangle_color$=Text7.Textcircle_color$=Text8.Textcx1#=X1+(X2-X1)/3'計(jì)算圓心坐標(biāo)cx2#=X1+(X2-X1)*2/3cy#=(Y1+Y2)/2
接下頁(yè)計(jì)算機(jī)輔助設(shè)計(jì)第三章圖形變換西南交通大學(xué)峨眉校區(qū)機(jī)械工程系OpenFileName$ForOutputAs#1'輸出SC
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 防水工程檢測(cè)合同
- 工業(yè)園區(qū)混凝土路面鋪設(shè)合同
- 建筑工程升降機(jī)安裝合同
- 跨國(guó)建筑企業(yè)人才聘用合同
- 住宅小區(qū)建設(shè)項(xiàng)目合同樣本
- 文化活動(dòng)柴油發(fā)電機(jī)租賃協(xié)議
- 籃球館秩序維護(hù)保安合同
- 家居裝修后二手房銷售合同模板
- 超市銷售勞務(wù)合同范例
- 項(xiàng)目顧問(wèn)合同三篇
- SAP生產(chǎn)計(jì)劃概念及實(shí)施流程
- MSA 測(cè)量系統(tǒng)培訓(xùn)教材
- 時(shí)間軸公司發(fā)展歷程企業(yè)大事記PPT模板
- 大學(xué)無(wú)機(jī)及分析化學(xué)----氣體練習(xí)題及答案
- 北師大版數(shù)學(xué)初二上冊(cè)知識(shí)點(diǎn)總結(jié)
- 鐵路建設(shè)項(xiàng)目施工企業(yè)信用評(píng)價(jià)辦法(鐵總建設(shè)〔2018〕124號(hào))
- 模具報(bào)價(jià)表精簡(jiǎn)模板
- 形式發(fā)票模板 PI模板 英文版
- 高考英語(yǔ)單項(xiàng)選擇題題庫(kù)題
- 檢驗(yàn)檢測(cè)機(jī)構(gòu)資質(zhì)認(rèn)定現(xiàn)場(chǎng)評(píng)審日程表及簽到表
- 蘭州市行政區(qū)劃代碼表
評(píng)論
0/150
提交評(píng)論