AutoCAD二次開發(fā)――參數(shù)化繪制帶輪設(shè)計(jì)
AutoCAD二次開發(fā)――參數(shù)化繪制帶輪設(shè)計(jì),autocad,二次開發(fā),參數(shù),繪制,設(shè)計(jì)
畢業(yè)總結(jié)
作為一名機(jī)械類專業(yè)的學(xué)生,掌握一定量的設(shè)計(jì)軟件是比不可少的,例如:AUTO CAD(計(jì)算機(jī)輔助制造)、PRO/E(工程制圖)、UG等,這些軟件是平時(shí)進(jìn)行優(yōu)化設(shè)計(jì)、模擬仿真、動(dòng)力學(xué)分析的的常用工具,而在機(jī)械領(lǐng)域中應(yīng)用最早的計(jì)算機(jī)輔助制造技術(shù)更是功不可沒,它提供了一個(gè)通用的CAD平臺(tái),這個(gè)平臺(tái)不僅有強(qiáng)大的繪圖、編輯功能,而且還具有開放的體系結(jié)構(gòu)允許用戶對(duì)其進(jìn)行二次開發(fā),以滿足繪圖過程中的特殊要求。早在AUTO CAD2000時(shí)就允許用AUTO LISP、Visual Basic、VBA、Visual C++等多種工具對(duì)其進(jìn)行開發(fā)。這次設(shè)計(jì)就是一個(gè)典型的利用AUTO LISP語(yǔ)言開發(fā)機(jī)械零部件的例子,帶輪是是機(jī)械傳動(dòng)系統(tǒng)中很重要也很常見的傳動(dòng)件,通過這次設(shè)計(jì),對(duì)今后的工作肯定是大有裨益的。
這次設(shè)計(jì)分為很多階段,就我們小組的人而言,主要有如下幾個(gè)部分:
1.1對(duì)CAD二次開發(fā)以及其繪圖環(huán)境的熟悉階段
了解參數(shù)化繪圖的設(shè)計(jì)過程:
圖一 參數(shù)化繪圖設(shè)計(jì)過程
1.1.1熟悉編寫程序時(shí)所需要的函數(shù)
AUTO CAD提供了大量的預(yù)定意函數(shù),用戶在編寫程序時(shí)可直接調(diào)用這些函數(shù)。在調(diào)用函數(shù)時(shí)只需要將函數(shù)名作為表的第一個(gè)元素,將函數(shù)變量作為表中后面元素即可。學(xué)
習(xí)掌握AUTO LISP語(yǔ)言的核心問題是掌握AUTO LISP函數(shù)。AUTO LISP函數(shù)可以分為系統(tǒng)函數(shù)和用戶自定義函數(shù)兩類。主要掌握其函數(shù)功能、名稱、參數(shù)個(gè)數(shù)、類型、順序和函數(shù)的返回值等。
下面就以這次程序中出現(xiàn)的函數(shù)作以介紹:
1.1.1.1數(shù)學(xué)運(yùn)算函數(shù)
+ :計(jì)算兩個(gè)或者兩個(gè)以上的“數(shù)”的值。例:(+ 2 4 6),返回值為10。
- :返回第一個(gè)“數(shù)”和后面所以數(shù)的差。例:(- 20 10 1),返回值為9。
* :返回所以“數(shù)”的乘積。例:(* 8 6),返回值為64。
/ :返回前面一個(gè)“數(shù)”除以后面一個(gè)“數(shù)”的商。例:(/ 30 15),返回值為2。
Cos :返回“角度”的余弦值。例:(cos 60),返回0.5。
Expt :返回“底數(shù)”的“冪”次方的值。例:(expt 3 2),返回為9。
Sqrt :返回“數(shù)”的平方根。例:(sqrt 9),返回3。
1.1.1.2關(guān)系運(yùn)算函數(shù)
= :如果所有“原子”在數(shù)值上相等,則返回T ,否則返回NIL。
1.1.1.3轉(zhuǎn)換運(yùn)算函數(shù)
Atof :函數(shù)后跟〈字符串〉,將次字符串轉(zhuǎn)化為實(shí)型數(shù),返回實(shí)型數(shù)。例:(atof 12.5),
返回12.5。
1.1.1.4圖形處理函數(shù)
Polar :此函數(shù)后面依次跟〈點(diǎn)〉〈角度〉〈距離〉,返回一個(gè)點(diǎn)的坐標(biāo),該〈點(diǎn)〉的為〈距離〉,與x軸的夾角為〈角度〉,其中角度的單位是弧度。例:(polar ‘(1 1) 0.785398 1.414214),返回(2.0 2.0)。
1.1.1.5交互式輸入函數(shù)
Getpoint :后跟〈提示〉,從命令窗口根據(jù)〈提示〉輸入一個(gè)整型數(shù)。以整型數(shù)形式返回輸入數(shù)。
Getint :后跟〈提示〉,從命令窗口根據(jù)〈提示〉輸入一個(gè)點(diǎn)的坐標(biāo),或從品目中拾取一個(gè)點(diǎn)。返回該點(diǎn)坐標(biāo)。
1.1.1.6條件函數(shù)
If :后面跟〈條件〉〈表達(dá)式1〉〈表達(dá)式2〉:根據(jù)條件計(jì)算表達(dá)式。如果〈條件〉不為nil,計(jì)算〈表達(dá)式1〉并返回計(jì)算結(jié)果;否則計(jì)算〈表達(dá)式2〉,并返回計(jì)算結(jié)果。
Cond :函數(shù)結(jié)構(gòu)為(〈條件1〉〈表達(dá)式2〉)
……
(〈條件n〉〈表達(dá)式n〉)
(T 〈其它表達(dá)式〉)
從上往下判斷,一但發(fā)現(xiàn)條件滿足,計(jì)算與該條件對(duì)應(yīng)的表達(dá)式,并返回計(jì)算結(jié)不
再繼續(xù)判斷條件。
1.1.1.7循環(huán)函數(shù)
While :函數(shù)結(jié)構(gòu)為〈條件〉
[〈標(biāo)準(zhǔn)表〉…]
如果〈條件〉成立,執(zhí)行各〈標(biāo)準(zhǔn)表〉,執(zhí)行后在判斷〈條件〉是否成立。如果成立,繼續(xù)執(zhí)行各〈標(biāo)準(zhǔn)表〉,如此循環(huán)反復(fù),只到條件不成立,并返回最后得到的計(jì)算結(jié)果。
Repeat :函數(shù)結(jié)構(gòu)為〈數(shù)〉〈表達(dá)式〉,計(jì)算次數(shù)由〈數(shù)〉判斷,返回最后計(jì)算結(jié)果。
1.1.1.8賦值函數(shù)
Setq :賦值函數(shù)Setq是AUTO CAD程序中最常見的賦值函數(shù)之一,其使用格式為:(Setq〈符號(hào)1〉〈表達(dá)式1〉 [符號(hào)2])[表達(dá)式2]……)
該函數(shù)的功能為:依次將各表達(dá)式的值賦給對(duì)應(yīng)的符號(hào)。
例:(Setq a (/ * 2 3))表示將(/ * 2 3)的運(yùn)算結(jié)果6賦給a。
用setq函數(shù)給多個(gè)符號(hào)賦值,函數(shù)會(huì)返回所賦的最后一個(gè)值。
例:(setq a 45 c 56 d 78 ),則返回78。
注意:AUTO LISP程序中,作為參數(shù)使用的任何符號(hào)均需要先賦值。并且注意函數(shù)格式,特別是空格鍵的鍵入。
另外這次設(shè)計(jì)還用到這些函數(shù):
Commmand:系統(tǒng)內(nèi)部函數(shù),在調(diào)用時(shí)必須注意結(jié)尾時(shí)要以不加空格的雙引號(hào)結(jié)束。有時(shí)候也需要用兩個(gè)雙引號(hào)結(jié)束,例如在最開始繪制鍵平面的過程中,有這樣一條命令:
(command “l(fā)ayer” “m” “center” “c” “red” “”“1” “” “”),最開始由于結(jié)尾少加一個(gè)雙引號(hào),導(dǎo)致程序無法實(shí)現(xiàn)其應(yīng)有的功能,后來經(jīng)過看書和朋友的知道才發(fā)現(xiàn),原來命令并沒有終止完,所以必須再加一個(gè)命令才可結(jié)束。所以說在調(diào)用函數(shù)的過程中一定要遵循函數(shù)的要求約定。
Defun:自定義函數(shù)。
action_tile、get_tile、set_tile、mapcar函數(shù)等。
1.1.2、確定本次設(shè)計(jì)的基本參數(shù)
要確定本次設(shè)計(jì)的基本參數(shù),首先是搜集資料。帶輪的類型、型號(hào)、圖樣、技術(shù)要求以及國(guó)家標(biāo)準(zhǔn),可從機(jī)械設(shè)計(jì)手冊(cè)上查找。
接著對(duì)其數(shù)據(jù)進(jìn)行分析,找出數(shù)據(jù)之間的關(guān)聯(lián)性,例如型號(hào)A對(duì)應(yīng)的帶輪直徑為75 、80、 85、 90、 95、 100 、106 、112 、118、 125、 132、 140、 150 、160、 180;而Z型所對(duì)應(yīng)的帶輪直徑為50 、56、 63、 71、 75、 80、 90。這說明數(shù)據(jù)和型號(hào)間是有關(guān)聯(lián)的。確定好繪圖時(shí)用戶所要輸入的參數(shù),為編輯對(duì)話框作好準(zhǔn)備。
1.1.3、確定繪圖時(shí)所需要的參數(shù)
根據(jù)帶輪圖形中已知參數(shù),通過數(shù)學(xué)計(jì)算得出在設(shè)計(jì)時(shí)實(shí)際所需的參數(shù),例如要將槽間距、頂寬以及邊距轉(zhuǎn)化成圖3-10中所標(biāo)示的a1、a2和a3。
2.1、計(jì)算點(diǎn)的坐標(biāo)
2.1.1 確立繪圖功能模塊
由于不同類型的帶輪雖然形狀上有所區(qū)別,但它們都是由某些想同的部分組成的,例如它們都有輪槽,那么在繪制不同類型的帶輪時(shí),就可以引用前面所繪制的帶輪輪槽。依據(jù)上面所做的鋪墊,將圖形分成不同的繪圖功能模塊,使其更有條理,方便用戶理解和運(yùn)用。同時(shí),也為后面的編程減少了工作量,“格式化”的程序往往也利于查閱和復(fù)制。
2.1.2計(jì)算繪制點(diǎn)的坐標(biāo)
畫草稿圖,將各個(gè)點(diǎn)標(biāo)出,然后依次計(jì)算出其坐標(biāo)。
3.1調(diào)用AUTO CAD命令繪圖
3.1.1確定零件圖的功能模塊
一張完整的圖紙,它包含的不僅是此零件視圖,還應(yīng)該有工程標(biāo)注、技術(shù)要求、圖框以及標(biāo)題欄,其中工程標(biāo)注又包括基準(zhǔn)符號(hào)、形位公差、尺寸標(biāo)注以及粗糙度等。如圖3-7繪制零件圖的功能模塊。其中有些模塊已經(jīng)被開發(fā)。
3.1.2繪制零件圖
在以上的基礎(chǔ)上,開始繪制零件圖。
這就是一個(gè)完整的零件圖的開發(fā)設(shè)計(jì)過程,幾乎所以的機(jī)械零部件的開發(fā)都可以仿造引用這一例子。其實(shí)可以將其分為兩個(gè)大的方面:
一、 熟練掌握AUTO CAD二次開發(fā)各種函數(shù)的功能、格式以及其約定。
二、 對(duì)零件圖本身做詳細(xì)的分析。
然后將二者進(jìn)行合理的綜合利用,便可以完成復(fù)雜的圖形繪制。
收藏
編號(hào):2654713
類型:共享資源
大?。?span id="kcezupg" class="font-tahoma">575.77KB
格式:ZIP
上傳時(shí)間:2019-11-28
15
積分
- 關(guān) 鍵 詞:
-
autocad
二次開發(fā)
參數(shù)
繪制
設(shè)計(jì)
- 資源描述:
-
AutoCAD二次開發(fā)――參數(shù)化繪制帶輪設(shè)計(jì),autocad,二次開發(fā),參數(shù),繪制,設(shè)計(jì)
展開閱讀全文
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。