對vb軟件系統(tǒng)進(jìn)行CAD二次開發(fā)_第1頁
對vb軟件系統(tǒng)進(jìn)行CAD二次開發(fā)_第2頁
對vb軟件系統(tǒng)進(jìn)行CAD二次開發(fā)_第3頁
對vb軟件系統(tǒng)進(jìn)行CAD二次開發(fā)_第4頁
對vb軟件系統(tǒng)進(jìn)行CAD二次開發(fā)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

對vb軟件系統(tǒng)進(jìn)行CAD二次開發(fā) 關(guān)鍵詞:標(biāo)準(zhǔn)零件、AutoCADVBA語言、AutoCAD的二次開發(fā)計(jì)算機(jī)輔助制圖是現(xiàn)代企業(yè)生產(chǎn)和設(shè)計(jì)的重要工具,AutoCAD是計(jì)算機(jī)輔助設(shè)計(jì)工具的一種,VB是AutoCAD軟件的重要組成部分。它是AutoCAD軟件二次開發(fā)的重要工具。它可使一些常用的機(jī)械零件能很快的調(diào)用,簡捷方便,很大的提高了工作效率縮短了新產(chǎn)品的開發(fā)周期,提高制圖的質(zhì)量。利用VB語言對AutoCAD進(jìn)行二次開發(fā)是現(xiàn)代計(jì)算機(jī)技術(shù)不可缺少的內(nèi)容,而且直接影響到制圖的速度和質(zhì)量。本次設(shè)計(jì)是AutoCAD軟件二次開發(fā)的其中一部分,它在AutoCAD軟件開發(fā)中占有一定的地位和作用。AutoCAD為用戶提供了多種二次開發(fā)工具,其中較常用的有AutoLISP、VBA、ObjectARX三種方式。

AutoLISP是一種解釋性的表結(jié)構(gòu)處理語言,具有語言結(jié)構(gòu)簡單、開發(fā)周期短、不依賴于操作平臺的特點(diǎn),但是作為解釋語言,其運(yùn)行速度和保密性方面有一定的缺陷,并且不適合開發(fā)有復(fù)雜運(yùn)算的軟件。

VisualBasic(VB)是美國微軟公司推出的程序開發(fā)工具,它簡單易學(xué),適用面廣,在Windows平臺上被廣泛使用。為此,可以作為測繪工作者進(jìn)行程序設(shè)計(jì)的首選工具。

VBA是VisualBasicforApplications的縮寫,由VisualBasic派生而來,現(xiàn)在已經(jīng)成為Mictosoft產(chǎn)品的標(biāo)準(zhǔn)語言。與VB一樣,VBA是面向?qū)ο蟮脑O(shè)計(jì)語言,它繼承了VB語法簡單、功能強(qiáng)大的特點(diǎn),同時(shí),由于VBA可與主程序在同一內(nèi)存空間內(nèi)運(yùn)行,大大提高了運(yùn)行的速度,并具有某些“智能”功能VBA的概念與作用

VBA(VisualBasicforApplication)是一種完全面向?qū)ο篌w系結(jié)構(gòu)的編程語言,由于其在開發(fā)方面的易用性和具有強(qiáng)大的功能,因此許多應(yīng)用程序均嵌入該語言作為開發(fā)工具。利用VB進(jìn)行AutoCAD二次開發(fā)的關(guān)鍵步驟

首先,要在VB中引用AutoCAD的類型庫Acad.tlb,該庫位于AutoCADR14的安裝目錄下。

其次,要建立用VB開發(fā)的應(yīng)用程序與AutoCAD間的聯(lián)系,這一過程,稱為初始化。相應(yīng)的程序代碼如下:

PrivateSubInitGraph()

OnErrorResumeNext

SetAcadApp=GetObject(,"AutoCAD.Application")

IfErrThen

MsgBoxErr.Description

UnloadMe

EndIf

AcadApp.Visible=True

SetAcadDoc=AcadApp.ActiveDocument

SetMoSpace=AcadDoc.ModelSpace

EndSub

之后,即可以用AutoCAD類型庫提供的屬性、方法對AutoCAD進(jìn)行操作,如畫線,可用AddLightWeightPolyline語句來完成,寫文字,可用AddText語句來實(shí)現(xiàn)。

