AutoCAD二次開(kāi)發(fā)――參數(shù)化繪制帶輪設(shè)計(jì)
AutoCAD二次開(kāi)發(fā)――參數(shù)化繪制帶輪設(shè)計(jì),autocad,二次開(kāi)發(fā),參數(shù),繪制,設(shè)計(jì)
四 川 理 工 學(xué) 院
畢 業(yè) 設(shè) 計(jì)(論 文)說(shuō) 明 書(shū)
題 目 AutoCAD Lisp二次開(kāi)發(fā)
帶輪的參數(shù)化繪制
學(xué) 生 劉 恩 英
系 別 機(jī) 電 工 程 系
專(zhuān) 業(yè) 班 級(jí) 機(jī)制03級(jí)1班
學(xué) 號(hào) 030110333
指 導(dǎo) 教 師 何 禮 雄
四 川 理 工 學(xué) 院
畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)
設(shè)計(jì)(論文)題目: AutoCAD二次開(kāi)發(fā)――參數(shù)化繪制帶輪設(shè)計(jì)
系: 機(jī)電工程系 專(zhuān)業(yè): 機(jī)械制造 班級(jí): 2003級(jí)1班 學(xué)號(hào): 030110333
學(xué)生: 劉 恩 英 指導(dǎo)教師: 何禮雄老師
接受任務(wù)時(shí)間 2007年3月5日
教研室主任 (簽名) 系主任 (簽名)
1.畢業(yè)設(shè)計(jì)(論文)的主要內(nèi)容及基本要求
2.指定查閱的主要參考文獻(xiàn)及說(shuō)明
3.進(jìn)度安排
設(shè)計(jì)(論文)各階段名稱(chēng)
起 止 日 期
1
閱讀資料,熟悉相關(guān)知識(shí),對(duì)AutoCAD二次開(kāi)發(fā)進(jìn)行初步了解
2007.3.5 ——2007.3.20
2
熟悉AutoCAD二次開(kāi)發(fā)的過(guò)程
2007.3.21——2007.4.10
3
基于數(shù)據(jù)庫(kù)的尺寸公差標(biāo)注設(shè)計(jì)的研究
2007.4.11——2007.5.15
4
修改完善編寫(xiě)設(shè)計(jì)說(shuō)明書(shū)
2007.5.16——2007.5.20
5
設(shè)計(jì)論文撰寫(xiě)
2007.5.21——2007.6.5
目 錄 目 錄 ................................................................................................................................................................- 1 - 第一章 AUTOCAD 二次開(kāi)發(fā)概述 .......................................................................................................- 2 - 1.1 AUTOCAD 簡(jiǎn)介 .......................................................................................................................................- 2 - 1.2 AUTOCAD 二次開(kāi)發(fā)語(yǔ)言及工具簡(jiǎn)介 .................................................................................................- 3 - 1.2.1 AutoLISP ...........................................................................................................................................- 3 - 1.2.2 ADS....................................................................................................................................................- 3 - 1.2.3 ObjectARX ........................................................................................................................................- 4 - 1.2.4 VisualLISP.........................................................................................................................................- 4 - 1.2.5 VBA ...................................................................................................................................................- 5 - 1.2.6 Visual Java.........................................................................................................................................- 5 - 1.3 AUTOLISP 語(yǔ)言與 DCL 簡(jiǎn)介 ...............................................................................................................- 5 - 1.3.1 AutoLISP 簡(jiǎn)介 ..................................................................................................................................- 5 - 1.3.2 AutoLISP 的特點(diǎn) ..............................................................................................................................- 6 - 1.3.3 DCL 簡(jiǎn)介 ..........................................................................................................................................- 7 - 1.4 參數(shù)化繪圖系統(tǒng)簡(jiǎn)介 .............................................................................................................................- 7 - 1.4.1 概 述 .................................................................................................................................................- 7 - 1.4.2 理解參數(shù)化設(shè)計(jì) ..............................................................................................................................- 8 - 1.4.3 設(shè)計(jì)參數(shù)化系統(tǒng)的基本要素 .........................................................................................................- 9 - 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) .........................................................................................................- 10 - 2.1 概述 .........................................................................................................................................................- 10 - 2.2 設(shè)置繪圖環(huán)境設(shè)計(jì) ................................................................................................................................- 10 - 2.2.1 設(shè)計(jì)思想及流程 .............................................................................................................................- 11 - 2.2.2 設(shè)計(jì)實(shí)施與程序設(shè)計(jì) ...................................................................................................................- 11 - 2.2.3 圖框的繪制 ....................................................................................................................................- 15 - 2.2.4 繪制標(biāo)題欄 ....................................................................................................................................- 18 - 2.2.5 倒角標(biāo)注 ........................................................................................................................................- 23 - 2.2.6 基準(zhǔn)符號(hào) ........................................................................................................................................- 24 - 2.2.7 技術(shù)要求可視化輸入 ...................................................................................................................- 26 - 2.2.8 粗糙度符號(hào) ....................................................................................................................................- 28 - 第三章 三角帶輪參數(shù)化繪圖設(shè)計(jì) ......................................................................................................- 33 - 3.1 總體設(shè)計(jì)思想 ........................................................................................................................................- 33 - 3.2 參數(shù)化繪圖程序的實(shí)現(xiàn) ........................................................................................................................- 34 - 3.2.1 帶輪繪圖參數(shù)的確定 ....................................................................................................................- 34 - 3.2.2 參數(shù)的是輸入 .................................................................................................................................- 35 - 3.2.3 帶輪零件圖的繪圖功能模塊 ........................................................................................................- 37 - 3.2.4 零件圖的生成 .................................................................................................................................- 38 - 3.3 本章小結(jié) .................................................................................................................................................- 46 - 結(jié) 論 ...............................................................................................................................................................- 45- 參考文獻(xiàn) .........................................................................................................................................................- 47 - 致 謝 ..............................................................................................................................................................- 48 - 附錄表 ..............................................................................................................................................................- 49 - 摘 要
目前,我國(guó)CAD技術(shù)的應(yīng)用取得了較好的成績(jī),但由于CAD技術(shù)涉及面廣,影響因素多,在實(shí)際應(yīng)用方面還不可能完全滿(mǎn)足要求。二次開(kāi)發(fā)是CAD技術(shù)應(yīng)用取得實(shí)效的關(guān)鍵環(huán)節(jié),因此,結(jié)合具體專(zhuān)業(yè)的CAD二次開(kāi)發(fā)更具有實(shí)際意義。
本次設(shè)計(jì)主要以帶輪為研究對(duì)象,介紹了用AUTO CAD二次開(kāi)發(fā)對(duì)其進(jìn)行設(shè)計(jì)的過(guò)程,用Visual Lisp語(yǔ)言編制程序,設(shè)計(jì)對(duì)話框的樣式和驅(qū)動(dòng)程序、圖像的繪制和標(biāo)注的編寫(xiě)。
關(guān)鍵詞:AUTO CAD二次開(kāi)發(fā),帶輪,Visual Lisp語(yǔ)言編程
ABSTRCT
With the progress of the society and keen competition of market economy, having put forward higher, newer request for engineering design, CAD is exactly the result meeting the needs of this one. At present, the application of CAD technology of our country makes better achievements, but because CAD technology involves a wide range of knowledge, influencing the factor may not totally meet the demands in actual application more. Secondary development CAD key link that technical application achieve tangible results, so combine concrete specialized CAD secondary development have a actual meaning even more.
This design mainly takes pulley as the research object, introduced Redevelop-
ments carried on the design with AUTO CAD to it the process. Then with Visual the Lisp language coding, the design dialog box style and the driver, the image plan and the sign note compilation, synthesized the university to study the knowledge。
Key words: Redevelopments with AUTO CAD,pulley,Visual Lisp language
process
目 錄 目 錄 ................................................................................................................................................................- 1 - 第一章 AUTOCAD 二次開(kāi)發(fā)概述 .......................................................................................................- 1 - 1.1 AUTOCAD 簡(jiǎn)介 .......................................................................................................................................- 1 - 1.2 AUTOCAD 二次開(kāi)發(fā)語(yǔ)言及工具簡(jiǎn)介 .................................................................................................- 2 - 1.2.1 AutoLISP ...........................................................................................................................................- 2 - 1.2.2 ADS....................................................................................................................................................- 2 - 1.2.3 ObjectARX ........................................................................................................................................- 3 - 1.2.4 VisualLISP.........................................................................................................................................- 3 - 1.2.5 VBA ...................................................................................................................................................- 4 - 1.2.6 Visual Java.........................................................................................................................................- 4 - 1.3 AUTOLISP 語(yǔ)言與 DCL 簡(jiǎn)介 ...............................................................................................................- 4 - 1.3.1 AutoLISP 簡(jiǎn)介 ..................................................................................................................................- 4 - 1.3.2 AutoLISP 的特點(diǎn) ..............................................................................................................................- 5 - 1.3.3 DCL 簡(jiǎn)介 ..........................................................................................................................................- 6 - 1.4 參數(shù)化繪圖系統(tǒng)簡(jiǎn)介 ..............................................................................................................................- 6 - 1.4.1 概 述 .................................................................................................................................................- 6 - 1.4.2 理解參數(shù)化設(shè)計(jì) ..............................................................................................................................- 7 - 1.4.3 設(shè)計(jì)參數(shù)化系統(tǒng)的基本要素 .........................................................................................................- 8 - 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) ...........................................................................................................- 9 - 2.1 概述 ...........................................................................................................................................................- 9 - 2.2 設(shè)置繪圖環(huán)境設(shè)計(jì) ..................................................................................................................................- 9 - 2.2.1 設(shè)計(jì)思想及流程 .............................................................................................................................- 10 - 2.2.2 設(shè)計(jì)實(shí)施與程序設(shè)計(jì) ...................................................................................................................- 10 - 2.2.3 圖框的繪制 ....................................................................................................................................- 14 - 2.2.4 繪制標(biāo)題欄 ....................................................................................................................................- 17 - 2.2.5 倒角標(biāo)注 ........................................................................................................................................- 20 - 2.2.6 基準(zhǔn)符號(hào) ........................................................................................................................................- 21 - 2.2.7 技術(shù)要求可視化輸入 ...................................................................................................................- 23 - 2.2.8 粗糙度符號(hào) ....................................................................................................................................- 25 - 第三章 三角帶輪參數(shù)化繪圖設(shè)計(jì) ......................................................................................................- 30 - 3.1 總體設(shè)計(jì)思想 .........................................................................................................................................- 30 - 3.2 參數(shù)化繪圖程序的實(shí)現(xiàn) ........................................................................................................................- 31 - 3.2.1 帶輪繪圖參數(shù)的確定 ....................................................................................................................- 31 - 3.2.2 參數(shù)的是輸入 .................................................................................................................................- 32 - 3.2.3 帶輪零件圖的繪圖功能模塊 ........................................................................................................- 34 - 3.2.4 零件圖的生成 .................................................................................................................................- 35 - 3.3 本章小結(jié) .................................................................................................................................................- 43 - 結(jié) 論 ..............................................................................................................................................................- 45 - 參考文獻(xiàn) .........................................................................................................................................................- 45 - 致 謝 ..............................................................................................................................................................- 46 - 附錄表 ..............................................................................................................................................................- 46 - 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 1 - 第一章 AutoCAD 二次開(kāi)發(fā)概述 AutoCAD 是一個(gè)通用 CAD 平臺(tái),它不僅具有強(qiáng)大的繪圖、編輯功能,而且具有 開(kāi)放的體系結(jié)構(gòu),允許用戶(hù)對(duì)其進(jìn)行二次開(kāi)發(fā),以滿(mǎn)足繪圖過(guò)程中的特殊要求。 AutoCAD 榮登全球繪圖軟件的龍頭寶座,主要是因?yàn)樗哂虚_(kāi)放的體系結(jié)構(gòu)。它允許 用戶(hù)和開(kāi)發(fā)者采用高級(jí)編程語(yǔ)言對(duì)其進(jìn)行擴(kuò)充和修改,即二次開(kāi)發(fā),能最大限度地滿(mǎn) 足用戶(hù)的特殊要求。AutoCAD 第一版于 1982 年 11 月由 AutoDESK 公司推出,目前最 新版本是 AutoCAD 2007。 1.1 AutoCAD 簡(jiǎn)介 Auto CAD是美國(guó) AUTODESK 公司1982年在微機(jī)上開(kāi)發(fā)的繪圖軟件包,Auto CAD 的版本不斷更新 ,更新的版本功能逐步增加,現(xiàn)已成為強(qiáng)有力繪圖工具,在國(guó)際 上廣為流傳。 Auto CAD 廣泛應(yīng)用于建筑、機(jī)械、電子、藝術(shù)造型及工程管理等領(lǐng)域,是微機(jī) 上最為流行的繪圖軟件之一。使用Auto CAD對(duì)用戶(hù)的計(jì)算機(jī)和英語(yǔ)不作要求,現(xiàn)在已 有了中文版的Auto CAD 軟件,可應(yīng)用中文直接與軟件對(duì)話,使用相當(dāng)方便,掌握好 Auto CAD 的關(guān)鍵就是實(shí)踐,通過(guò)實(shí)踐掌握各種命令的應(yīng)用,技巧繪圖以提高繪圖的 速度。其主要功能有: 一、繪圖功能 Auto CAD 提供了豐富的基本繪圖實(shí)體,具有完善的圖形繪制功能,繪制的圖形 是由預(yù)先定義好的圖形元素即實(shí)體(Entity) 所組成,實(shí)體通過(guò)命令調(diào)用和光標(biāo)定位即 可輸入所繪制的圖形。如:點(diǎn)、直線、多邊形、圓弧、橢圓、文本、剖面線、尺寸等 等。 二、編輯功能 Auto CAD提供了各種修改手段,具有強(qiáng)大的圖形編輯功能,Auto CAD 可以對(duì)圖 形進(jìn)行擦除、修改、拷貝、移動(dòng)、鏡像、斷開(kāi)、修剪、旋轉(zhuǎn)等多種編輯操作。 三、繪圖工具 Auto CAD 為用戶(hù)提供了大量的繪圖工具,如捕捉、刪格、正交、動(dòng)態(tài)坐標(biāo)、目 標(biāo)捕捉、縮放、點(diǎn)過(guò)濾、用戶(hù)坐標(biāo)等等輔助繪圖工具。 第一章 AUTO CAD 二次開(kāi)發(fā)語(yǔ)言及工具 - 2 - 四、三維功能 Auto CAD 可直接繪制三維圖形,它提供了一個(gè)實(shí)體造型模塊(AME),可生成 典型三維實(shí)心體、拉伸體、回轉(zhuǎn)體,對(duì)這些實(shí)心體進(jìn)行并差交等布爾運(yùn)算可以構(gòu)成組 合體,進(jìn)而可獲得剖切圖輪廓圖著色圖等。 五、開(kāi)發(fā)環(huán)境 Auto CAD 內(nèi)含AutoLISP語(yǔ)言和ADS開(kāi)發(fā)系統(tǒng),便于用戶(hù)進(jìn)行二次開(kāi)發(fā)。用戶(hù)可 以利用AutoLISP 編制各種程序,從而為 Auto CAD增加新的命令,也可以為各專(zhuān)業(yè)編制 圖形數(shù)據(jù)庫(kù)。ADS是以C語(yǔ)言為基礎(chǔ)的開(kāi)發(fā)系統(tǒng),它具有AutoLISP 的大部分功能,并可 使用標(biāo)準(zhǔn)C 函數(shù),是開(kāi)發(fā)Auto CAD 的另一有效工具。 另外 Auto CAD 還有制作幻燈片、文件管理等其它功能。 1.2 AutoCAD 二次開(kāi)發(fā)語(yǔ)言及工具簡(jiǎn)介 1.2.1 AutoLISP AutoLISP 的全名是 LIST Processing Language,它出現(xiàn)于 1985 年推出的 AutoCAD R2.18 中,是一種嵌入在 AutoCAD 內(nèi)部的編程語(yǔ)言,是 LISP 原版的一個(gè)子集,她一 直是低版本 AutoCAD 的首選編程語(yǔ)言。它是一種表處理語(yǔ)言,是被解釋執(zhí)行的,任何 一個(gè)語(yǔ)句鍵入后就能馬上執(zhí)行,它對(duì)于交互式的程序開(kāi)發(fā)非常方便。其缺點(diǎn)是繼承了 LISP 語(yǔ)言的編程規(guī)則而導(dǎo)致繁多的括號(hào)。 1.2.2 ADS ADS 的全名是 AutoCAD Development System,它是 AutoCAD 的 C 語(yǔ)言開(kāi)發(fā)系統(tǒng), ADS 本質(zhì)上是一組可以用 C 語(yǔ)言編寫(xiě) AutoCAD 應(yīng)用程序的頭文件和目標(biāo)庫(kù),它直接 利用用戶(hù)熟悉的各種流行的 C 語(yǔ)言編譯器,將應(yīng)用程序編譯成可執(zhí)行的文件在 AutoCAD 環(huán)境下運(yùn)行,這種可以在 AutoCAD 環(huán)境中直接運(yùn)行的可執(zhí)行文件叫做 ADS 應(yīng)用程序。ADS 由于其速度快,又采用結(jié)構(gòu)化的編程體系,因而很適合于復(fù)雜的數(shù)據(jù) 處理,如二次開(kāi)發(fā)的機(jī)械設(shè)計(jì) CAD、工程分析 CAD、建筑結(jié)構(gòu) CAD、土木工程 CAD、化學(xué)工程 CAD、電氣工程 CAD 等。 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 3 - 1.2.3 ObjectARX ObjectARX 是一種嶄新的開(kāi)發(fā) AutoCAD 應(yīng)用程序的工具,她以 C++為編程語(yǔ)言, 采用先進(jìn)的面向?qū)ο蟮木幊淘恚峁┛膳c AutoCAD 直接交互的開(kāi)發(fā)環(huán)境,能使用戶(hù) 方便快捷地開(kāi)發(fā)出高效簡(jiǎn)潔的 Auto CAD 應(yīng)用程序。ObjectARX 并沒(méi)有包含在 AutoCAD 中,可在 AutoDESK 公司網(wǎng)站中去下載,其最新版本是 ObjectARX for AutoCAD 2000,它能夠?qū)?AutoCAD 的所有事務(wù)進(jìn)行完整的、先進(jìn)的、面向?qū)ο蟮脑O(shè) 計(jì)與開(kāi)發(fā),并且開(kāi)發(fā)的應(yīng)用程序速度更快、集成度更高、穩(wěn)定性更強(qiáng)。ObjectARX 從 本質(zhì)上講,是一種特定的 C++編程環(huán)境,它包括一組動(dòng)態(tài)鏈接庫(kù)(DLL),這些庫(kù)與 AutoCAD 在同一地址空間運(yùn)行并能直接利用 AutoCAD 核心數(shù)據(jù)結(jié)構(gòu)和代碼,庫(kù)中包 含一組通用工具,使得二次開(kāi)發(fā)者可以充分利用 AutoCAD 的開(kāi)放結(jié)構(gòu),直接訪問(wèn) AutoCAD 數(shù)據(jù)庫(kù)結(jié)構(gòu)、圖形系統(tǒng)以及 CAD 幾何造型核心,以便能在運(yùn)行期間實(shí)時(shí)擴(kuò) 展 AutoCAD 的功能,創(chuàng)建能全面享受 AutoCAD 固有命令的新命令。ObjectARX 的核 心是兩組關(guān)鍵的 API,即 AcDb(Auto CAD 數(shù)據(jù)庫(kù) )和 AcEd(Auto CAD 編譯器) ,另外還 有其它的一些重要庫(kù)組件,如 AcRX(Auto CAD 實(shí)時(shí)擴(kuò)展 )、AcGi(Auto CAD 圖形接口)、 AcGe(Auto CAD 幾何庫(kù)) 、ADSRX(Auto CAD 開(kāi)發(fā)系統(tǒng)實(shí)時(shí)擴(kuò)展)。ObjectARX 還可 以按需要加載應(yīng)用程序;使用 ObjectARX 進(jìn)行應(yīng)用開(kāi)發(fā)還可以在同一水平上與 Windows 系統(tǒng)集成,并與其它 Windows 應(yīng)用程序?qū)崿F(xiàn)交互操作。 1.2.4 VisualLISP VisualLISP 已經(jīng)被完整地集成到 AutoCAD 2000 中,它為開(kāi)發(fā)者提供了嶄新的、增 強(qiáng)的集成開(kāi)發(fā)環(huán)境,一改過(guò)去在 AutoCAD 中內(nèi)嵌 AtuoLISP 運(yùn)行引擎的機(jī)制,這樣開(kāi) 發(fā)者可以直接使用 AutoCAD 中的對(duì)象和反應(yīng)器,進(jìn)行更底層的開(kāi)發(fā)。其特點(diǎn)為自身是 AutoCAD 2000 中默認(rèn)的代碼編輯工具;用它開(kāi)發(fā) AutoLISP 程序的時(shí)間被大大地縮短, 原始代碼能被保密,以防盜版和被更改;能幫助用戶(hù)使用 ActiveX 對(duì)象及其事件;使 用了流行的有色代碼編輯器和完善的調(diào)試工具,讓用戶(hù)很容易創(chuàng)建和分析 LISP 程序的 運(yùn)行情況。在 VisualLISP 中新增了一些函數(shù):如基于 AutoLISP 的 ActiveX/COM 自動(dòng) 化操作接口;用于執(zhí)行基于 Auto CAD 內(nèi)部事件的 LISP 程序的對(duì)象反應(yīng)器;新增了能 夠?qū)Σ僮飨到y(tǒng)文件進(jìn)行操作的函數(shù)。Visual LISP 為 AutoLISP 應(yīng)用程序提供三種文件 格式選項(xiàng): ? LSP 文件 (.lsp) - 一種包含 AutoLISP 程序代碼的 ASCII 文本文件。 ? FAS 文件 (.fas) - 一個(gè) LSP 程序文件的二進(jìn)制編譯版本。 第一章 AUTO CAD 二次開(kāi)發(fā)語(yǔ)言及工具 - 4 - ? VLX 文件 (.vlx) - 一個(gè)或多個(gè) LSP 文件和/或?qū)υ捒蚩刂普Z(yǔ)言 (DCL) 文件的編 譯集合。 1.2.5 VBA VBA 即 Mcrosoft office 中的 Visual Basic for Applications,它被集成到 AutoCAD 2000 中。VBA 為開(kāi)發(fā)者提供了一種新的選擇,也為用戶(hù)訪問(wèn) AutoCAD 2000 中豐富的 技術(shù)框架打開(kāi)一條新的通道。VBA 和 AutoCAD 2000 中強(qiáng)大的 ActiveX 自動(dòng)化對(duì)象模 型的結(jié)合,代表了一種新型的定制 AutoCAD 的模式構(gòu)架。通過(guò) VBA,現(xiàn)在可以操作 AutoCAD,控制 ActiveX 和其它一些應(yīng)用程序,使之相互之間發(fā)生互易活動(dòng)。 1.2.6 Visual Java Java 是最早由 Sun 公司創(chuàng)建的一種頗具魅力的程序設(shè)計(jì)語(yǔ)言,它是針對(duì)嵌入系統(tǒng) 而設(shè)計(jì)的。像許多開(kāi)發(fā)語(yǔ)言一樣,Java 是一組實(shí)時(shí)庫(kù)的集合,可為軟件開(kāi)發(fā)者提供多 種工具來(lái)創(chuàng)建軟件,管理用戶(hù)接口,進(jìn)行網(wǎng)絡(luò)通訊、發(fā)布應(yīng)用程序等。對(duì) AutoCAD 用 戶(hù)和開(kāi)發(fā)者而言,Java 代表著新一代的編程語(yǔ)言,它主要用于開(kāi)發(fā)出全新的優(yōu)秀產(chǎn)品。 Auto CAD 為現(xiàn)在提供了完整的、高性能的、面向?qū)ο蟮?CAD 程序開(kāi)發(fā)環(huán)境,為 用戶(hù)和開(kāi)發(fā)者提供了多種新的選擇,使得對(duì) AutoCAD 二次開(kāi)發(fā)和定制變得輕松而容易。 通過(guò)以上的介紹,幫助大家在二次開(kāi)發(fā)時(shí)有所選擇,提高工效,達(dá)到事半工倍的目的。 1.3 AutoLISP 語(yǔ)言與 DCL 簡(jiǎn)介 1.3.1 AutoLISP 簡(jiǎn)介 AutoCAD 為用戶(hù)提供了眾多的高級(jí)編程環(huán)境,主要有嵌套在 AutoCAD 之中的 AutoLISP 和 VBA,面向?qū)ο筇卣鞯?C++編程環(huán)境 ARX,以及其它通過(guò)動(dòng)態(tài)數(shù)據(jù)交換 (DDE )完成與 AutoCAD 之間通信的高級(jí)語(yǔ)言應(yīng)用程序等。 AutoLISP 是一種計(jì)算機(jī)的表處理語(yǔ)言, LISP(List Processing,表處理解釋語(yǔ)言) 誕生于 20 世紀(jì) 50 年代末期,是人工智能學(xué)科領(lǐng)域廣泛應(yīng)用的程序設(shè)計(jì)語(yǔ)言。 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 5 - AutoLISP 語(yǔ)言是 Autodesk 公司為用戶(hù)提供的在 AutoCAD 平臺(tái)上進(jìn)行二次開(kāi)發(fā)的 早期語(yǔ)言。AutoLISP 程序源于人工智能語(yǔ)言 LISP,是一種對(duì) AutoCAD 進(jìn)行定制、二 次開(kāi)發(fā)的非結(jié)構(gòu)化程序設(shè)計(jì)語(yǔ)言,它嵌套于 AutoCAD 內(nèi)部,是 LISP 語(yǔ)言與 AutoCAD 有機(jī)結(jié)合的產(chǎn)物。AutoLISP 是開(kāi)發(fā) AutoCAD 的重要工具之一。AutoLISP 不僅具備一 般高級(jí)基本結(jié)構(gòu)與功能,而且還具有強(qiáng)大的圖形處理功能。由于 AutoLISP 語(yǔ)法簡(jiǎn)單易 于掌握,函數(shù)功能強(qiáng)大,因此,是 AutoCAD 用戶(hù)使用較為廣泛的編程語(yǔ)言之一。 就目前而言,與 VBA 和 ARX 相比,采用 AutoLISP 對(duì) AutoCAD 進(jìn)行工程專(zhuān)業(yè)領(lǐng) 域的應(yīng)用程序或 CAD 系統(tǒng)的開(kāi)發(fā)有許多明顯的優(yōu)勢(shì),比如在功能上與 ARX 已相差無(wú) 幾,而學(xué)習(xí) AutoLISP 所需計(jì)算機(jī)專(zhuān)業(yè)知識(shí)遠(yuǎn)遠(yuǎn)低于 C++。VBA 雖然在對(duì)話框設(shè)計(jì)能 力上比 AutoLISP 強(qiáng)許多,但由于它使用 ActiveX 與 AutoCAD 交互,運(yùn)行效率不如 AutoLISP,且代碼保密性差。另外,從 AutoCAD 版本不斷升級(jí)中可看出,Autodesk 公 司仍在繼續(xù)擴(kuò)充 AutoLISP 的功能。 1996 年底推出 Visual LISP,對(duì) AutoLISP 是一次重大改進(jìn),增強(qiáng)了 AutoCAD 的二 次開(kāi)發(fā)能力。Visual LISP(簡(jiǎn)稱(chēng) VLISP)是一個(gè)用 AutoLISP 語(yǔ)言進(jìn)行程序開(kāi)發(fā)的軟件 工具,它提供的集成開(kāi)發(fā)環(huán)境(Integrated Development Environment,IDE)提供有眾 多工具,功能十分強(qiáng)大,可使用戶(hù)方便地用 AutoLISP 語(yǔ)言進(jìn)行程序開(kāi)發(fā)中的編寫(xiě)程序 代碼、調(diào)試程序等操作。 1.3.2 AutoLISP 的特點(diǎn) AutoLISP 具有如下功能: (1)AutoLISP 語(yǔ)言是在普通的 LISP 語(yǔ)言基礎(chǔ)上,擴(kuò)充了許多適用于 CAD 應(yīng)用 的特殊功能而形成的,一種僅能以解釋方式運(yùn)行于 AutoCAD 內(nèi)部的解釋性程序設(shè)計(jì)語(yǔ) 言。 (2)AutoLISP 語(yǔ)言中的一切成分都是以函數(shù)的形式給出的,它沒(méi)有語(yǔ)言概念或 者其他語(yǔ)法結(jié)構(gòu)。執(zhí)行 AutoLISP 程序就是執(zhí)行一些函數(shù),再調(diào)用其他函數(shù)。 (3)AutoLISP 把數(shù)據(jù)和程序統(tǒng)一表達(dá)為表的結(jié)構(gòu),既 S—表達(dá)式,故可把程序當(dāng) 作數(shù)據(jù)來(lái)處理,也可把數(shù)據(jù)當(dāng)作程序來(lái)執(zhí)行。 (4)AutoLISP 是開(kāi)發(fā) AutoCAD 的重要工具之一。語(yǔ)言中的程序運(yùn)行過(guò)程就是對(duì) 函數(shù)求值的過(guò)程,是在對(duì)函數(shù)求值的過(guò)程中實(shí)現(xiàn)對(duì)函數(shù)的功能。 (5)AutoLISP 語(yǔ)言的主要控制結(jié)構(gòu)是采用遞歸調(diào)用的方式。遞歸方式的使用, 使得程序設(shè)計(jì)簡(jiǎn)單易懂。 第一章 AUTO CAD 二次開(kāi)發(fā)語(yǔ)言及工具 - 6 - 就象上面所說(shuō)的 AutoLISP 有自己的優(yōu)點(diǎn)以及適用場(chǎng)合、基本數(shù)據(jù)結(jié)構(gòu)以及程序結(jié) 構(gòu),包括程序的編輯、加載和運(yùn)行。 1.3.3 DCL 簡(jiǎn)介 對(duì)話框是一種邊界固定的窗口,也是一種先進(jìn)的、流行的人機(jī)交互界面。運(yùn)用對(duì) 話框可以方便而直觀的實(shí)現(xiàn)程序設(shè)計(jì)時(shí)的數(shù)據(jù)傳輸和信息傳輸,所以當(dāng)今幾乎所以的 軟件都要用到對(duì)話框界面與用戶(hù)交流。 DCL 話框具有操作直觀、方便、易于輸入和修改數(shù)據(jù)等特點(diǎn),是現(xiàn)代軟件設(shè)計(jì)中 必不可少的風(fēng)格。對(duì)話框是一個(gè)彈出式窗口,它與用戶(hù)進(jìn)行信息通信,一般被用于特 定的與輸入有關(guān)的任務(wù)。 AutoCAD 有自己的一套對(duì)話框設(shè)計(jì)語(yǔ)言,稱(chēng)之為對(duì)話框控制語(yǔ)言(DCL) 。 AutoCAD 從 12 版本起就提供了對(duì)話框語(yǔ)言,用戶(hù)基于 AutoCAD 開(kāi)發(fā)自己的應(yīng)用程序 時(shí),可以利用 AutoCAD 所提供的可編程對(duì)話框 PDB(Programmable Dialog Box) 功能創(chuàng)建新的對(duì)話框,也可以修改一個(gè)已經(jīng)存在的對(duì)話框。AutoCAD 對(duì)話框新穎直觀, 在一定程度上簡(jiǎn)化了用戶(hù)交互操作,極大地提高了軟件的使用效率。 對(duì)話框是用對(duì)話框控制語(yǔ)言 DCL(Dialog Control Language )編寫(xiě)的 ASCII 文件 定義的。DCL 語(yǔ)言將定義對(duì)話框以什么方式出現(xiàn)以及它包含的內(nèi)容,例如按鈕,列表, 文本等。對(duì)話框的設(shè)計(jì)以約束條件為基礎(chǔ),框的尺寸及其部件的布局均應(yīng)遵循統(tǒng)一規(guī) 則,用戶(hù)不需要指出每一部分的尺寸大小及定位關(guān)系,系統(tǒng)自動(dòng)進(jìn)行布置。 AutoCAD 為用戶(hù)提供的可編程對(duì)話框技術(shù)是由專(zhuān)用的對(duì)話框描述語(yǔ)言(DCL)和 AutoLISP 驅(qū)動(dòng)函數(shù)兩部分內(nèi)容組成的。對(duì)話框的部件只定義了其行為方式,如按鈕只 意味著按壓,列表只顯示相關(guān)的內(nèi)容以便用戶(hù)做出選擇等,一個(gè)對(duì)話框的使用方式實(shí) 際上完全由它的應(yīng)用程序(利用 Auto LISP/VLISP 或 ADS 所編寫(xiě)的程序)所決定。 1.4 參數(shù)化繪圖系統(tǒng)簡(jiǎn)介 1.4.1 概 述 AutoCAD 參數(shù)化程序從用戶(hù)取得參數(shù)或外部文件,然后在 AutoCAD 圖形中生成 圖像。這些參數(shù)可以是基于 AutoCAD ,AutoLisp 或 ADS 的。一個(gè)參數(shù)程序可以畫(huà)一 個(gè)公共零件的許多不同尺寸,不同形狀的圖。通過(guò)參數(shù)化,可以畫(huà)出一系列復(fù)雜的物 體,他們共享公共的參數(shù)關(guān)系。如果只改變比例,塊是最好的解決方法。但如果這種 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 7 - 變動(dòng)需要大規(guī)模的相似塊的庫(kù)時(shí),采用參數(shù)化可以提高柔性,減少錯(cuò)誤,并產(chǎn)生巨大 的效益。 1.4.2 理解參數(shù)化設(shè)計(jì) 參數(shù)化繪圖在現(xiàn)代機(jī)械 CAD 中的應(yīng)用很廣,特別是對(duì)于定型的機(jī)械產(chǎn)品設(shè)計(jì),需 要形成系列,以便針對(duì)用戶(hù)的生產(chǎn)特點(diǎn)提供不同大小、功率、規(guī)格的產(chǎn)品。這就要求 該產(chǎn)品的 CAD 系統(tǒng)具有參數(shù)化的設(shè)計(jì)功能,使得產(chǎn)品的設(shè)計(jì)圖可以方便地隨著某些結(jié) 構(gòu)尺寸的修改而修改并自動(dòng)地重新繪出所要求的圖樣,實(shí)現(xiàn)尺寸驅(qū)動(dòng)圖形的自動(dòng)變化。 在當(dāng)今流行 CAD 軟件中,每一個(gè)簡(jiǎn)單的命令調(diào)用就是一個(gè)參數(shù)化繪圖的應(yīng)用。這 就像 C 語(yǔ)言或其他高級(jí)語(yǔ)言中的函數(shù)的調(diào)用一樣,輸入?yún)?shù)后執(zhí)行特定的操作。對(duì)一 個(gè)復(fù)雜的機(jī)械圖進(jìn)行參數(shù)化設(shè)計(jì),其實(shí)就是一些簡(jiǎn)單的命令按照一定的拓?fù)潢P(guān)系的中 和。參數(shù)化設(shè)計(jì)對(duì)象的結(jié)構(gòu)形狀一般比較定型,其尺寸關(guān)系可以用一組參數(shù)來(lái)確定。 這樣參數(shù)化系統(tǒng)的繪圖功能就很明確的得以實(shí)現(xiàn)。 為了設(shè)計(jì)出更好的對(duì)話框,不僅要考慮其實(shí)際用途,而且還要從美觀、功效、和 WINDOWS 環(huán)境的 GUI 標(biāo)準(zhǔn)等方面來(lái)考慮。包括以下幾點(diǎn): (1)美觀和功效; (2)前后一致的設(shè)計(jì)和清晰明了的語(yǔ)言; (3)用戶(hù)控制:可以為用戶(hù)提供一些可以訪問(wèn)對(duì)話框輸入的控件。 (4)容錯(cuò)處理:讓對(duì)話框具有一定的容錯(cuò)性可以使用戶(hù)更加自如的操作而不必?fù)?dān) 心產(chǎn)生不可逆的錯(cuò)誤。 (5)提供幫助:在設(shè)計(jì)對(duì)話框時(shí),應(yīng)提供相應(yīng)的幫助功能模塊。 (6)考慮殘疾用戶(hù):如果能為身有殘疾的用戶(hù)多考慮一些,則所設(shè)計(jì)的程序就能 夠方便更多的用戶(hù)。 (7)單詞字母大寫(xiě); (8)避免縮略語(yǔ):由于縮略語(yǔ)不便于用戶(hù)理解,如果空間的限制而不得不使用縮 略語(yǔ),則盡量在一個(gè)組(如加框的列)內(nèi)使用一致的縮略語(yǔ); (9)布局:設(shè)計(jì)對(duì)話框時(shí),應(yīng)將其中的部件合理的按行或者列排列,以便用戶(hù)從 左至右或者從上至下的瀏覽; (10)控件的大小和位置; (11)禁用控件; 第一章 AUTO CAD 二次開(kāi)發(fā)語(yǔ)言及工具 - 8 - (12)嵌套對(duì)話框; (13)隱藏對(duì)話框; (14)提供默認(rèn)值; (15)處理鍵盤(pán)輸入; (16)預(yù)定義控件和控件組的指導(dǎo); (17)錯(cuò)誤處理:對(duì)話框可以通過(guò)錯(cuò)誤控件 errtile(文本控件的一種) ,或者是嵌 套的警告對(duì)話框顯示錯(cuò)誤和警告信息。 1.4.3 設(shè)計(jì)參數(shù)化系統(tǒng)的基本要素 一個(gè)較復(fù)雜的參數(shù)化部件系統(tǒng)的各個(gè)部分是隨系統(tǒng)的設(shè)計(jì)而變化,但他們大致上都 包括下列元素: A. 非 CAD 的外部文件,包括不見(jiàn)數(shù)據(jù)和設(shè)計(jì)特征。 B. 一個(gè)進(jìn)行提示和通信的用戶(hù)界面函數(shù)。 C. 一個(gè)讀數(shù)據(jù)文件的 AutoLisp 子程序。 D. 計(jì)算和繪圖函數(shù)。 E. 程序和函數(shù)的菜單界面。 F. 零件表列的屏幕幫助。 G. 材料幫助 。 設(shè)計(jì)一個(gè)整體系統(tǒng)實(shí)際上就是設(shè)計(jì)其各個(gè)功能的模塊,即通常說(shuō)的:模塊化設(shè)計(jì)。 這樣,以后的公共模塊就可以通用,這就大大的提高了設(shè)計(jì)效率! 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 9 - 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) 2.1 概述 為了簡(jiǎn)便繪圖工序,節(jié)省繪圖時(shí)間,利用 CAD 集成的 AutoLISP 語(yǔ)言編寫(xiě)固定的 繪圖程序,來(lái)完成比較通用的繪圖工序是一件十分必要的事情。 AutoLISP 語(yǔ)法簡(jiǎn)單,不用特殊的變量定義,非常富有彈性,比起其他的程序語(yǔ)言, 它的語(yǔ)法簡(jiǎn)單而又有其獨(dú)特風(fēng)格。除一般性的功能函數(shù)外,又擁有為數(shù)不少控制配合 AutoCAD 的特殊函數(shù),而且 AutoLISP 可直接調(diào)用執(zhí)行所有 AutoCAD 的命令,以及掌 握運(yùn)用所有的 AutoCAD 系統(tǒng)變量,功能十分強(qiáng)大。 編寫(xiě) AutoLISP 可以用來(lái)強(qiáng)化 AutoCAD 原有命令,可以創(chuàng)造更加有用的 AutoCAD 新命令,可以簡(jiǎn)化繁瑣的環(huán)境設(shè)定或繪圖步驟,可處理參數(shù)式繪圖,可用用來(lái)達(dá)到真 正靈活控制 AutoCAD 等等。 在實(shí)際生產(chǎn)中,利用 AutoLISP 語(yǔ)言來(lái)編寫(xiě)程序,可大大的提高生產(chǎn)效率。設(shè)想某 員工花了 20 小時(shí)編寫(xiě)一個(gè) AutoLISP 程序,表面上,這將近三天的時(shí)間,他一張圖都 沒(méi)有畫(huà),甚至可能偶有發(fā)呆,沉思。如此程序一天可以替公司繪圖部門(mén)節(jié)省一個(gè)小時(shí) 繪圖時(shí)間,那算一算,只要 20 天就可以抵消開(kāi)發(fā)成本,而 20 天以后就能節(jié)省大量的 繪圖時(shí)間,隨著使用的人越多,使用的時(shí)間越長(zhǎng),就可以獲得更大的生產(chǎn)效率。 根據(jù)這次對(duì)帶輪的設(shè)計(jì),可將本次設(shè)計(jì)的繪圖環(huán)境分解如下: (01) 圖框的繪制(包括國(guó)家標(biāo)準(zhǔn)圖幅的繪制) ; (02) 表面粗糙度的標(biāo)注 (03)形位公差標(biāo)注; (04)技術(shù)要求可視化輸入; (05) 標(biāo)題欄繪制; 2.2 設(shè)置繪圖環(huán)境設(shè)計(jì) 計(jì)算機(jī)輔助設(shè)計(jì)(CAD)技術(shù)具有快速設(shè)計(jì)和自動(dòng)繪圖的功能,是幫助企業(yè)適應(yīng) 飛速變化的技術(shù)要求和市場(chǎng)要求的產(chǎn)物。其中,AutoCAD 是一種通用圖形處理軟件, 功能強(qiáng)大,具有良好的開(kāi)放性,是機(jī)械行業(yè)“甩圖板 ”的好幫手,在企業(yè)中使用越來(lái)越 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) - 10 - 來(lái)普遍。但要繪制出符合我國(guó)機(jī)械制圖標(biāo)準(zhǔn)的工程圖,需要設(shè)置好繪圖環(huán)境才能達(dá)到 事半功倍的目的,而且每畫(huà)一張新圖都要重新創(chuàng)建。在企業(yè)之間甚至企業(yè)內(nèi)部,由于 不同用戶(hù)設(shè)置的繪圖環(huán)境不同給用戶(hù)的技術(shù)文件交流造成混亂與障礙的現(xiàn)象時(shí)有發(fā)生。 為此可利用 AutoCAD 提供的模板功能將設(shè)置好的繪圖環(huán)境保存為模板文件,另一個(gè)較 好的方法是對(duì)此進(jìn)行二次開(kāi)發(fā)。從而可大大提高繪圖效率及軟件開(kāi)發(fā)效率,同時(shí)還可 為技術(shù)文件的交流帶來(lái)方便。 2.2.1 設(shè)計(jì)思想及流程 機(jī)械工程圖模板的 AutoCAD 二次開(kāi)發(fā),即繪圖環(huán)境的設(shè)置的程序開(kāi)發(fā)設(shè)計(jì),主要 包括對(duì)象特性(即層設(shè)置) 、尺寸標(biāo)注樣式設(shè)置、文字樣式設(shè)置、圖幅設(shè)置及標(biāo)題欄的 程序開(kāi)發(fā),以便在實(shí)際使用中符合國(guó)家標(biāo)準(zhǔn),同時(shí)也提高繪圖效率。開(kāi)發(fā)過(guò)程結(jié)合實(shí) 際工程的二次開(kāi)發(fā)工作,以體現(xiàn)其優(yōu)越性。 2.2.2 設(shè)計(jì)實(shí)施與程序設(shè)計(jì) 2.2.2.1 設(shè)計(jì)中采用的國(guó)家標(biāo)準(zhǔn) 在設(shè)計(jì)中應(yīng)根據(jù)我國(guó)最新的機(jī)械制圖國(guó)標(biāo)的規(guī)定,在開(kāi)發(fā)過(guò)程中主要采用的國(guó)標(biāo) 有:GB10609.1-89 《技術(shù)制圖 標(biāo)題欄》 ; GB/T 14689-93 《技術(shù)制圖 圖紙幅面和格 式》 ;GB/T 14691-93 《技術(shù)制圖 字體》 ;GB/T 17450-1998 《機(jī)械制圖 圖線》 ;GB/T 16675.2-1996 《機(jī)械制圖 尺寸注法》 ;GB/T 14665-93 《計(jì)算機(jī)制圖用計(jì)算機(jī)信息交 換 制圖規(guī)則》 。 2.2.2.2 設(shè)置圖層 在 AutoCAD 軟件中,圖形對(duì)象的組織和管理是用圖層來(lái)實(shí)現(xiàn)的。每個(gè)圖形對(duì)象都 有其特性,包括對(duì)象的圖層、顏色、線型、線寬等。由于該項(xiàng)設(shè)置與輸出圖效果有較 大的聯(lián)系,因此在繪圖環(huán)境中的設(shè)置恰當(dāng)與否至關(guān)重要。根據(jù)繪圖經(jīng)驗(yàn),在此設(shè)置好 后直接按繪制樣式輸出,效果較理想,而且也可預(yù)見(jiàn)的。選擇計(jì)算機(jī)繪圖線寬的第 4 組,即粗實(shí)線、粗點(diǎn)畫(huà)線為 0.7mm,其余為 0.25mm。圖層的名字取為漢字,且與圖層 的用途一致以便分層作圖時(shí)圖層的轉(zhuǎn)換。根據(jù)使用效果粗實(shí)線線寬改為 0.4,其余改為 0。最后設(shè)置的圖層效果見(jiàn)下圖 2-1. 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 11 - 圖 2-1 設(shè)置圖層 2.2.2.3 置文字樣式 設(shè)置漢字字體、羅馬字體及字高。為方便使用,設(shè)置了多種字高的文字樣式。 參照國(guó)家標(biāo)準(zhǔn),根據(jù)經(jīng)驗(yàn),字體應(yīng)設(shè)為兩種樣式:TEXT 字體樣式選用 Romans.shx,寬度比例選 0.67,傾斜角度選 15°,該字體專(zhuān)用于標(biāo)注英文字母和阿拉伯 數(shù)字。HZ 字體樣式選仿宋 GB_2312,文字寬度系數(shù)選 0.67,該字體專(zhuān)用于漢字內(nèi)容的 書(shū)寫(xiě)。 2.2.2.4 設(shè)置標(biāo)注樣式 尺寸標(biāo)注樣式的設(shè)置是二維工程制圖繪圖環(huán)境設(shè)置的重要內(nèi)容。圖樣的標(biāo)注能否 符合國(guó)標(biāo)的關(guān)鍵在于尺寸標(biāo)注樣式的設(shè)置。在軟件開(kāi)發(fā)過(guò)程中只能通過(guò)尺寸標(biāo)注變量 的設(shè)置來(lái)完成,設(shè)置的具體內(nèi)容見(jiàn)下面程序說(shuō)明。在實(shí)際使用中,需要設(shè)置多個(gè)尺寸 標(biāo)注樣式。 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) - 12 - 設(shè)計(jì)的樣式見(jiàn)圖 2-2 設(shè)置標(biāo)注樣式 標(biāo)注樣式 0 標(biāo)注樣式 1 標(biāo)注樣式 2 標(biāo)注樣式 3 標(biāo)注樣式 4 (字體 TEXT3.5) (字體 HZ3.5) 無(wú)指引線 (用于直徑文字水平書(shū)寫(xiě)及漢字說(shuō)明) 圖 2-2 設(shè)置標(biāo)注樣式 2.2.2.5 源程序 ; =================================================== (defun szhthj() ;;; 設(shè)置所需的圖層 (command "linetype" "load" "center, ACAD_ISO02W100,ACAD_ISO10W100, ACAD_ISO12W100" "acadiso.lin" "") ;調(diào)所需線型 (command "layer" "make" "標(biāo)注層" "on" " 標(biāo)注層 " "color" 3 "標(biāo)注層" "lw" 0.0 "標(biāo)注層""") (command "layer" "make" "粗點(diǎn)畫(huà)線層" "on" " 粗點(diǎn)畫(huà)線層 " "color" 2 "粗點(diǎn)畫(huà)線層" "lw" 0.4 "粗點(diǎn)畫(huà)線層""L" "ACAD_ISO10W100" "粗點(diǎn)畫(huà)線層""") (command "layer" "make" "粗實(shí)線層" "on" " 粗實(shí)線層 " "color" 7 "粗實(shí)線層" "lw" 0.4 "粗實(shí)線層""") (command "layer" "make" "雙點(diǎn)畫(huà)線層" "on" "雙點(diǎn)畫(huà)線層" "color" 6 "雙點(diǎn)畫(huà)線層" "lw" 0.0 "雙點(diǎn)畫(huà)線層""l" "ACAD_ISO10W100""雙點(diǎn)畫(huà)線層""") (command "layer" "make" "文本層" "on" "文本層" "color" 5 "文本層" "lw" 0.0 "文本 層""") (command "layer" "make" "細(xì)點(diǎn)畫(huà)線層" "on" " 細(xì)點(diǎn)畫(huà)線層 " "color" 4 "細(xì)點(diǎn)畫(huà)線層" "lw" 0.4 "細(xì)點(diǎn)畫(huà)線層""") (command "layer" "make" "細(xì)實(shí)線層" "on" " 細(xì)實(shí)線層 " "color" 1 "細(xì)實(shí)線層" "lw" 0.0 "細(xì)實(shí)線層""") 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 13 - (command "layer" "make" "虛線層" "on" " 虛線層 ""color" 2 "虛線層" "lw" 0.0 "虛線層" "L" "ACAD_ISO02W100" "虛線層""") (command "layer" "make" "中心線層" "on" " 中心線層 ""color" 1 "中心線層" "lw" 0.0 "中心線層" "L" "center2" " 中心線層""") (command "layer" "make" "特性表層" "on" " 特性表層 ""color" 7 "特性表層" "lw" 0.0 "特性表層" "") ;;; 設(shè)置字體樣式 (command "-style" "text0" "romans" 0 0.7 15 """""") (command "-style" "text3.5" "romans" 3.5 0.7 15 """""") (command "-style" "text5" "romans" 5 0.7 15 """""") (command "-style" "text7" "romans" 7 0.7 15 """""") (command "-style" "text10" "romans" 10 0.7 15 """""") (command "-style" "text14" "romans" 14 0.7 15 """""") (command "-style" "text20" "romans" 20 0.7 15 """""") (command "-style" "hz0" "仿宋_GB2312" 0 0.7 0 """") (command "-style" "hz3.5" "仿宋_GB2312" 3.5 0.7 0 """") (command "-style" "hz5" "仿宋_GB2312" 5 0.7 0 """") (command "-style" "hz7" "仿宋_GB2312" 7 0.7 0 """") (command "-style" "hz10" "仿宋_GB2312" 10 0.7 0 """") (command "-style" "hz14" "仿宋_GB2312" 14 0.7 0 """") ;;; 設(shè)置尺寸標(biāo)注樣式 (command "dimclrd" 0 "dimdli" 5 "dimclre" 256 "dimexe" 3 "dimgap" 0.5 "dimasz" 2.5 "dimclrt" 256 "dimtxsty" "text3.5" "dimtxt" 3.5 "dimtad" 1 "dimjust" 0 "dimgap" 1 "dimtih" 0 "dimatfit" 2 "dimlunit" 2 "dimdec" 2 "dimdsep" "." "dimatftt" 2 "dimexo" 0 "dimse1" 1 "dimse2" 1 "dimstyle" "save" "標(biāo)注樣式 4" ) (command "dimclrd" 0 "dimdli" 5 "dimclre" 256 "dimexe" 3 "dimgap" 0.5 "dimasz" 2.5 "dimclrt" 256 "dimtxsty" "hz3.5" "dimtxt" 3.5 "dimtad" 1 "dimjust" 0 "dimgap" 1 "dimtih" 0 "dimatfit" 2 "dimlunit" 2 "dimdec" 2 "dimdsep" "." "dimatftt" 2 "dimexo" 0 "dimtoh" 1 "dimse1" 0 "dimse2" 0 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) - 14 - "dimstyle" "save" "標(biāo)注樣式 3" ) (command "dimclrd" 0 "dimdli" 5 "dimclre" 256 "dimexe" 3 "dimgap" 0.5 "dimasz" 2.5 "dimclrt" 256 "dimtxsty" "text3.5" "dimtxt" 3.5 "dimtad" 1 "dimjust" 0 "dimgap" 1 "dimtih" 0 "dimatfit" 2 "dimlunit" 2 "dimdec" 2 "dimdsep" "." "dimatftt" 2 "dimexo" 0 "dimtoh" 1 "dimse1" 0 "dimse2" 0 "dimstyle" "save" "標(biāo)注樣式 2" ) (command "dimclrd" 0 "dimdli" 5 "dimclre" 256 "dimexe" 3 "dimgap" 0.5 "dimasz" 2.5 "dimclrt" 256 "dimtxsty" "text3.5" "dimtxt" 3.5 "dimtad" 1 "dimjust" 0 "dimgap" 1 "dimtih" 0 "dimatfit" 2 "dimlunit" 2 "dimdec" 2 "dimdsep" "." "dimatftt" 2 "dimexo" 0 "dimtoh" 0 "dimse1" 0 "dimse2" 0 "dimstyle" "save" "標(biāo)注樣式 1" ) );defun end 2.2.3 圖框的繪制 在使用 CAD 繪圖軟件時(shí),如果每次畫(huà)圖都要手工操作 CAD 繪制出圖框,是一件 繁瑣的事情。如果圖紙數(shù)量巨大,為每一幅圖都繪制上圖框,需要的時(shí)間,耗費(fèi)的精 力是很巨大的。 圖框是幾乎每幅圖都必須繪制的基本模塊之一,具有極強(qiáng)的通用性,如果能用一 個(gè) LISP 程序來(lái)代替這樣的手工繪制,可以節(jié)省大量時(shí)間和精力,提高勞動(dòng)效率,是省 時(shí)省事的好方法。于是構(gòu)思設(shè)計(jì)一個(gè)關(guān)于圖框繪制的 LISP 程序。 由于繪制圖框時(shí),繪制某一幅面總有對(duì)應(yīng)的一組 B 和L,所以不需要給出其他的 變量,繪制圖框的基準(zhǔn)點(diǎn)定為坐標(biāo)原點(diǎn)(0,0) ,只需帶入相應(yīng)的B和 L,即可繪制 出所需要的圖框。 2.2.3.1 圖紙的基本幅面 繪制技術(shù)圖樣時(shí)優(yōu)先選用代號(hào)為 A0,A1,A2,A3,A4 ,自定義,六種基本幅面 (提供選擇) ,自定義圖框的尺寸由用戶(hù)輸入。 幅面代號(hào) A0 A1 A2 A3 A4 自定義 尺寸 B * L 841*1189 594*841 420*594 297*420 210*297 xxx*xxx 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 15 - 幅面尺寸中,B 表示短邊,L 表示長(zhǎng)邊。 2.2.3.2 圖框格式 圖框格式有兩種:一種是保留裝訂邊的圖框,用于需要裝訂的圖樣。另一種是不 留裝訂邊的圖框格式,用于不需要裝訂的圖樣。如圖 2-3、2-4 所示為兩種圖框的基本 樣式。 圖 2-3 帶裝訂邊圖框 圖 2-4 不帶裝訂邊圖框 幅面代 A0 A1 A2 A3 A4 自定義 第二章 用繪圖工具的開(kāi)發(fā)設(shè)計(jì) - 16 - 號(hào) B * L 841*1189 594*841 420*594 297*420 210*297 xxx*xxx e 20 10 c 10 5 a 25 2.2.3.3 實(shí)際程序所生成的圖框(見(jiàn)圖 2-5) 圖 2-5 圖框的繪制圖 2.2.3.4 操作實(shí)例(見(jiàn)圖 2-6) 在操作界面上選取圖紙幅面為 A3,格式為不帶邊框,復(fù)選對(duì)中符號(hào)和方向符號(hào)畫(huà) 圖。 四川理工學(xué)院畢業(yè)設(shè)計(jì) - 17 - 圖 2-6 A3 圖框繪制操作實(shí)例 2.2.3.5 源程序 源程序如下: (defun t
收藏
編號(hào):2654713
類(lèi)型:共享資源
大小:575.77KB
格式:ZIP
上傳時(shí)間:2019-11-28
15
積分
- 關(guān) 鍵 詞:
-
autocad
二次開(kāi)發(fā)
參數(shù)
繪制
設(shè)計(jì)
- 資源描述:
-
AutoCAD二次開(kāi)發(fā)――參數(shù)化繪制帶輪設(shè)計(jì),autocad,二次開(kāi)發(fā),參數(shù),繪制,設(shè)計(jì)
展開(kāi)閱讀全文
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶(hù)自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶(hù)書(shū)面授權(quán),請(qǐng)勿作他用。