版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、畢業(yè)設(shè)計(jì)(論文)題 目 基于AutoCAD的箱包CAD系統(tǒng)設(shè)計(jì)與開發(fā) 姓 名 學(xué) 號(hào) 專業(yè)班級(jí) 機(jī)自0601 所在學(xué)院 工程學(xué)院 指導(dǎo)教師(職稱) 二一 年 五 月 二十四 日1浙江大學(xué)城市學(xué)院畢業(yè)論文摘要基于AutoCAD的箱包CAD系統(tǒng)設(shè)計(jì)與開發(fā)【摘要】如今人們對(duì)箱包的需求量越來越大,要求也越來越高,品種多樣化已成為箱包市場的一個(gè)特色。傳統(tǒng)的設(shè)計(jì)和生產(chǎn)方式已經(jīng)難以滿足市場快速多變的需求,CAD/CAM系統(tǒng)能夠大大的提高工作效率,將設(shè)計(jì)師們從繁瑣的工作中解放出來,市場急需自動(dòng)化水平高的CAD/CAM技術(shù)工具?,F(xiàn)代的箱包設(shè)計(jì)將變得更加的自動(dòng)化跟機(jī)械化,而計(jì)算機(jī)輔助設(shè)計(jì)在這方面起到巨大的作用。本
2、論文主要研究的內(nèi)容是,在了解箱包基礎(chǔ)結(jié)構(gòu)設(shè)計(jì)流程和箱包CAD系統(tǒng)功能、主要設(shè)計(jì)流程和算法的基礎(chǔ)上,根據(jù)箱包生產(chǎn)工藝過程,設(shè)計(jì)基于AutoCAD箱包CAD系統(tǒng),包括系統(tǒng)功能框架、系統(tǒng)功能主要流程和算法。利用AutoCAD自帶的VBA二次開發(fā)工具對(duì)CAD進(jìn)行二次開發(fā),開發(fā)出符合設(shè)計(jì)要求、滿足箱包CAD系統(tǒng)功能、與箱包CAM系統(tǒng)兼容的基本菜單和工具欄。【關(guān)鍵詞】 AutoCAD,VBA,箱包CAD,二次開發(fā) 41浙江大學(xué)城市學(xué)院畢業(yè)論文AbstractDesign and Development of CAD System for Case and Bag Based On AutoCAD【Abst
3、ract】 Today, people need more and better bags, as a result,species diversity has became one characteristic of bag market.So traditional design and mode of production are difficult to meet the rapidly changing market.However,combined CAD/CAM system and bag design has improved efficiency,it help desig
4、ner free from hard working.Mordern bag design will become more automated and mechanized,and computer-aided design plays an important role in this regard.In this paper,we first understand the basic design process and the function of bag system ,analyzing the main design flow and algorithms.Then we tr
5、y to design bag CAD system based on AutoCAD when we are famaliar with the bag design process.We choose the AutoCAD comes with VBA secondary development to develop the CAD,including the menus and the toolbars which met the design demanding and bag CAD system function and was compatible with bag CAM s
6、ystem.【Key Words】 AutoCAD,VBA,Case and bag CAD system,Secondary development 浙江大學(xué)城市學(xué)院畢業(yè)論文目錄目錄第1章 緒論11.1 研究的背景和意義11.1.1 研究的背景11.1.2 研究的意義11.2 國內(nèi)外研究現(xiàn)狀21.3 設(shè)計(jì)的內(nèi)容與方法2第2章 AutoCAD二次開發(fā)和VBA語言42.1 AutoCAD二次開發(fā)介紹42.2 VBA開發(fā)語言52.2.1 VBA開發(fā)的技術(shù)特點(diǎn)52.2.2 VBA開發(fā)的優(yōu)勢62.2.3 ActiveX技術(shù)72.2.4 ActiveX對(duì)象的使用72.3 ADO數(shù)據(jù)庫連接及操作技術(shù)82.
7、3.1數(shù)據(jù)庫系統(tǒng)概述82.3.2數(shù)據(jù)庫種類82.3.3數(shù)據(jù)庫系統(tǒng)的建立92.3.4AutoCAD ADO對(duì)象92.3.5數(shù)據(jù)庫的連接和操作10第3章 箱包CAD/CAM系統(tǒng)的結(jié)構(gòu)133.1 箱包CAD系統(tǒng)的結(jié)構(gòu)133.1.1 常用工具欄143.1.2 專業(yè)工具欄143.2箱包CAM系統(tǒng)的結(jié)構(gòu)15第4章 箱包CAD系統(tǒng)的設(shè)計(jì)與開發(fā)174.1 AutoCAD VBA編程步驟184.1.1AutoCAD VBA開發(fā)環(huán)境184.1.2 AutoCAD自定義菜單和工具欄204.2 箱包CAD工具的開發(fā)224.2.1 直線工具開發(fā)實(shí)例224.2.2 箱包CAD系統(tǒng)工具核心代碼24第5章 箱包CAD原型系統(tǒng)
8、265.1 系統(tǒng)菜單265.1.1 常用工具菜單265.1.2 專業(yè)工具菜單275.2 系統(tǒng)工具欄275.2.1 直線、角度線和垂直線按鈕285.2.2 矩形、梯形和圓按鈕325.3 箱包CAD系統(tǒng)應(yīng)用簡單實(shí)例36結(jié)論38參考文獻(xiàn)39致謝40浙江大學(xué)城市學(xué)院畢業(yè)論文圖目錄圖目錄圖2.1 開發(fā)語言的發(fā)展進(jìn)程4圖2.2 ADO流程圖10圖3.1 箱包CAD/CAM系統(tǒng)結(jié)構(gòu)13圖4.1 箱包CAD系統(tǒng)的結(jié)構(gòu)17圖4.2 新建工程18圖4.3 保存工程文件19圖4.4 VBA的IDE19圖4.5載入菜單文件22圖4.6直線用戶界面23圖5.1 系統(tǒng)菜單26圖5.2 常用工具菜單27圖5.3 專業(yè)工具菜
9、單27圖5.4 系統(tǒng)工具欄28圖5.5 直線窗體28圖5.6 直線算法流程29圖5.7 角度線窗體30圖5.8 角度線算法流程圖30圖5.9 垂直線窗體31圖5.10 垂直線算法流程圖31圖5.11 矩形窗體32圖5.12 矩形算法流程圖33圖5.13 梯形窗體34圖5.14 梯形算法流程圖34圖5.15 圓窗體35圖5.16 圓算法流程圖35圖5.17 箱包CAD應(yīng)用簡單實(shí)例36圖5.18導(dǎo)出實(shí)例中的所有數(shù)據(jù)36浙江大學(xué)城市學(xué)院畢業(yè)論文 第1章 緒論第1章 緒論1.1 研究的背景和意義1.1.1 研究的背景箱包 CAD 軟件其狹義是指用于計(jì)算機(jī)輔助生產(chǎn)各式箱類(拉桿箱,旅行箱,儲(chǔ)物箱等)和包
10、袋類(男女時(shí)裝包包,背包,登山包,高爾夫球袋等)的 CAD 應(yīng)用軟件;其廣義是泛指應(yīng)用于生產(chǎn)各類式帳篷,漁具用品,戶外用品,醫(yī)療體育用品,床上用品,帽子及各種皮飾,布飾椅子和凳子的一套綜合性的大型計(jì)算機(jī)輔助應(yīng)用軟件。1世界第一套箱包CAD是25年前以色列人研發(fā)的。軟件名叫“Optitex”其軟件行業(yè)應(yīng)用非常廣泛。具體到國內(nèi)的箱包CAD軟件有4家廣州博凱,杭州時(shí)高,寧波易圖,上?;酃?,還有臺(tái)灣的理星箱包CAD。15年前國內(nèi)服裝CAD基本上是國外CAD占有90%的市場。并且不能直接在軟件上出樣,只能放碼,而且工具復(fù)雜難學(xué)。而發(fā)展90年代后,中國仿佛一夜間冒出了好多家服裝CAD軟件,有的軟件已經(jīng)可以
11、在CAD上面直接出樣了,軟件也比較不難學(xué)了。但是師傅用起來還是感到不順手,但是到04年一個(gè)叫ET的服裝CAD的出現(xiàn),短短幾年的時(shí)間幾乎占領(lǐng)了服裝CAD市場一大半。原因就是這套軟件綜合了當(dāng)前各個(gè)軟件的優(yōu)點(diǎn),簡化了操作的難度,并且優(yōu)化了工具使用的自動(dòng)化。讓操作者感到非常好用,操作簡單,并且能很快的達(dá)到操作之目的。這也就成功了。41.1.2 研究的意義隨著科學(xué)技術(shù)的日新月異,設(shè)計(jì)概念的內(nèi)涵和外延都在不斷發(fā)生變化。工業(yè)設(shè)計(jì)將信息轉(zhuǎn)變?yōu)樯唐穬r(jià)值,為推動(dòng)社會(huì)發(fā)展做出了巨大的貢獻(xiàn)。尤其是箱包設(shè)計(jì)也已經(jīng)越來越受到世界各國和人們關(guān)注。對(duì)于箱包企業(yè)和箱包設(shè)計(jì)師來說,如何生產(chǎn)和設(shè)計(jì)出更輕、更薄、更精致,融時(shí)尚、個(gè)人
12、品味、時(shí)代感于一體的箱包是他們今后要共同努力的方向。隨著計(jì)算機(jī)技術(shù)、圖形學(xué)和箱包技術(shù)等相關(guān)技術(shù)門類的發(fā)展,箱包CAD技術(shù)的發(fā)展總體趨于標(biāo)準(zhǔn)化、智能化、集成化、立體化、網(wǎng)絡(luò)化和虛擬化。4如今人們對(duì)箱包的需求量越來越大,要求也越來越高,高檔化、系列化、時(shí)尚化、款式更新快、品種多樣化已成為箱包市場的一個(gè)特色。傳統(tǒng)的設(shè)計(jì)和生產(chǎn)方式已經(jīng)難以滿足市場快速多變的需求。而已被某些工業(yè)廣泛采用的CADCAM技術(shù)則引起了設(shè)計(jì)人員的注意。現(xiàn)代的箱包設(shè)計(jì)將變得更加的自動(dòng)化跟機(jī)械化,而AutoCAD在這方面起到的作用是巨大的。1.2 國內(nèi)外研究現(xiàn)狀對(duì)于目前的箱包行業(yè)使用的箱包CAD軟件來說,在功能上各有優(yōu)點(diǎn)和缺點(diǎn)?!癘
13、ptitex”的兼容性很好,但是功能不專,比較復(fù)雜;博凱實(shí)用性比較好。但是由于是用數(shù)據(jù)庫的,所以穩(wěn)定性比較差,有些先天的缺陷;時(shí)高、易圖、慧工、市場占有率都很小,其軟件問題就更多了;臺(tái)灣理星軟件本意是為制鞋研發(fā)的,箱包只是它衍生出來的個(gè)模塊,所以應(yīng)用性也比較差了;到目前為止還沒有任何一家的軟件能完全做到符合箱包生產(chǎn)所需要的功能的。有些還是要靠手工制作才可以完成。在使用范圍上,國外軟件比國內(nèi)的要廣泛很多了。目前國內(nèi)的箱包CAD軟件都是局限與箱內(nèi)和包袋類的。如果應(yīng)用到帳篷上都不是很好,“Optitex”側(cè)是廣泛應(yīng)用于服裝,家具,箱包等幾乎所有布類,皮類制品的一個(gè)綜合性的軟件。21.3 設(shè)計(jì)的內(nèi)容與
14、方法本課題研究的主要內(nèi)容是設(shè)計(jì)與開發(fā)一個(gè)箱包CAD系統(tǒng),掌握箱包的結(jié)構(gòu)和設(shè)計(jì)過程,熟悉AutoCAD的二次開發(fā)環(huán)境,了解AutoCAD的二次開發(fā)語言和工具,掌握AutoCAD二次開發(fā)的方法和關(guān)鍵技術(shù)。根據(jù)任務(wù)書的要求,本畢業(yè)設(shè)計(jì)的主要設(shè)計(jì)內(nèi)容如下:(1)分析箱包的結(jié)構(gòu)、設(shè)計(jì)過程;(2)研究箱包CAD系統(tǒng)功能框架、主要算法設(shè)計(jì)流程;(3)開發(fā)箱包CAD常用工具;(4)設(shè)計(jì)并開發(fā)一個(gè)基于AutoCAD的箱包CAD原型系統(tǒng)軟件;利用VBA對(duì)AutoCAD進(jìn)行二次開發(fā)的技術(shù)基礎(chǔ),分析研究基于Active X技術(shù)和應(yīng)用面向?qū)ο蠓椒ㄩ_發(fā)AutoCAD的有關(guān)問題,掌握AutoCAD二次開發(fā)的基本思路、主要步
15、驟和具體方法。浙江大學(xué)城市學(xué)院畢業(yè)論文致謝第2章 AutoCAD二次開發(fā)和VBA語言2.1 AutoCAD二次開發(fā)介紹AutoCAD是Autodesk公司的系列產(chǎn)品,該軟件從其使用和設(shè)計(jì)思路上都秉承了工程制圖人員的繪圖習(xí)慣,能夠非常輕松地繪制出帶有平面視圖和三維渲染效果的工程圖紙,是繪圖人員的一個(gè)理想工具,隨著CAD基礎(chǔ)理論和應(yīng)用技術(shù)的不斷發(fā)展,對(duì)CAD系統(tǒng)的功能要求也越來越高。因而AutoCAD不可能完全滿足每個(gè)用戶的具體而特定的要求。設(shè)計(jì)人員希望它能從本質(zhì)上減輕大量簡單繁瑣的工作量,使他們能集中精力于那些富有創(chuàng)造性的高層次思維活動(dòng)中。8 9AutoCAD提供的開放式體系結(jié)構(gòu)允許用戶和開發(fā)者
16、采用高級(jí)編程語言對(duì)其進(jìn)行擴(kuò)充和修改,即二次開發(fā),能最大程度地滿足用戶的特殊要求,更方便、更規(guī)范、更專業(yè)的實(shí)現(xiàn)設(shè)計(jì)和繪圖中的應(yīng)用。AutoCAD二次開發(fā),有很多不同層次的語言和庫可供選擇。迄今為止,AutoCAD二代三代開發(fā)工具,如圖2.1所示圖2.1 開發(fā)語言的發(fā)展進(jìn)程首先是VisualLisp和AutoLisp。Lisp是一門歷史悠久的函數(shù)式編程語言,很多概念和C這種過程式語言不一樣,據(jù)說他在人工智能等方面有廣泛的應(yīng)用。CAD引入了這種語言,給他添加相應(yīng)的函數(shù)庫,就成了命令行使用的AutoLisp。在此基礎(chǔ)上再增加關(guān)于對(duì)話框和窗口界面的庫,就是VisualLisp,簡稱VL。VL在CAD中可
17、以視為CAD命令的整合,是腳本語言,而且由CAD程序提供了編寫環(huán)境。因此上手相當(dāng)容易,便于編寫,調(diào)試也很方便。第二大類是使用ActiveX和VB。ActiveX是Microsoft提出的一組使用COM(Component Object Model,部件對(duì)象模型)使得軟件部件在網(wǎng)絡(luò)環(huán)境中進(jìn)行交互的技術(shù)集。ACAD使用Acitvex把數(shù)據(jù)傳送給ActiveX程序,程序處理后再傳回ACAD。這個(gè)過程有點(diǎn)像瀏覽器瀏覽動(dòng)態(tài)網(wǎng)站。AcitveX與具體的編程語言無關(guān),因此理論上說可以用任何一種支持他的語言來編寫,但通常大家選擇VB語言。VBA是VB的特殊形式,他將VB植入到應(yīng)用程序中。ACAD包含的VBA能
18、夠和CAD共享地址空間,而獨(dú)立的VB則需要通過接口完成。這種方法在編寫上比Lisp復(fù)雜,調(diào)試也困難。但速度快,功能更強(qiáng)勁。但是在某些對(duì)速度要求相當(dāng)高的運(yùn)算和涉及CAD內(nèi)部的應(yīng)用上仍然會(huì)顯得力不從心。對(duì)于熟悉VB語言又不想學(xué)習(xí)Lisp奇怪語法的開發(fā)者來說,這是不錯(cuò)的選擇。12第三大類就是ADS ARX 和ObjectARX。ADS是AutoDesk從ACAD R11開始提供的C編程環(huán)境。它具有C的一切優(yōu)點(diǎn),又能操作CAD。但他和ActiveX類似是通過管道通訊的。ARX(AutoCAD Runtime eXtension)是在ADS基礎(chǔ)上發(fā)展的面向?qū)ο蟮沫h(huán)境,使用C+語言。最終ARX進(jìn)化為Obj
19、ectARX,他完全面向?qū)ο螅⑶沂且詃ll(動(dòng)態(tài)鏈接庫)的形式共享CAD的地址空間。由于先前的ARX已被包含為子集,人們也就簡稱ObjectARX為ARX。在CAD2006以前,只能使用C+語言和VC編譯器來生成ObjectARX程序。但目前已經(jīng)可以使用VB.net C# C+等語言配合VisualS編譯器來生成ARX程序了。要選用何種語言進(jìn)行二次開發(fā),需要開發(fā)人員按照所開發(fā)系統(tǒng)的功能特性進(jìn)行篩選來決定。2.2 VBA開發(fā)語言2.2.1 VBA開發(fā)的技術(shù)特點(diǎn)VBA是微軟開發(fā)出來的應(yīng)用程序共享一種通用的自動(dòng)化語言,它可以使常用的程序自動(dòng)化,并可以創(chuàng)建自定義的解決方案。VBA被集成到AutoCA
20、D中,VBA和 AutoCAD中強(qiáng)大的ACtiveX 自動(dòng)化對(duì)象模型的結(jié)合,代表了一種新型的定制AutoCAD的模式構(gòu)架。通過VBA,我們可以操作AutoCAD軟件,控制ActiveX和其它一些應(yīng)用程序,使之相互之間發(fā)生互易活動(dòng)。 下面就是VBA的主要功能: (1)VBA提供強(qiáng)大的窗體創(chuàng)建功能,為應(yīng)用程序建立對(duì)話框及其他屏幕界面。 (2)可以創(chuàng)建自己的工具條。 (3)可以創(chuàng)建功能強(qiáng)大的模塊級(jí)宏指令,宏名實(shí)質(zhì)上就是模塊的過程名。 (4)提供建立類模塊的功能,這對(duì)開發(fā)大型工程非常有用,因此類可以提供重用組。 (5)具備完善的數(shù)據(jù)訪問和管理能力,通過ADO(ActiveX Data 0bjects)
21、,可以對(duì)Access數(shù)據(jù)庫或其他外部數(shù)據(jù)庫 (像dBase,F(xiàn)OxPro等)實(shí)現(xiàn)訪問和管理。此功能比直接使用AutoCAD的數(shù)據(jù)庫管理系統(tǒng)要方便,且功能強(qiáng)大。142.2.2 VBA開發(fā)的優(yōu)勢(1)VBA能夠使 AutoCAD于其它應(yīng)用程序直接共享數(shù)據(jù),如Microsoft Office軟件。因?yàn)樗械腣BA應(yīng)用程序都可以方便的相互溝通,在設(shè)計(jì)過程中可以很容易得將 AutoCAD與基于windows的應(yīng)用程序聯(lián)系起來。(2)在 VBA綜合開發(fā)環(huán)境中,可以通過拖動(dòng)圖表的方法,簡單而可視化的建立用戶界面用戶可以使用AutoCAD工具欄,也可以使用標(biāo)準(zhǔn) VBA界面工具創(chuàng)建新的工具欄。 (3)VBA的語
22、言代碼完全繼承了 VB的特征,可以說是世界上最簡單的編程語言,但其功能不弱。從數(shù)據(jù)計(jì)算,書庫管理到Intemet軟件開發(fā),都可以見到VB的身影,并可通過各種在線幫助,隨時(shí)得到名師真?zhèn)鳌?(4)具有全開放式的對(duì)象模型。AutoCAD軟件中的ActiveX對(duì)象模型十分有用,它顯示了每一個(gè)對(duì)象的方法和屬性,用戶可以按照自己的愿望編程或定制AutoCAD軟件。(5)良好的運(yùn)行速度。VBA是一個(gè)內(nèi)嵌式的控制器,共享AutoCAD的內(nèi)存空間,可以更好的與 AutoCAD溝通。其運(yùn)行速度與ObjectiRX應(yīng)用程序非常接近,比其它開發(fā)方式(如:ADSRX,ADS和LISP)要提高許多。無論編程技術(shù)水平如何,
23、使用VBA編程都不會(huì)感到有很多困難。自從帶有VBA開發(fā)接口的AutoCAD R14發(fā)行以來,已經(jīng)有超過80萬的開發(fā)者使用了這一軟件,開發(fā)的應(yīng)用程序?qū)⒂懈鄼C(jī)會(huì)為不斷增長的用戶群體服務(wù)。152.2.3 ActiveX技術(shù)對(duì)AutoCAD的二次開發(fā)可以通過ActiveX技術(shù)來實(shí)現(xiàn),利用ActiveX技術(shù),通過編程,用戶可以在自己的應(yīng)用程序中方便地對(duì)另一應(yīng)用程序進(jìn)行操作。自AutoCAD R14后,AutoCAD都支持該技術(shù),這樣許多面向?qū)ο蟮恼Z言和應(yīng)用程序都可以通過該接口從AutoCAD內(nèi)部或外部來操縱AutoCAD暴露的對(duì)象。在AuotCAD中,幾乎暴露了所有對(duì)象,也就是說,用戶可以操作幾乎所有
24、的AutoCAD對(duì)象。AutoCAD VBA是受ActiveX技術(shù)支持的,從運(yùn)作上看,VBA通過AutoCAD ActiveX Automation接口將信息傳送給AutoCAD,而AutoCAD VBA也允許VBA環(huán)境與AutoCAD環(huán)境同時(shí)執(zhí)行并通過ActiveX Automation接口提供AutoCAD的程序。如此,AutoCAD、ActiveX Automation與VBA的結(jié)合方式,提供了功能極強(qiáng)大的接口,不僅可以操作AutoCAD的內(nèi)部對(duì)象,更可以在其他的應(yīng)用程序之間傳送或接受數(shù)據(jù)。152.2.4 ActiveX對(duì)象的使用AutoCAD暴露的這些對(duì)象是以層次式結(jié)構(gòu)來組織的,其根部
25、是應(yīng)用程序?qū)ο螅瑢?duì)象的繼承階層結(jié)構(gòu)就稱為“對(duì)象模型”。VBA訪問AutoCAD對(duì)象的原則是按照對(duì)象模型進(jìn)行訪問。VBA提供了一個(gè)特殊的對(duì)象Thisdrawing,它是AutoCAD VBA的一個(gè)術(shù)語,代表當(dāng)前打開的AutoCAD圖形文件。在創(chuàng)建實(shí)體對(duì)象之前,要確定實(shí)體將放于何處,并且要先引用這個(gè)對(duì)象。創(chuàng)建實(shí)體采用AddEntity形式的方法,即“創(chuàng)建(Add)”+“實(shí)體名字(Entity name)”。2.3 ADO數(shù)據(jù)庫連接及操作技術(shù)2.3.1數(shù)據(jù)庫系統(tǒng)概述數(shù)據(jù)庫系統(tǒng)是由計(jì)算機(jī)軟、硬件資源組成的系統(tǒng),它實(shí)現(xiàn)了有組織地、動(dòng)態(tài)地存儲(chǔ)大量關(guān)聯(lián)數(shù)據(jù),方便多用戶訪問。通俗地講,數(shù)據(jù)庫系統(tǒng)可把日常的一些
26、表格、卡片等的數(shù)據(jù)有組織地集合在一起,輸入到計(jì)算機(jī),然后通過計(jì)算機(jī)處理,再按一定要求輸出結(jié)果。所以,對(duì)于數(shù)據(jù)庫來說,主要解決三個(gè)問題:(1)有效地組織數(shù)據(jù),即對(duì)數(shù)據(jù)進(jìn)行合理設(shè)計(jì),以便計(jì)算機(jī)存取;(2)方便地將數(shù)據(jù)輸入到計(jì)算機(jī)中;(3)根據(jù)用戶的要求將數(shù)據(jù)從計(jì)算機(jī)中抽取出來。我們這里主要是解決第3個(gè)問題,任何將數(shù)據(jù)庫中,滿足要求的數(shù)據(jù),抽取出來,進(jìn)行設(shè)計(jì)。2.3.2數(shù)據(jù)庫種類數(shù)據(jù)庫在發(fā)展過程中誕生了層次型、網(wǎng)狀型、關(guān)系型三種類型的數(shù)據(jù)庫。其中,關(guān)系型數(shù)據(jù)庫具有更完美的內(nèi)在機(jī)制,它建立在嚴(yán)密的關(guān)系代數(shù)基礎(chǔ)之上,可以通過SQL標(biāo)準(zhǔn)查詢語言實(shí)現(xiàn)對(duì)數(shù)據(jù)庫的操作。因此,自上一個(gè)世紀(jì)80年代來,關(guān)系型數(shù)據(jù)庫
27、成為了主流數(shù)據(jù)庫而被廣泛應(yīng)用。包括大型數(shù)據(jù)庫,如Oracle,SQL Servwe和桌面數(shù)據(jù)庫,如Access,F(xiàn)oxPro都屬于關(guān)系型數(shù)據(jù)庫。在VBA環(huán)境下,Access數(shù)據(jù)庫是缺省數(shù)據(jù)庫,Access所采用的Jet數(shù)據(jù)庫引擎得到了最有效的利用,例如VBA的內(nèi)部數(shù)據(jù)訪問控件(Data)就是建立在Jet引擎基礎(chǔ)上的。因此,我選用Access數(shù)據(jù)庫建立數(shù)據(jù)庫。Access 數(shù)據(jù)庫管理系統(tǒng)是Microsoft Office 套件的重要組成部分。Access不僅是一個(gè)數(shù)據(jù)庫,而且它具有強(qiáng)大的數(shù)據(jù)管理功能,它可以方便地利用各種數(shù)據(jù)源,生成窗體(表單),查詢,報(bào)表和應(yīng)用程序等。2.3.3數(shù)據(jù)庫系統(tǒng)的建立
28、在Access 數(shù)據(jù)庫系統(tǒng)中,信息以數(shù)據(jù)庫形式為文件單位儲(chǔ)存到介質(zhì)如磁盤、光盤中。其數(shù)據(jù)庫文件擴(kuò)展名為MDB。在“程序”菜單中會(huì)出現(xiàn)Microsoft Access項(xiàng),單擊“開始” / “程序” / “Microsoft Access” 。啟動(dòng)后會(huì)出現(xiàn)一個(gè)對(duì)話框,對(duì)話框中有兩個(gè)組合框,選擇“Access 數(shù)據(jù)庫向?qū)А?,單擊“確定”。接著選擇“常用”中的“數(shù)據(jù)庫”,單擊“確定”,接著找到合適的存儲(chǔ)地方,單擊“確定”,出現(xiàn)一個(gè)新頁面,雙擊“通過輸入輸入數(shù)據(jù)創(chuàng)建表格”,最后根據(jù)需要輸入字段,輸入完畢后,保存。這樣一個(gè)數(shù)據(jù)庫就建好了。2.3.4AutoCAD ADO對(duì)象AutoCAD的dbconnec
29、t功能可以在AutoCAD環(huán)境下配置數(shù)據(jù)庫,還可以直接連接到外部數(shù)據(jù)庫,紙箱數(shù)據(jù)的瀏覽、查詢和管理??梢酝ㄟ^VBA與ADO(Microsoft ActiveX DataObjects)的結(jié)合使用達(dá)到與外部數(shù)據(jù)庫連接的目的。ADO是以O(shè)LEDB為基礎(chǔ)的面向?qū)ο蟮膽?yīng)用程序接口,核心是Connection、Command和Recordset對(duì)象。Connection對(duì)象用于建立與數(shù)據(jù)源的連接,Command對(duì)象可以在數(shù)據(jù)源中添加、刪除或才更新數(shù)據(jù)、或者在表中查詢數(shù)據(jù)、Recordset對(duì)象只代表記錄集、在ADO對(duì)象模型中所有對(duì)數(shù)據(jù)源的操作幾乎都是Recordset對(duì)象完成的。把從數(shù)據(jù)庫中檢索出的數(shù)據(jù)
30、和AutoCAD編程對(duì)象方法中的參數(shù)進(jìn)行加護(hù),就可以在AutoCAD環(huán)境下實(shí)現(xiàn)基于外部數(shù)據(jù)庫應(yīng)用的流程圖件圖2.2VBA工程Automation對(duì)象ADO對(duì)象AutoCAD應(yīng)用OLEDB數(shù)據(jù)庫圖2.2 ADO流程圖2.3.5數(shù)據(jù)庫的連接和操作首先應(yīng)該連接數(shù)據(jù)庫到AutoCAD,這樣就可以調(diào)用數(shù)據(jù)庫指令。(1)定義工程文件路徑和對(duì)象以及記錄集對(duì)象:Public strPath01 As StringDim adoCon01 As Connection Dim adoRs01 As Recordset(2)必須先獲得當(dāng)前的工程路徑: strPath = ThisDrawing.Applicatio
31、n.VBE.ActiveVBProject.FileName(3)連接數(shù)據(jù)庫: Set adoCon = New Connection adoCon.CursorLocation = adUseClient adoCon.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source= & Left(strPath, Len(strPath) - 14) & *.mdb;(4)打開記錄集: Set adoRs = New Recordset adoRs01.Open lianzhouqi,adoCon,adOpenDynamic, adLockOptimis
32、tic(5)將型號(hào)添加到列表框中: RefreshList 為刷新列表框子程序 If adoRs.RecordCount 0 Then adoRs.MoveLast adoRs.MoveFirst ExchangeData 為根據(jù)字段名稱或索引訪問控件內(nèi)容 End If這樣數(shù)據(jù)庫就已經(jīng)連接上,我們可以對(duì)他進(jìn)行各個(gè)事件的操作。(1)首先是刷新列表框子程序,通過下面這個(gè)子程序,在“ListBox”控件中,將列出數(shù)據(jù)庫中第“01”列的所有數(shù)據(jù)。Private Sub RefreshList () ListBox.Clear Dim i As Integer adoRs.MoveFirst For i
33、 = 0 To adoRs.RecordCount - 1 ListBox.AddItem adoRs.Fields(01) If Not adoRs.EOF Then adoRs.MoveNext End If Next iEnd Sub(2)通過下面這個(gè)子程序,我們可以根據(jù)字段名稱或者索引均可以訪問其內(nèi)容,讓數(shù)據(jù)庫中的各列中的數(shù)據(jù)顯示到對(duì)應(yīng)的“TextBox”中。 Private Sub ExchangeData() TextBox1.Text = adoRs.Fields(02) TextBox2.Text = adoRs.Fields(03) TextBox3.Text = adoRs
34、.Fields(04) TextBox4.Text = adoRs.Fields(05) TextBox5.Text = adoRs.Fields(06) TextBox6.Text = adoRs.Fields(07)End Sub(3)通過下面這個(gè)子程序,我們可以根據(jù)字段名稱或者索引確定參數(shù)值。Private Sub CommandButton5_Click()X1 = TextBox1.Text X2 = TextBox2.Text X3 = ListBox3.Text X4 = ListBox3.TextX5 = TextBox5.TextX6 = ListBox6.TextEnd S
35、ub (4)最后關(guān)閉連接和記錄集:adoRs.CloseadoCon.Close第3章 箱包CAD/CAM系統(tǒng)的結(jié)構(gòu)箱包CAD/CAM系統(tǒng)分為CAD(Computer Aided Design,計(jì)算機(jī)輔助設(shè)計(jì))和CAM(Computer Aided Manufacturing,計(jì)算機(jī)輔助制造)兩部分體系組成。CAD部分稱做出格系統(tǒng),而出格系統(tǒng)的功能包括常用工具、裁片對(duì)位、背包拋圍、打褶、打角、專業(yè)工具、導(dǎo)出物料表格。CAM部分由排料系統(tǒng)和輸入輸出兩部分組成,排料系統(tǒng)包括自動(dòng)排刀、打印導(dǎo)出排刀報(bào)告、手動(dòng)排刀、分床排料、分色排料,輸入輸出包括自動(dòng)切割控制和數(shù)字化儀。整個(gè)系統(tǒng)的結(jié)構(gòu)如圖3.1。箱包C
36、AD/CAM系統(tǒng)箱包款式設(shè)計(jì)裁片結(jié)構(gòu)設(shè)計(jì)裁片排料仿真系統(tǒng)二維設(shè)計(jì)排刀排料CAM系統(tǒng)CAD系統(tǒng)三維設(shè)計(jì)圖3.1 箱包CAD/CAM系統(tǒng)結(jié)構(gòu)3.1 箱包CAD系統(tǒng)的結(jié)構(gòu)箱包的CAD出格系統(tǒng)具有很多為箱包特別設(shè)計(jì)的工具欄,解決了普通CAD軟件無法完成的很多功能,出格系統(tǒng)包含箱包、手袋的款式設(shè)計(jì)到實(shí)樣的生產(chǎn)跟管理。出格系統(tǒng)能是出格師傅從繁瑣的手工操作中解放出來,大大提高了生產(chǎn)效率,縮短了生產(chǎn)周期,降低了生產(chǎn)成本。為箱包、手袋行業(yè)的產(chǎn)業(yè)升級(jí)帶來了革命性的突破。出格系統(tǒng)能使箱包、手袋行業(yè)真正實(shí)現(xiàn)了從手工操作向自動(dòng)化過度的課程。3.1.1 常用工具欄箱包CAD的出格系統(tǒng)包含了很多的傳統(tǒng)的工具欄,這是我們?cè)O(shè)計(jì)
37、箱包必須需要的一些工具欄,比如傳統(tǒng)中的直線、矩形、曲線等傳統(tǒng)工具欄。這些工具在AutoCAD二次開發(fā)基礎(chǔ)上使用人機(jī)交互界面創(chuàng)建,區(qū)別于AutoCAD原始工具。我們常用的一些工具操作非常簡單,比如梯形上底,下底,高輸入正確的數(shù)值即可完成;直線中點(diǎn)會(huì)自動(dòng)捕捉;拉鏈窗操作更加快捷,有好幾種叉刀的選擇;加逢邊工具,可向內(nèi)或者向外加;對(duì)于車逢邊不同系統(tǒng)提供了修改縫邊工具;牙位工具,不同的位置系統(tǒng)會(huì)自動(dòng)判斷;輸入文字,自由輸入,可以把常用的文字存儲(chǔ)在系統(tǒng)中,下次直接調(diào)用,不需要人工書寫,清晰明了。3.1.2 專業(yè)工具欄裁片對(duì)位工具非常的專業(yè),兩紙格之間的車縫,埋袋;系統(tǒng)自動(dòng)在對(duì)應(yīng)的紙格上找到相應(yīng)的牙位及長
38、度;更快,更準(zhǔn)確。(手工操作用錐子慢慢的對(duì)版)打角智能的雙線工具,方便做兩線的等長;里布的打角,過一點(diǎn)做兩邊等長的垂線更加人性。 打褶強(qiáng)大的打褶功能,特別是時(shí)款袋經(jīng)常會(huì)打些褶。多褶,單褶,工字褶系統(tǒng)很方便的就可以做出來,而且我們時(shí)時(shí)可以預(yù)覽到打褶的形狀。 背包拋圍側(cè)片展開功能非常獨(dú)特。因?yàn)楸嘲那昂笃€比較好操作,但是圍片的操作是一件很麻煩又耗時(shí)的工作,系統(tǒng)把煩鎖的拋圍對(duì)版工作用科學(xué)的方法計(jì)算出來。 我們只需要用側(cè)片展開工具,直線走兩點(diǎn),曲線走三點(diǎn)即可完成。曲線編輯一個(gè)袋版是否美觀,對(duì)弧線的要求很嚴(yán)格。系統(tǒng)提供了對(duì)曲線強(qiáng)大的編輯功能,可以完成任何形狀的曲線操作,自由加減點(diǎn)。這邊做好之后,另外一
39、邊復(fù)制對(duì)稱過去,還可以對(duì)稱修改。自由曲線,要什么形狀都可以,形狀不變改變線長,固定兩端改變線長,線長不變改變形狀這些功能完全可以達(dá)到復(fù)雜而靈活的出格工作。快捷工具對(duì)于一些狗牙,裁片分解;系統(tǒng)單獨(dú)提供了線上陣列,裁片提取工具,轉(zhuǎn)眼之間就可以完成。這些實(shí)用的工具,都會(huì)讓我們感受到在使用計(jì)算機(jī)出格的時(shí)候事半功倍。導(dǎo)出表格方便的資料交互:生存裁片之后,系統(tǒng)很方便的將做好的紙格導(dǎo)出EXCEL表格中,瞬間完成每個(gè)紙格的用碼量計(jì)算;自動(dòng)計(jì)算出紙格的周長、面積等數(shù)據(jù),方便后道工序的算料報(bào)價(jià)。數(shù)字化儀對(duì)于外來紙格或者需要描版:系統(tǒng)提供對(duì)數(shù)字化儀輸入的完美線型,獨(dú)創(chuàng)一手輸入,只需掌握幾個(gè)數(shù)字就可以完成紙格的錄入工
40、作;直線,曲線,牙位一次完成;當(dāng)然更提供了修改版型隨意操作。 切割機(jī)一套紙格做好之后,輸出到切割機(jī)只要一個(gè)鍵即可完成;用電腦平板切割機(jī)直接切割出紙格,替代了傳統(tǒng)的介刀,減輕出格師傅的勞動(dòng)強(qiáng)度。通過這些特定的工具欄我們可以很好的做出符合設(shè)計(jì)跟工藝要求的是箱包模型,這些工具是CAD出格系統(tǒng)的重要組成部分,因?yàn)橄浒O(shè)計(jì)有很多工藝設(shè)計(jì)需求,而出格系統(tǒng)囊括了這些專業(yè)的工具欄。這些工具欄是獨(dú)一無二的,能夠很好的針對(duì)這個(gè)箱包模型設(shè)計(jì)。3.2箱包CAM系統(tǒng)的結(jié)構(gòu)箱包CAM系統(tǒng)由排刀跟排料系統(tǒng)組成。排刀系統(tǒng)能夠讓出格后的裁片在規(guī)定的范圍內(nèi)進(jìn)行合理的排放,排刀的系統(tǒng)能夠?qū)Π丛O(shè)定好的方案系統(tǒng)會(huì)運(yùn)算并顯示出排刀的樣式
41、。排料有稱排版,是指將此箱包的裁片樣板在規(guī)定的面料幅寬內(nèi)合理排放的過程。排料是進(jìn)行輔料和剪裁的前提。箱包的CAM系統(tǒng)最本質(zhì)的特性就是其靈活性。它能夠從款式庫中調(diào)出箱包款式,對(duì)其進(jìn)行板型設(shè)計(jì)后,再根據(jù)箱包號(hào)型表進(jìn)行放碼,接著在幾分鐘內(nèi)即可完成排料過程。自動(dòng)排刀根據(jù)出格師傅的裁片自動(dòng)計(jì)算物料、多種排刀方案可供選擇,打印導(dǎo)出排刀完成后,我們可以把排刀報(bào)告打印出來,做個(gè)開料的指導(dǎo)圖,而且這張圖紙會(huì)跟著生產(chǎn)單一起走到開料那里。詳細(xì)的一些數(shù)據(jù)同樣可以導(dǎo)出EXCEL表格中排料統(tǒng)計(jì)表,每一個(gè)裁片的單位用量,用碼量,一目了然。 手動(dòng)排刀手動(dòng)組合方案,人機(jī)交互式的,排料師傅根據(jù)經(jīng)驗(yàn)手動(dòng)調(diào)整;系統(tǒng)提供裁片各個(gè)方向的
42、移動(dòng)、翻轉(zhuǎn)、復(fù)制等工具,很快完成排刀工作。分床排料根據(jù)產(chǎn)品的類型,所用的物料屬性,自動(dòng)分床管理,避免錯(cuò)排、漏排分色排料系統(tǒng)可以根據(jù)不同的分床方式提供不同的顏色區(qū)分開裁片顯示。排料系統(tǒng)能夠?qū)⒓垬右拦に嚦绦颍ㄕ?、反面)形成能緊密粘合的不同的形狀的排列組合,以其最經(jīng)濟(jì)地使用布料,達(dá)到降低產(chǎn)品成本的目的。排料是進(jìn)行輔料和剪裁的前提。通過排料,可知道用料的準(zhǔn)確長度和樣板的精確擺放次序,使輔料有剪裁有所依據(jù)。所以排料工作對(duì)面料的消耗、剪裁的難易、箱包的質(zhì)量都有直接的影響,是一項(xiàng)技術(shù)性很強(qiáng)的工藝操作。排料的原則必須得保證設(shè)計(jì)的要求,當(dāng)設(shè)計(jì)的款式對(duì)面料的花型有一定的要求時(shí),排料的樣板便不能隨意放置,必須保證排
43、除的衣片在縫制后達(dá)到設(shè)計(jì)要求。本文主要研究CAD系統(tǒng)部分,主要介紹出格系統(tǒng)工具。常用工具包括矩形、直線、梯形、曲線、三點(diǎn)弧、封閉曲線、垂直線、角度線、自由點(diǎn)、位移點(diǎn)、等分工具、裁剪、連接、雙線、測量、刪除、剪切。專業(yè)工具包括相交平行線、多線相交平行線、平行線、圓角、角平分線、延長線。打褶工具包括工字褶、單褶、多褶。第4章 箱包CAD系統(tǒng)的設(shè)計(jì)與開發(fā)箱包CAD系統(tǒng)大致可分為傳統(tǒng)工具欄和專業(yè)工具兩個(gè)部分。其中,傳統(tǒng)工具欄包括直線、矩形、梯形等等,專業(yè)工具包括裁片對(duì)位、曲線編輯、打褶打角等等。箱包CAD系統(tǒng)的結(jié)構(gòu)如圖4.1。傳統(tǒng)工具欄直線矩形梯形圓、圓弧垂線角度線點(diǎn)工具等剪切、剪斷箱包CAD系統(tǒng)專業(yè)
44、工具欄裁片對(duì)位背包拋圍打褶打角曲線編輯快捷工具導(dǎo)出表格圖4.1 箱包CAD系統(tǒng)的結(jié)構(gòu)4.1 AutoCAD VBA編程步驟4.1.1AutoCAD VBA開發(fā)環(huán)境在AutoCAD2004的環(huán)境中,選擇【工具/宏/VBA管理器】在菜單項(xiàng),系統(tǒng)會(huì)彈出【VBA管理器】對(duì)話框。單擊【新建】按鈕,在當(dāng)前圖形中新建一個(gè)名稱為 AutoCAD Project的全局工程,如圖4.2所示。圖4.2 新建工程在【工程】列表中選擇AcADProject,單擊【VBA管理器】對(duì)話框中的【另存為】按鈕,系統(tǒng)彈出的【另存為】對(duì)話框。在對(duì)話框的保存位置下拉列表指定工程文件的保存路徑,并在對(duì)話框的文件名位置輸入“箱包CAD系
45、統(tǒng)”,單擊【保存】按犯,如圖4.3所示。圖4.3 保存工程文件在【工程】列表中選擇ACADProject,單擊【VBA管理器】對(duì)話框中的【VsualBasic編輯器】按鈕,進(jìn)入AutoCAD2004的集成開發(fā)環(huán)境(IDE),在VBAIDE(集成開發(fā)環(huán)境)的左側(cè),分布著【工程資源管理器】和【屬性】窗口,【工程資源管理器】中顯示了當(dāng)前打開的工程名稱,以及該工程的文件結(jié)構(gòu)。在【工程資源管理器】窗口中選擇【視圖/代碼窗口】菜單項(xiàng),或者直接雙擊ThisDrawing,系統(tǒng)會(huì)彈出代碼窗口,在這個(gè)窗口添加語句進(jìn)行編程。如圖4.4所示。圖4.4 VBA的IDE單擊【工程資源管理器】窗口中的工程名稱AcADpr
46、oject,在屬性窗口中將項(xiàng)目名稱修改為“箱包CAD系統(tǒng)”。選擇【插入/用戶窗體】菜單項(xiàng),向程序中添加一個(gè)窗體,Caption屬性設(shè)置為“直線”,系統(tǒng)就會(huì)在IDE創(chuàng)建一個(gè)窗體。在這個(gè)窗體上分別建立6個(gè)控件來實(shí)現(xiàn)總體設(shè)計(jì)。在【工具箱/控件】有多種控件供使用。在這里介紹本研究使用到的主要控件。(1)框架控件,它的作用是分組,即是將窗體劃分區(qū)域,將其在屬性窗口修改其Caption屬性,即顯示該框架的標(biāo)題;(2)圖像控件,是VBA應(yīng)用程序中顯示圖像最常用的一個(gè)控件,它能夠顯示位圖、圖標(biāo)、光標(biāo)、元文件、GIF和JPEG等常用的圖像文件;(3)命令控件,其最常用的Click事件,即是我們常用到的“確定”或
47、者“取消”按鈕;(4)選項(xiàng)控件,能夠顯示一個(gè)可以打開或者關(guān)閉的選項(xiàng),單選按鈕一般是幾個(gè)一組,每次只能選擇其中一個(gè),其Caption屬性是在單選按鈕后顯示文字,說明其作用;Value屬性判斷單選按鈕的選擇狀態(tài),True表示已經(jīng)選中,F(xiàn)alse表示沒有選中;(5)復(fù)選框控件,主要用來設(shè)置某一個(gè)選項(xiàng)的開關(guān)狀態(tài),其主要屬性是,Caption:在復(fù)選框后面顯示說明該復(fù)選框作用的文字;Value:確定復(fù)選框的狀態(tài),0為沒有選中,1為已選中,2為不可用;(6)復(fù)合框控件,提供帶有選項(xiàng)的輸入文本至TextBox中,單擊向下的箭頭按鈕,從下拉列表中選擇所需選項(xiàng);(7)文字控件,允許運(yùn)行期間輸入文本信息,通常要給
48、控件的Text屬性指定一空字符(“”)對(duì)它進(jìn)行初始化,以清除不再需要的數(shù)據(jù);(8)標(biāo)簽控件,用來顯示標(biāo)題或說明性文字內(nèi)容,程序運(yùn)行時(shí)一般不允許用戶修改這些文字,可以在“屬性”窗口中修改其Caption屬性,或者使用程序代碼在運(yùn)行中修改。4.1.2 AutoCAD自定義菜單和工具欄為了在設(shè)計(jì)箱包過程中更容易調(diào)用需要將各個(gè)工具功能增加到AutoCAD的菜單文件中,AutoCAD做菜單的方法有兩種,一種是用CAD的菜單文件,另一種就是用VBA代碼直接生成菜單。而本文中所用的是用菜單文件生成菜單的方法。CAD菜單文件是文本文件,用記事本就可以打開并編輯它。mns為后綴的菜單文件是源菜單文件。可通過新建
49、記事本并編輯菜單文本再保存為mns格式來創(chuàng)建菜單文件。本次設(shè)計(jì)的mns菜單文件(BagCAD.mns)內(nèi)容如下:/ AutoCAD 菜單文件 - D:畢業(yè)設(shè)計(jì)菜單BagCAD.mnc*MENUGROUP=BagCAD*TOOLBARS*BAGCADID_BagCAD_0 _Toolbar(BagCAD, _Right, _Show, 0, 1, 1)ID_UserButton_4 _Button(導(dǎo)出表格, RCDA9169.bmp, RCDA8467.bmp) (vl-vbarun bianli) ID_UserButton_5 _Button(矩形, RCDA5724.bmp, RCDAT
50、A_16_BLANK) -vbarun jxMID_UserButton_6 _Button(直線, RCDA1478.bmp, RCDATA_16_BLANK) (vl-vbarun zhixian) ID_UserButton_0 _Button(垂直線, RCDA.bmp, RCDATA_16_BLANK) (vl-vbarun chuizhixian) ID_UserButton_1 _Button(角度線, RCDA65.bmp, RCDATA_16_BLANK) (vl-vbarun jiaoduxian) *HELPSTRINGSID_USERBUTTON_5 矩形ID_USER
51、BUTTON_6 直線ID_USERBUTTON_0 垂直線ID_USERBUTTON_1 角度線ID_USERBUTTON_4 導(dǎo)出坐標(biāo)到Excel/ AutoCAD 菜單文件 - D:畢業(yè)設(shè)計(jì)菜單BagCAD.mnc打開AutoCAD2004輸入命令menuload回車后出現(xiàn)【菜單自定義】窗口,單擊【瀏覽】按鈕,找到BagCAD.mns文件,單擊【加載】載入文件,單擊【關(guān)閉】完成操作。如圖4.5所示。圖4.5載入菜單文件4.2 箱包CAD工具的開發(fā)傳統(tǒng)工具欄包括直線、矩形、梯形、圓、圓弧、垂線、角度線等工具。這些工具是箱包設(shè)計(jì)過程中的基本工具,也是大部分工業(yè)制圖的基礎(chǔ)工具。專業(yè)工具欄包括裁
52、片對(duì)位、打腳打褶、導(dǎo)出表格、曲線工具等工具。這些工具是箱包服裝類設(shè)計(jì)過程中的專業(yè)工具。4.2.1 直線工具開發(fā)實(shí)例打開AutoCAD2004進(jìn)入Visual Basic編輯器,在BagCAD工程中插入【用戶窗體】和【模塊】,用【工具箱】添加控件,完成【用戶窗體】,并在【模塊】和【用戶窗體】中編寫程序。如圖4.6所示。圖4.6直線用戶界面直線工具的開發(fā)過程如下:(1)要實(shí)現(xiàn)畫直線功能在【模塊】中添加如下代碼。Public Sub zhixian()畫直線鼠標(biāo)拾取起點(diǎn)和終點(diǎn)spoint = ThisDrawing.Utility.GetPoint(, 輸入:)epoint = ThisDrawin
53、g.Utility.GetPoint(spoint, 輸入:)算出拾取兩點(diǎn)的距離和兩點(diǎn)連線的角度UserForm2.TextBox1 = Round(Sqr(epoint(0) - spoint(0) 2 + (epoint(1) - spoint(1) 2), 2)UserForm2.TextBox2 = Round(ThisDrawing.Utility.AngleFromXAxis(spoint, epoint) * 180 / pi, 2)將控制權(quán)交給用戶窗體UserForm2.ShowEnd Sub(2)在直線用戶窗體中雙擊【確定】按鈕寫入如下代碼。定義的值Const pi = 3.
54、14159265358979Public Sub CommandButton1_Click()錯(cuò)誤控制On Error GoTo line1Dim pten As Variant調(diào)用自定義角度轉(zhuǎn)換函數(shù)pten =GetPointAR(spoint, CDbl(TextBox2.Text) * pi / 180, CDbl(TextBox1.Text)創(chuàng)建直線ThisDrawing.ModelSpace.AddLine spoint, pten關(guān)閉當(dāng)前用戶窗體Unload MeEnd Sub(3)在直線用戶窗體中雙擊長度輸入框?qū)懭肴缦麓a。Private Sub TextBox1_KeyPres
55、s(ByVal KeyAscii As MSForms.ReturnInteger)控制輸入?yún)?shù)Select Case KeyAscii Case Asc(0) To Asc(9), vbKeyBack Case Asc(.) 允許一個(gè)小數(shù)點(diǎn) If InStr(1, TextBox1.Text, .) 0 Then KeyAscii = 0 Case Else KeyAscii = 0End SelectEnd Sub4.2.2 箱包CAD系統(tǒng)工具核心代碼(1)矩形工具核心代碼及說明根據(jù)兩對(duì)角點(diǎn)坐標(biāo)確定四定點(diǎn)坐標(biāo)ptarr(0) = pt1(0): ptarr(1) = pt1(1)ptarr(2) = pt1(0): ptarr(3) = pt2(1)ptarr(4) = pt2(0): ptarr(5) = pt2(1)ptarr(6) = pt2(0): pt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度教育裝備采購會(huì)參展商合作框架合同3篇
- 個(gè)人理財(cái)協(xié)議書
- 全面創(chuàng)新科技布局
- 墻體保溫板采購合同(2篇)
- 2024招投標(biāo)與合同管理法律顧問服務(wù)合同2篇
- 2024森林質(zhì)量精準(zhǔn)提升
- 2024年高速路改造工程:貴黃高速房屋拆遷補(bǔ)償合同
- 車輛定點(diǎn)維修合同書協(xié)議范本模板
- 純?nèi)斯趧?wù)分包合同
- 19只有一個(gè)地球說課稿-2024-2025學(xué)年六年級(jí)上冊(cè)語文統(tǒng)編版
- 2024年公安機(jī)關(guān)理論考試題庫附參考答案(基礎(chǔ)題)
- 2024年安全生產(chǎn)法律、法規(guī)、標(biāo)準(zhǔn)及其他要求清單
- 2023年高考文言文閱讀設(shè)題特點(diǎn)及備考策略
- 暖通工程合同
- 生產(chǎn)型企業(yè)規(guī)章管理制度(3篇)
- 鋼結(jié)構(gòu)之樓承板施工方案流程
- 2024年?duì)I銷部工作人員安全生產(chǎn)責(zé)任制(2篇)
- ISO 56001-2024《創(chuàng)新管理體系-要求》專業(yè)解讀與應(yīng)用實(shí)踐指導(dǎo)材料之3:4組織環(huán)境-4.1理解組織及其環(huán)境(雷澤佳編制-2025B0)
- 2024-2030年中國管道檢測工程行業(yè)前景分析發(fā)展規(guī)劃研究報(bào)告
- 抗心律失常藥物臨床應(yīng)用中國專家共識(shí)
- 考級(jí)代理合同范文大全
評(píng)論
0/150
提交評(píng)論