螺栓編程流程圖PrivateSubcanshu_Click()EndSubPrivateSubCmdExit_Click()UnloadMeEndSubPrivateSubCmdOk_Click()'檢查參數(shù)賦值情況IfTextX.Text=""OrTextY.Text=""OrTextZ.Text=""ThenMsgBox"請?jiān)谄聊贿x起點(diǎn)!",vbExclamation,"警告"ExitSubEndIf'定義直線對象DimobjLine01,ObjLine02,ObjLine03,ObjLine04,ObjLine05,ObjLine06,ObjLine07,ObjLine08,ObjLine09,ObjLine10,ObjLine11,ObjLine12,ObjLine13,ObjLine14,ObjLine15AsAcadLine'定義數(shù)組變量,作為各頂點(diǎn)的坐標(biāo)DimPt01(2)AsDouble:DimPt02(2)AsDouble:DimPt03(2)AsDoubleDimPt04(2)AsDouble:DimPt05(2)AsDouble:DimPt06(2)AsDoubleDimPt07(2)AsDouble:DimPt08(2)AsDouble:DimPt09(2)AsDoubleDimPt10(2)AsDouble:DimPt11(2)AsDouble:DimPt12(2)AsDoubleDimPt13(2)AsDouble:DimPt14(2)AsDouble:DimPt15(2)AsDoubleDimPt16(2)AsDouble:DimPt17(2)AsDouble:DimPt18(2)AsDoubleDimPt19(2)AsDouble:DimPt20(2)AsDouble:DimPt21(2)AsDoubleDimPt22(2)AsDouble:DimPt23(2)AsDouble:Dimd,l,bAsDoubleDimx,y,zAsVariantx=TextX:y=TextY:z=TextZ'檢查參數(shù)賦值情況IfTextZhiJ.Text=""OrTextChangD.Text=""ThenMsgBox"參數(shù)不能為空,請檢查參數(shù)的輸入.",vbExclamation,"警告"ExitSubEndIfd=TextZhiJ:l=TextChangDIfd=5ThenMsgBox"螺栓長度應(yīng)為:GB578025~50;GB578110~40",vbExclamation,"警告"b=16Ifl<16Orl>50ThenExitSubEndIfEndIfIfd=6ThenMsgBox"螺栓長度應(yīng)為:GB578030~60;GB578112~50",vbExclamation,"警告"b=18Ifl<18Orl>60ThenExitSubEndIfEndIfIfd=8ThenMsgBox"螺栓長度應(yīng)為:GB578035~80;GB578116~65",vbExclamation,"警告"b=22Ifl<22Orl>80ThenExitSubEndIfEndIfIfd=10ThenMsgBox"螺栓長度應(yīng)為:GB578040~100;GB578120~80",vbExclamation,"警告"b=26Ifl<26Orl>100ThenExitSubEndIfEndIfIfd=12ThenMsgBox"螺栓長度應(yīng)為:GB578045~120;GB578125~100",vbExclamation,"警告"b=30Ifl<30Orl>120ThenExitSubEndIfEndIfIfd=16ThenMsgBox"螺栓長度應(yīng)為:GB578055~160;GB578135~100",vbExclamation,"警告"b=38Ifl<38Orl>160ThenExitSubEndIfEndIfIfd=20ThenMsgBox"螺栓長度應(yīng)為:GB578065~200;GB578140~100",vbExclamation,"警告"b=40Ifl<40Orl>200ThenExitSubEndIfEndIfIfd=24ThenMsgBox"螺栓長度應(yīng)為:GB578080~240;GB578150~100",vbExclamation,"警告"b=54Ifl<54Orl>240ThenExitSubEndIfEndIfIfd=30ThenMsgBox"螺栓長度應(yīng)為:GB578090~300;GB578160~100",vbExclamation,"警告"b=66Ifl<66Orl>300ThenExitSubEndIfEndIfIfd=36ThenMsgBox"螺栓長度應(yīng)為:GB5780110~300;GB578170~100",vbExclamation,"警告"b=78Ifl<78Orl>300ThenExitSubEndIfEndIfIfd=42ThenMsgBox"螺栓長度應(yīng)為:GB5780160~420;GB578180~420",vbExclamation,"警告"b=96Ifl<96Orl>420ThenExitSubEndIfEndIfIfd=48ThenMsgBox"螺栓長度應(yīng)為:GB5780180~480;GB578190~480",vbExclamation,"警告"b=108Ifl<108Orl>480ThenExitSubEndIfEndIf'判斷語句Ifd<>5#Andd<>6Andd<>8Andd<>10Andd<>12Andd<>16Andd<>20Andd<>24Andd<>30Andd<>36Andd<>42Andd<>48ThenMsgBox"螺栓直徑可能為5,6,8,10,12,16,20,24,30,36,42,48?",vbExclamation,"警告"ExitSubEndIfNextEndSub在本次設(shè)計(jì)中,主要是VBA的編程工作。其中涉及了VBA的對話框、判斷語句、選擇語句、條件語句、位置的確定、圖層的設(shè)置、線形的選擇、對話框的連接、技術(shù)標(biāo)準(zhǔn)的選取等等諸多方面的問題。與此同時(shí),也比較熟練的掌握了AutoCAD的運(yùn)用。由于本人的水平有限,在設(shè)計(jì)中有許多不足之處懇請各位老師予以指正。參考文獻(xiàn)[1]《明經(jīng)通道》

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論