AUTO-cad二次開發(fā)論文(鍵-VB開發(fā))_第1頁
AUTO-cad二次開發(fā)論文(鍵-VB開發(fā))_第2頁
AUTO-cad二次開發(fā)論文(鍵-VB開發(fā))_第3頁
AUTO-cad二次開發(fā)論文(鍵-VB開發(fā))_第4頁
AUTO-cad二次開發(fā)論文(鍵-VB開發(fā))_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、摘要本說明書主要是關于AutoCAD 2000的用VB語言二次開發(fā)的說明和利用VB語言開發(fā)船舶標準件的源程序。說明書中主要涉及到了,AutoCAD軟件的使用、VB語言簡介、船舶標準件的結構特點和技術要求和利用VB編制的船舶標準件程序。論文中介紹了設計人員的設計思路。 船舶標準零件主要包括:螺栓、螺母、墊圈、鍵、銷、滾動軸、承彈簧等。船舶標準件的結構特點、圖形畫法及技術要求是本次設計的基礎,熟練掌握并用AutoCAD VBA(Visual Basic for Application)語言對AutoCAD進行船舶標準零件二次開發(fā),以達到下述目的: 調用程序時出現(xiàn)對話框,輸入要求的零件主要參數(shù)后能夠

2、自動生成零件圖形。并且圖形要符合國家標準件的技術要求。 AutoCAD VBA(Visual Basic for Application)語言的任務是對AutoCAD進行二次開發(fā)促使AutoCAD更高效的工作。關鍵詞:標準零件、AutoCAD VBA語言、AutoCAD的二次開發(fā)- -ABSTRACTManual this about 2000 AutoCAD with VB explanation and utilize VB language develop source program , shipping of standard component, language of secon

3、dary development mainly. Have involved mainly in the manual , use, VB, AutoCAD of software language brief introduction of, structure characteristic and specification requirement , shipping of standard component utilize shipping standard component procedure that VB work out. Have introduced the desig

4、ners mentality of designing in the thesis.Whether shipping standard part include mainly. Bolt , nut , washer , key , axis , bearing the spring of selling , rolling ,etc. Structure characteristic , the technique of painting of the figure and specification requirement for the shipping standard compone

5、nt are foundations designed this time, know and language carry on shipping standard part secondary development to AutoCAD with AutoCAD VBA (Visual Basic for Application ) skillfully, in order to achieve the following purposes:Appear communication frame at the procedure of transfering, part required

6、to input can produce the part figure automatically behind the main parameter. And the figure should accord with the specification requirement for the national standard component .AutoCAD VBA (Visual Basic for Application) task of language to carry on secondary development impel AutoCAD high-efficien

7、t work to AutoCADKEY WORDS: standard part、AutoCAD VBA language、Secondary development of AutoCAD- -前言計算機輔助制圖是現(xiàn)代企業(yè)生產(chǎn)和設計的重要工具,AutoCAD是計算機輔助設計工具的一種,VB 是AutoCAD軟件的重要組成部分。它是AutoCAD軟件二次開發(fā)的重要工具。它可使一些常用的機械零件能很快的調用,簡捷方便,很大的提高了工作效率縮短了新產(chǎn)品的開發(fā)周期,提高制圖的質量。利用VB語言對AutoCAD進行二次開發(fā)是現(xiàn)代計算機技術不可缺少的內(nèi)容,而且直接影響到制圖的速度和質量。本次設計是 Au

8、toCAD軟件二次開發(fā)的其中一部分,也就是基于AutoCAD2000的船舶零件開發(fā),它在AutoCAD軟件開發(fā)中占有一定的地位和作用。此次設計是由老師分配和指導的,此論文參考了很多的書籍和刊物,有答辯小組最后進行審定。由于編者的水平有限,書中缺陷和不擋之處在所難免,敬請老師批評指正。- -目 錄前言摘要Abstract第一章 綜述1 第一節(jié) AutoCAD發(fā)展概況1 第二節(jié) 現(xiàn)代AutoCAD技術發(fā)展的方向第二章 AutoCAD VBA編程系統(tǒng)第一節(jié) AutoCAD VBA第二節(jié) 結束語與致謝參考文獻第一章 綜 述第一節(jié) AutoCAD的發(fā)展概況隨著現(xiàn)代工業(yè)文明的發(fā)展,越來越多的企業(yè)對工業(yè)產(chǎn)品

9、的外形和內(nèi)部結構的要求越來越高,產(chǎn)品更新的速度越來越快,傳統(tǒng)的手工制圖已經(jīng)不能滿足現(xiàn)代企業(yè)的要求計算機輔助設計技術的引進是近代工業(yè)史上的一次革命,它顯著的提高了制圖的速度和制圖的質量,縮短了新產(chǎn)品設計開發(fā)的時間。AutoCAD是計算機輔助設計工具的一種,它是美國Autodesk公司在1982年12月開發(fā)出來的,AutoCAD軟件是計算機輔助設計與繪圖相結合的綜合軟件,從第一版AutoCADR1.0起,經(jīng)歷了若干次升級,現(xiàn)已達到AutoCAD2006。在AutoCAD 14版中,Autodesk首次包括了Microsoft的Visual Basic for Applications(VBA).將

10、AutoCAD和Visual Basic的功能結合在一起,可以創(chuàng)建非常好的定制應用程序,從而在使用AutoCAD執(zhí)行當前任務時,可以在很短的時間內(nèi)創(chuàng)建出正常情況下需要好幾個小時才能完成的圖形。經(jīng)過三十多年的發(fā)展,CAD技術得到了迅速普及,已成為電子信息技術的重要組成部分CAD技術使產(chǎn)品的內(nèi)容和方式發(fā)生了根本性變革,這一技術已成為工業(yè)發(fā)達國家保持競爭優(yōu)勢,開拓市場的主要技術手段1989年,美國國家工程科學院將CAD技術評為人類25年間(1965-1989)當代十項最杰出工程技術成就之一CAD技術之所以在短短的三十年發(fā)展如此迅速,是因為它幾乎推動了一切領域的設計革命,徹底的改變了傳統(tǒng)的手工繪圖的方

11、式,極大的提高了產(chǎn)品開發(fā)的速度,提高了設計精度這一新技術的應用將使人類的聰明才智和創(chuàng)造能力與計算機高速而精確的計算能力、大容量的儲存和數(shù)據(jù)處理功能結合起來,是兩者相得益彰CAD技術的發(fā)展與應用水平成為衡量的科學技術現(xiàn)代化和工業(yè)現(xiàn)代化的重要標志之一近幾年來,隨著計算機技術的飛速發(fā)展,CAD技術已由發(fā)達國家向發(fā)展中國家擴展,而且發(fā)展的勢頭非常迅猛我國政府部門十分重視這一技術,已經(jīng)和科技界、工業(yè)界一起把CAD技術的應用推廣當作一件大事來抓,如果國家科委實施了CIMS工程和CAD應用工程,組建了全國性的CAD培訓網(wǎng)絡;機械工業(yè)部把1997年定位CAD推廣年將CAD推廣工作作為重中之重項目,目前正在組織

12、實施CAD應用1550工程很多大中型甚至小型企業(yè)都在努力引進這一新技術,以提高企業(yè)自身的技術素質,增強產(chǎn)品在國內(nèi)外市場上的競爭能力另外,CAD教學也得到了個高校的普遍重視要想全面推廣普及CAD技術,提高我國的整體技術水平為了拓寬AutoCAD的運用領域,從1993年夏季起,Autodesk公司已設計自動化為主題,相繼推出了極具應用價值的軟件群體,包括3D MAX AutoCAD、 Designer Auto surf AutoCAD、 Data Extension Auto、 Vision Animator Studio AutoCAD 、MAP Mechanical Desktop(MDT)

13、.這些將在AutoCAD中得到很好的發(fā)揮,AutoCAD也將會也來越強大。- 1 -第二節(jié)現(xiàn)代AutoCAD技術發(fā)展方向任何一種軟件都是有缺陷的,不是完美無瑕的。AutoCAD這一軟件也是一樣,只有在不斷的發(fā)展中,找到自己的不足力求彌補,才能趨向臻化,達到一種完美。當然這也都是相對的,是就當時的社會需求相聯(lián)系的,社會需要什么樣功能的軟件,公司就提供什么樣的軟件。這是發(fā)展的根本方向?,F(xiàn)就最新的版本的AutoCAD 2006進行介紹:2.1.1動態(tài)圖塊的操作圖塊,是大多數(shù)圖形中的基本構成部分,它用于表示現(xiàn)實中的物體?,F(xiàn)實物體的不同種類需要定義各種不同的圖塊。這樣就需要定義成千上萬的圖塊定義,在這種

14、情況下,如果圖塊的某個外觀有些區(qū)別,用戶就需要炸開圖塊來編輯其中的幾何圖形。這種解決方法會產(chǎn)生大量的、矛盾的和錯誤的圖形。在2006版本中,新增的功能強大的動態(tài)圖塊功能使用戶可編輯圖形外觀而不需要炸開它們。用戶可以在插入圖形時或插入圖塊后操作圖塊實例。選擇多種圖形的可見性圖塊定義可包含特別符號的多個外觀形狀。在插入后,用戶可選擇使用哪種外觀形狀。例如,一個單一的塊可保存水龍頭的多個視圖、多種安裝尺寸,或多種閥的符號。使用多個不同的插入點在插入動態(tài)圖塊時,可以遍歷圖塊的插入點來查找更適合的插入點插入。這樣可以消除用戶在插入圖塊后還要移動塊。貼齊到圖中的圖形在用戶將塊移動到圖中的其它圖形附近時,圖

15、塊會自動貼齊到這些對象上。編輯圖塊幾何圖形指定動態(tài)圖塊中的夾點可使用戶能移動、縮放、拉伸、旋轉和翻轉塊中的部分幾何圖形。編輯圖塊可以強迫在最大值和最小值間指定或直接在定義好屬性的固定列表中選擇值。如,有一個螺釘?shù)膱D塊,可以在總長1到4個圖形單位間拉伸。在拉伸螺釘時,長度按0.5個單位的增量增加,而且螺紋也在拉伸過程中自動增加或減少。另外一個例子是一個插圖編號的塊,包含了圓、文字和引線。用戶可在繞圓旋轉引線,而文字和圓則保持原有狀態(tài)。第三個例子是一個門的圖塊,用戶可拉伸門的寬度和翻轉門軸的方向。數(shù)據(jù)輸入和對象選擇2006對用戶界面進行了很大的改進。它讓用戶能更簡單的與軟件交互,使用戶能更注重于自

16、己的設計。在焦點附近查看和輸入數(shù)據(jù)在圖形中繪制和編輯對象時,用戶經(jīng)常要閱讀和回應顯示于命令行中提示。- -如果忘了閱讀命令行,可能會漏掉一些重要的選項,最后可能導致結果出錯。在命令行交互,盡管是必須的,但卻轉移了人的注意力。用戶必須大圖形界面上的光標繪圖焦點處轉移到命令行,然后再轉回來。如果在教新用戶使用AutoCAD時,呵呵,這樣很吃力,因為需要經(jīng)常提醒用戶去注意命令行。在2006版本中,新的動態(tài)輸入設置可使用戶直接在鼠標點處快速啟動命令、讀取提示和輸入值,而不需要把注意力分散到圖形編輯器外。用戶可在創(chuàng)建和編輯幾何圖形時動態(tài)查看標注值,如長度和角度,通過TAB鍵可在這些值之間切換。用戶可使用

17、在狀態(tài)欄中新設置的切換功能來啟用動態(tài)輸入功能。在草圖設置對話框中也增加新的標簽,提供了設置動態(tài)輸入功能的樣式、可見性和外觀。命令行很長時間以來是AutoCAD的基本部分,呵,但不要擔心,它還沒有這么快被扔掉的。然而,在2006中,你會發(fā)現(xiàn),命令行將會用得很少。訪問命令和最近數(shù)據(jù)很多人用了AutoCAD命令行已經(jīng)很多年了,所以沒那么容易就把它放棄。對于那些經(jīng)常使用的命令,用戶會連想都不用想就可以把命令敲出來。但對于用得少的命令,有時會想不出它的拼寫,特別是我們本來就不是學英文的,真是難事。就象“EATEXT”或“EATTEXT”,就不知是哪個對。2006提供了自動完成功能來迅速輸入不常用的命令。

18、在命令提示中,用戶可輸入系統(tǒng)變量或命令(包括ARX定義的命令和命令別名)的前幾個字母,然后按TAB鍵來遍歷所有有效的命令。例如,在命令提示中輸入“EAT”,然后按TAB鍵,就可以在所有以EAT開頭的命令中查找需要的命令。在連續(xù)使用AutoCAD命令時,用戶可以發(fā)覺同樣的數(shù)據(jù)會重復輸入很多次。就算你多么喜歡敲鍵盤,重復的數(shù)據(jù)也會讓人效率低下,而且也會出錯。為了減少出錯和節(jié)約時間,可使用2006版新的最近輸入功能。用戶可訪問最近使用的數(shù)據(jù),包括點、距離、角度和字符串。怎樣操作?可在命令行中按箭頭鍵的上和下鍵,或從右鍵菜單中選擇最近輸入項。最近使用值與上下文有關。例如,在命令行提示輸入距離時,最近輸

19、入功能將顯示之前輸入過的距離。當在旋轉命令中提示輸入角度時,之前使用的旋轉角度將會顯示出來。用戶可通過INPUTHISTORYMODE系統(tǒng)變量控制最近輸入功能的使用??s放和平移在用AutoCAD設計時,縮放和平移命令使用的次數(shù)最多??s放時,你可能會迷失方位,忘了原來的位置,或忘了要轉到哪里,或需要快速返回原來的視圖。如果縮放或平移的次數(shù)很多,返回原來的視圖時光敲“回退”(UNDO)就夠累的。還好,2006版提供了改良的縮放和平移功能。有一個新的系統(tǒng)變量:VTENABLE,它可啟用平滑轉換來切換顯示區(qū)域。例如,如果執(zhí)行了范圍縮放,而且啟動了平滑轉換,則用戶可看到圖形從局部的視圖動態(tài)地轉到整個圖形

20、。平滑視圖轉換幫助用戶保持圖形中的可視方位。更進一步的改進了,整個縮放和平移過程,可通過設置把它們看成單獨的一個操作看待。這個設置在選項對話框中的用戶系統(tǒng)設置標簽中設置。這樣,只需要一步就可以回到以前的視圖,真是省時省力。- -選擇對象對象多時,選擇一個對象也太難了。經(jīng)常要經(jīng)過多次的試驗,選錯了,按取消(ESC)鍵。我怕你會把ESC鍵給按壞了。呵呵,到了2006版,對象選擇的功能被增強了??梢暤奶崾咎峁┝藙討B(tài)的反饋功能,幫助確定選定的對象。當用戶的光標滾動到對象上時,對象會亮顯,這樣可以使用戶看到要選的是哪個,而且會出現(xiàn)一個翻動器翻動亮顯對象。這樣還有一個好處就是可以在不選定對象時判斷一組圖形

21、是單獨的對象(如多段線)或分開的對象(如線段)。當選擇多個對象時,一個半透明的選擇窗口可清楚的看到對象選擇區(qū)域。用戶可使用選項對話框中的選擇標簽中提供的新的控件修改對象選擇行為。這一點明顯是學Microstation。自定義比例列表繪圖比例是AutoCAD圖形最基本的部分。在AutoCAD的相關功能中都可以訪問常用的比例。然而,因為不同的領域和幾何圖形,默認的比例可能不太適合平常的使用。例如,如果你是德國的制造工程師,就不會用到建筑上的一些比例,如1/4”=1。但是,你還可能需要其它一些沒有被列出的比例。在2006版本,用戶可輕易創(chuàng)建和管理自定義比例列表以適合自己的工作。新的ScaleList

22、Edit命令讓用戶可訪問“編輯比例列表”對話框,通過它可以添加新的比例,編輯現(xiàn)有比例,重新排列比例列表,還有可以刪除不需要的比例。所有在該對話框中的比例將自動顯示在以下設置中:打印對話框頁面設置對話框視口工具欄下拉列表圖紙集管理器布局向導屬性選項板執(zhí)行數(shù)學計算在AutoCAD中創(chuàng)建的技術資料圖形,經(jīng)常需要進行數(shù)學計算。要進行這些計算,用戶經(jīng)常需要調用外部的計算器或使用AutoCAD本身附帶的功能強大,但非常討厭的命令行計算器。這兩種方式都使人分心去關注其它與設計無關的東西。 在2006版中,新的“快速計算器”功能提供了內(nèi)嵌式圖形化的三維計算性能。可以在命令行中輸入QuickCalc命令調用,而

23、在屬性選項板中,當輸入數(shù)字字段時,也可以隨時調用它。四個可伸縮屏使用戶能完全控制整個操作。在數(shù)字屏中,可以使用在標準和計算器一樣的界面輸入值和執(zhí)行基本的數(shù)學運算。在科學計算屏中,有一些高級的功能可進行科學或工程計算。在單位轉換屏中,可以在公制和英制間轉換各種單位。在變量屏中,可以定義全局常數(shù)和變量,使其在整個AutoCAD過程中有效。 可以輸入值或直接在圖形中的對象上取值。當執(zhí)行這樣的計算后,值會自動保存到最近列表中以提供以后計算使用??梢哉迟N計算值到命令行或將其傳給屬性窗口。 - -注釋圖形注釋在幾乎所有的圖形中都是基本的內(nèi)容。用戶可使用多種AutoCAD對象來注釋,如文字、標注、塊屬性和表

24、格。但這樣做很廢時也容易出錯。 在2006版中,不管使用文字、標注、塊屬性或表格,均可以進行在位文字編輯、自動項目符號和編號、標注增強,并可以將屬性值提取出來并放到表格中。在位編輯文字在以前版本創(chuàng)建和編輯文字經(jīng)常會出問題。文字的大小自動調整以適合在編輯器中顯示,但這樣的話,在放到實際位置時這些文字就不知該有多大。而在位編輯對于單行文字和多行文字都適用。另外,對于編輯多行文字,會有一個新的選項工具欄和右鍵菜單選項。可以選擇顯示文字格式工具欄、選項和標尺。甚至可以使用不透明背景。創(chuàng)建編號和項目符號列表說明(象技術要求),做為絕大多數(shù)的圖形中重要的部分,一般都是用數(shù)字或字母做為項目的開頭排列的。在某

25、些情況下,它們可能要包含小的說明項,又要使用另外的字母或數(shù)字,或項目符號。在2006以前版本中,做起來很麻煩。如果手工輸入序列數(shù)字或字母,然后對中間的部分進行了增刪時,則必須重新編輯所有的數(shù)字或字母。而創(chuàng)建項目符號則需要查找要顯示的符號并插入或復制到每個需要的位置。 在2006版本中,創(chuàng)建技術要求這樣的說明性文字列表非常容易和直觀。使用新的項目符號和列表菜單(這個菜單可在文字格式工具欄或右鍵菜單中找到),可以創(chuàng)建字母、數(shù)字和項目符號列表。如果輸入字母和數(shù)字字符,如“A.”或“1.”,則自動列表項自動將其轉換為合適的字母或數(shù)字列表。同樣,如果輸入的是一個特殊的字符,如折號“-”或星號(*),以該

26、符號的項目符號列表將自動創(chuàng)建并用于以后的行中。當啟用了數(shù)字編號項時,數(shù)字和字母項將自動按序列創(chuàng)建。如果刪除了其中一項,其它的行將會自動重新排序。改變標注線型對于不同的圖形,可能要求標注的線型不同,如尺寸線和尺寸界線要求使用不同的線型。此時,用戶就得炸開標注來更改單獨的線型,但這樣則使標注不再關聯(lián),這不利于以后的編輯。在2006版中,標注對象可以為不同的線指定不同的線型。用戶可以通過標注樣式對話框或屬性窗口來進行調整。分配固定長度的尺寸界線在一些圖形中,可能需要為不同部分的圖形標注具有固定尺寸界線長度的標注。這時則需要手工編輯尺寸界線的原點,這也太浪費時間了。 真好,2006版就為我們準備好這樣

27、的選項,在標注樣式對話框中和屬性窗口中都可以為尺寸界線指定固定的長度。使用固定長度的尺寸界線,不需要去考慮標注與圖形之間的位置關系。- -標注弧長在以往的版本中,用戶可以標注半徑、直徑、角度和弦長等與弧有關的各種標注,唯獨沒有標注弧長這個功能,明經(jīng)通道也專門寫過這樣的程序來標注弧長。而在2006版中,則提供了弧長標注功能??蓮臉俗⒉藛魏凸ぞ邫谥性L問DimArc命令來執(zhí)行。而且弧長也可以包含一個弧長的符號以與其它標注區(qū)分開來。這個設置可在標注樣式對話框中找到。標注大圓弧曲線要標注一個圓弧,半徑標注應該是通過圓弧的中心。但,對于大圓弧來說,中心可能會遠遠超出圖紙,這樣就只能炸開標注再手工編輯。在2

28、006版中,可以用折角來標注大圓弧而不用炸開標注。折角可在“標注樣式對話框”中找到。翻轉標注箭頭標注樣式對話框中提供了控制標注箭頭的位置的功能。例如,可以在空間不夠的情況下消去箭頭或將箭頭移動到尺寸界線外。然而,不能單獨單獨控制兩個箭頭,而且在標注后經(jīng)常不知道怎樣去處理箭頭。在2006版本,新的翻轉箭頭項被添加到標注的右鍵菜單中,用戶可以翻轉任何一個箭頭的方向。這只需要在靠近箭頭的尺寸線上選擇后,調用右鍵菜單中的翻轉箭頭項就可以對箭頭進行翻轉了。指定展開長度有些圖形,特別是制造業(yè)的一些圖形,需要用戶指定一個符號來表示對象的展開長度。在2006版本中,提供一個符號來表示展開長度。在多行文字編輯器

29、右鍵菜單的符號列表中增加了展開長度符號。提取塊屬性數(shù)據(jù)到表格中對于不同的待業(yè),可能需要使用表格來做進度表、零件明細表或其它類型的數(shù)據(jù)列表。 這些表格總結了圖形的內(nèi)容并列出了設計中的每一部件。在以前,用戶需要手工創(chuàng)建、整理和維護這些表格或將這些數(shù)據(jù)提取到外部文件中,在其它應用程序(如Excel)打開并格式這些內(nèi)容,然后通過OLE或表格對象將這些內(nèi)容輸入回AutoCAD。 這個過程在2006版本中變得非常簡單。增強的屬性提取向導提供一個很強大的靈活性的控制性。新的數(shù)據(jù)源選項使用戶可從整個圖紙集中提供屬性數(shù)據(jù),而且提供了另外的設置可以控制對哪些圖塊進行分析。為防止在屬性提取向導中出現(xiàn)不需要的圖塊和屬

30、性,可能選擇只查看帶屬性的圖塊和只有屬性數(shù)據(jù)(區(qū)分于所有普通圖塊屬性)。所選定的塊會出現(xiàn)一個預覽圖像,可以在當前圖形中查看選定的圖塊。 在最后輸出前,用戶可以預覽數(shù)據(jù),重新安排表格元素并通過點擊列頭將數(shù)據(jù)排序。在覺得滿意時再輸出,可以將其提取到外部文件,也可以放到AutoCAD表格中,或者同時輸出。 提取數(shù)據(jù)到AutoCAD表格可得用預先確定的表格樣式。跟手工創(chuàng)建的表格不- -同,這樣做出來的表格中的文字是與屬性數(shù)據(jù)相鏈接的。如果屬性數(shù)據(jù)更改了,只需更新一個表格就可以得到最新的屬性信息。執(zhí)行表格數(shù)據(jù)的計算工程圖紙經(jīng)常需要進行一些計算,結果也需要在圖形中以列表的形式顯示出來??梢栽谕獠课募?,如電

31、子表格中執(zhí)行這樣的計算,但最后又得把結果放回AutoCAD中,而且對某些數(shù)據(jù)更改后又得重新進行一次操作。 在2006版中,增強了表格的功能,使可以在AutoCAD在不需要外部電子表格的情況下直接執(zhí)行一些常用的計算??梢赃M行一些數(shù)值計算,如累加、求和以及計數(shù),而且也可以創(chuàng)建帶加、減、乘、除以及開方等的算術表達式??梢栽诒砀竦娜魏螁卧裰休斎氲扔谔枴?”,然后通過指定相應單元格坐標來動態(tài)讀取其它單元格的數(shù)據(jù)。將單元格值、字段、數(shù)值和數(shù)學操作并在一些產(chǎn)生表格數(shù)據(jù)。填充圖形圖案填充是在很多AutoCAD圖形中經(jīng)常用到的。在2006版中進行了很大的增強,可以讓用戶更有效地創(chuàng)建圖案填充。邊界填充和填充(另

32、名為陰影和漸變)以及填充編輯對話框都進行了改進。它提供了更多更容易操作的選項,包括可伸縮屏來訪問高級選項??刂铺畛湓c在創(chuàng)建填充圖案時,圖案的外觀與UCS原點有關。這種默認的行為創(chuàng)建的圖案的外觀很難預知,而且經(jīng)常是自己不希望的結果。要更改它的外觀只能通過使用不同位置的邊界。在2006版本中,在創(chuàng)建和編輯填充圖案時可以指定填充原點。新的填充原點可以在填充以及填充和漸變對話框中控制。用戶可以使用當前的原點,通過點擊一個點來設置新的原點,或利用邊界的范圍來確定。甚至可以指定這些選項中的一個來做為默認的行為用于以后的填充操作。指定填充邊界在AutoCAD中指定填充區(qū)域在以前有許多的限制。只能拾取區(qū)域中

33、邊界內(nèi)的一個點,而且整個邊界都必須在當前屏幕顯示范圍內(nèi)可見。所以,只能縮放或平移到整個邊界可見或將邊界分成多個部分。在創(chuàng)建完填充后,不能利用其它的對象重新定義邊界,這樣只能刪除原來的填充重來一次。在2006版本中,填充得到了很大的改進,用戶只需要花很少的時間在調整填充邊界上。 用戶可以在范圍不完全在當前屏幕中的區(qū)域中選取一個點來填充。如,可以填充整套房子的墻,但可以放大到某個房間來選取點。新的邊界選項允許用戶添加、刪除、重新創(chuàng)建邊界以及查看當前邊界。創(chuàng)建分離的填充對象如果需要在圖形中的多個區(qū)域使用相同的填充屬性,如果一次將所有的區(qū)域都選中填充,則只能出現(xiàn)一個填充對象,這樣的結果可不是你所需要的

34、。象圖28中所示,如果將所有形狀的填充作為一個單一的對象,則不能在不影響其它- -填充圖案的情況下對某一填充圖案進行修改和刪除。所以就只能每次填充一個區(qū)域來完成,這樣才能讓它們各自獨立。 在2006版本中,填充和漸變對話框中新增了一個選項,可以讓用戶在一次填充操作中創(chuàng)建分離的填充圖案。這樣一次操作等于以前的多次操作了。查找填充面積有些時候,進行邊界填充后,需要確定邊界所包含的面積。例如,將一塊地分成幾個部分,在分的時候必須知道每塊地的面積。在以前的版本中,這需要分兩步走,第一步是創(chuàng)建填充,第二步才是計算面積,而且計算面積也不是一種簡單的事。 而在2006版本中,確定填充空間的面積將是一種非常簡

35、單的事。在填充圖案的屬性窗口中增加一個面積屬性,并可以查看填充圖案的面積。如果是選擇了多個填充區(qū)域,累計的面積也可以查詢得到。繪圖和編輯AutoCAD提供了很多的命令來繪制和編輯任何形狀的大小的幾何圖形。在2006版本中,很多的這些命令都被增強,使繪圖和編輯任務變得更加流暢。使用普通的編輯命令矛盾或效率低的命令執(zhí)行將破壞整個設計過程而且也降低了效率。雖然這些命令已經(jīng)用了很長的一段時間了,但這不代表它就不需要改變。在2006版本中,普通的AutoCAD編輯命令被更新以提供更協(xié)調和更有效的命令交互。 COPY(復制)命令包含了一個Undo(撤消)選項,它可以在一個復制操作過程中撤消多個復制的對象。

36、 COPY(復制)、MOVE(移動)和STRETCH(拉伸)命令在整個編輯進程中保留了最近移動距離值。 STRETCH(拉伸)命令提供了更加靈活和協(xié)調的對象選擇項。用戶可以使用標注的對象選擇方法,如拾取對象,AutoCAD能自動將這些對象當成移動的對象??梢栽谝粋€STRETCH操作中使用多次框選來選擇對象,這樣可同時按不同選擇集拉伸對象。 ROTATE(旋轉)和SCALE(比例縮放)命令包含了復制操作,這樣可以使用戶在旋轉或縮放對象的同時創(chuàng)建對象的復制。使用增強的“參照”選項可拾取任意兩個點以指定新的角度或比例。用戶不再局限于將基點做為參照點。 OFFSET(偏移)命令可以在不退出命令時多次進

37、行偏移操作。在命令中的附加選項可以進行撤消操作,自動刪除源對象,和指定新的對象是在當前圖形中創(chuàng)建還是與源對象相同的圖層中創(chuàng)建。 CHAMFER(倒角)和FILLET(圓角)命令包含了撤消選項,使用戶可在命令中撤消倒角或圓角操作。附加的功能使用戶可快速創(chuàng)建零距離倒角或零半徑圓角,這只需要在選擇兩條線的時候按下Shift鍵。 TRIM(修剪)和EXTEND(延伸)命令提供輕易訪問附加對象選擇選項。默認的“全部選擇”項使用記可快速選擇所有可視的幾何圖形做為剪切或延伸邊界,而- -在選擇對象進行修剪或延伸時Fence(欄選)和Crossing(框選)項也可用當使用框選項時,框窗口的最初拾取點將決定選定

38、的對象是怎樣進行修剪或延伸的。 RECTANGLE(畫矩形)命令提供新的面積和旋轉選項。使用面積選項,可通過指定矩形的面積和一個邊長來創(chuàng)建矩形。而旋轉選項使用戶在創(chuàng)建過程中可通過輸入旋轉角度或拾取兩個點來旋轉矩形。連接同類的對象圖形編輯過程可能經(jīng)常會產(chǎn)生一些多余的對象,這些對象在圖形中容易造成混亂。而把這些無用的對象刪除掉或合并掉要花很多的時間。 在2006版本中,新的JOIN(連接)命令能夠將多個同類對象的線段連接成單個對象,這樣可能減少文件大小和改進圖形的質量。JOIN功能對多段線、直線、圓弧、橢圓弧和樣條曲線都有效。它可以很容易地將任何數(shù)量的在同一直線方向上的線段連接成一條線。原始的線段

39、可以是相互交迭的、帶缺口的或端點相連的,但必須是在同一直線方向上。對于圓弧段或橢圓弧段也是一樣,它需要圓弧在同一圓周上。 JOIN命令使用戶可連接在同一平面而且端點相連的多個樣條曲線,可使用JOIN命令封閉圓弧或橢圓弧,自動將它們轉換為圓或橢圓。創(chuàng)建和編輯多線在AutoCAD中的多線對象可讓用戶創(chuàng)建平行線對象。盡管多線對象在平面布置圖這樣的圖形中非常有用,但這個工具在創(chuàng)建和編輯這些對象時有些不標準和麻煩。 在2006版本中,增加的多線功能使多線對象更加靈活和容易使用。多線樣式和多線編輯工具對話框提供了最新的更直接的用戶界面。另外,多線對象現(xiàn)在也支持標準的修剪和延伸命令的編輯。訪問三維幾何圖形的

40、對象捕捉新的OSNAPZ系統(tǒng)變量使用戶可過濾和替換OSNAP點中當前標高的Z值。如果設置OSNAPZ為任何方式得到的OSNAP的Z值將被替換為當前標高或使用當前UCS的Z值。- -第二章AutoCAD VBA 系統(tǒng)編程第一節(jié) AutoCAD VBA 簡介.AutoCAD VBA 簡介 AutoCAD軟件包是美國Autodesk公司推出的CAD(計算機輔助設計)軟件,從AutoCAD第一版誕生到現(xiàn)在已有三十年的時間。AutoCAD R14是目前最流行的工程圖形處理軟件。由于它具有完善的繪圖功能、良好的用戶界面、易學易用等特點,因而被廣泛地應用于測繪、規(guī)劃、設計、土地管理等行業(yè), AutoCAD為

41、用戶提供了多種二次開發(fā)工具,其中較常用的有AutoLISP、VBA、ObjectARX三種方式。 AutoLISP是一種解釋性的表結構處理語言,具有語言結構簡單、開發(fā)周期短、不依賴于操作平臺的特點,但是作為解釋語言,其運行速度和保密性方面有一定的缺陷,并且不適合開發(fā)有復雜運算的軟件。 ObjectARX For R14是基于MicroSoft Visual C+4.2的開發(fā)工具,一個ARX應用程序分享AutoCAD的地址空間并且函數(shù)可以直接為AutoCAD所調用,因而是運行速度最快的開發(fā)工具,但是MicroSoft Visual C+語言較復雜,開發(fā)ARX應用程序需要較多的軟件開發(fā)經(jīng)驗,也不適

42、合作為非軟件開發(fā)專業(yè)人員的測繪工作者的開發(fā)工具。 Visual Basic(VB)是美國微軟公司推出的程序開發(fā)工具,它簡單易學,適用面廣,在Windows平臺上被廣泛使用。為此,可以作為測繪工作者進行程序設計的首選工具。VBA是Visual Basic for Applications的縮寫,由 Visual Basic派生而來,現(xiàn)在已經(jīng)成為Mictosoft產(chǎn)品的標準語言。與VB 一樣,VBA是面向對象的設計語言,它繼承了VB語法簡單、功能強大的特點,同時,由于VBA可與主程序在同一內(nèi)存空間內(nèi)運行,大大提高了運行的速度,并具有某些“智能”功能。每一套AutoCAD 2000 都包含功能強大、

43、易學易用的VBA 5.0程序開發(fā)環(huán)境,這個繼承開發(fā)環(huán)境提供了高質量的用戶化編程能力。(1)VBA能夠使AutoCAD與其它應用程序直接共享數(shù)據(jù),如Microsoft Office 97軟件,因為所有的VBA應用程序都可以方便的相互溝通,在設計過程中可以很容易的將AutoCAD的數(shù)據(jù)與基于Windows的應用程序聯(lián)系起來。例如,可以使用AutoCAD 2000生成材料表并直接輸出電子數(shù)據(jù)表為財務部門使用。繪制圖紙,然后用VBA。(2)在VBA綜合開發(fā)環(huán)境中,可以通過拖動圖表的方法,簡單而可視化的建 立用戶界面。用戶可以使用AutoCAD工具欄,可以使用標準VBA界面工具創(chuàng)建新的工具欄。(3)VB

44、A的語言代碼完全繼承了VB的特征,可以說是世界上最簡單的編程語言,但其功能不弱。從數(shù)據(jù)計算、數(shù)據(jù)庫管理到Internet軟件開發(fā),都可以見到VB的身影,并可通過各種在線幫助,隨時得到名師的真?zhèn)鳌?4)具有開放式的對象模型。AutoCAD 2000軟件中的ActiveX對象模型十分重要,它顯示了每一個對象的方法和屬性,用戶可以按照自己的愿望編程或定制AutoCAD 2000軟件。(5)良好的運行速度。VBA是一個內(nèi)嵌式的控制器,共享AutoCAD的內(nèi)存空- -間,可以更好的與AutoCAD溝通。其余信速度與ObjectARX應用程序非常接近,比其他開發(fā)方式(如ADSRX,ADS和LIAP)要高許

45、多。 無論編程技術水平如何,使用VBA編程都不會感到很多困難。自從帶有VBA開發(fā)接口的AutoCAD R14 發(fā)行以來,已經(jīng)有超過百萬的開發(fā)者使用了這一軟件,開發(fā)的主要程序將有更多機會為不斷增長的用戶群體服務。具體如下:一. VBA的概念與作用 VBA(Visual Basic for Application) 是一種完全面向對象體系結構的編程語言,由于其在開發(fā)方面的易用性和具有強大的功能,因此許多應用程序均嵌入該語言作為開發(fā)工具。AutoDesk公司也在AutoCAD R14.01版本開始內(nèi)置了VBA開發(fā)工具,同時提供了適用于VBA開發(fā)的ActiveX Automation對象模型。二. 功

46、能介紹1.簡要介紹Document(文檔)對象文檔對象,實際上就是AutoCAD圖形,它可在Documents(文檔)集合中找到,它提供訪問所有圖形還有大部分非圖形的AutoCAD對象。通過提供的Model Space(模型空間)和Paper Space(圖紙空間)訪問圖形對象(線、圓、弧等),通過提供的如Layers(圖層)、Line types(線型)和Text Styles(字型)這樣名稱的集合訪問非圖形對象(圖層、線型、字型等)。Document(文檔)對象也提供訪問Plot(打印出圖)和Utility(實用工具)對象。介紹AutoCAD VBA工程及VBA交互開發(fā)環(huán)境(VBA IDE

47、),盡管大部分VBA環(huán)境在行為上都是相似的,但AutoCAD VBA IDE還是有些獨有的特性。在AutoCAD中還有些相關的命令可以用于裝載工程、運行工程,或打開VBA IDE環(huán)境。本章將概要介紹VBA工程、VBA命令和VBA IDE的使用。 AutoCAD VBA 工程是代碼模塊、類模塊和窗體的集合,它們組合起來以執(zhí)行給予的功能。工程可保存在AutoCAD圖形中,或作為獨立的文件保存。嵌入工程是保存在AutoCAD圖形中。當包含有這些工程的圖形中AutoCAD打開時,他們可以自動地裝載,這種方法可以很方便地分發(fā)工程給用戶。嵌入工程也有它的極限,它不能打開或關閉AutoCAD圖形,那是由于他

48、們的函數(shù)只存在于工程所在的文檔中。使用嵌入工程不需要在運行程序之前查找并裝載工程文件。舉個含有嵌入工程的圖形的例子,當圖形打開時,一個時間日志被觸發(fā)。通過這樣一個宏的應用可以登記并記錄用戶在該圖形上所花費的時間。這時用戶不必去記住在打開圖形之前裝載工程,這就是自動操作的一個很好的例子。 全局工程保存在獨立的文件中,它更加通用,因為他們能在AutoCAD圖形中運行,也能打開、關閉AutoCAD圖形,但它在圖形打開時不能自動裝載。用戶必須知道他們所需要的宏包含在哪個工程文件中。然而,全局工程非常容易與其它使用者共享,它可以將通用的宏做為很好的庫而存在。舉個例子,你保存在一個工程文件中的宏是有關多個

49、圖形的材料清單。這個宏可以在工作周期的末期由管理員運行,這樣就可以收集到所有圖形的信息。AutoCAD VBA 工程與Visual Basic 工程在二進制結構上是不兼容的。然而,其中的窗體、模塊和類可以通過在VBA IDE環(huán)境中使用輸入和輸出VBA命令來在工程之間進行轉換 用VBA管理器組織工程 你可以使用VBA管理器查看裝載在當前AutoCAD進程的所有VBA工程。VBA管理器一個AutoCAD工具,它允許你裝載、卸載、保存、- -創(chuàng)建、嵌入和分離VBA工程。 2. 裝載現(xiàn)存的工程當你裝載工程到AutoCAD中,所有的公用的子程序(也稱為宏)都可以使用。 嵌入于圖形中的工程在圖形打開時就被

50、裝載。保存在DVB文件中的工程必須單獨裝載 3. 卸載工程 卸載工程以釋放內(nèi)存并保持裝載的工程列表的長度以方便管理。你不能卸載嵌入工程或由其它已裝載工程所引用的工程。4. 嵌入工程到圖形中 當你嵌入一個工程時,你是將工程的一個副本置于圖形數(shù)據(jù)庫中。無論何時,當所包含工程的圖形打開或關閉時,工程會同時被裝載和被卸載。一個圖形只有在同一時間包含一個嵌入工程。如果圖形已經(jīng)包含有一個嵌入工程,你必須在同樣地入其它工程之前將該嵌入工程分離出。5. 從圖形中分離工程 當你分離工程時,其實是將工程從圖形數(shù)據(jù)庫中刪除,同時會提示你將工程保存為外部的工程文件。如果你沒有將其保存為外部工程文件,該工程的數(shù)據(jù)將會刪

51、除。 6. 創(chuàng)建新的工程 新的工程將作為未保存的全局工程被創(chuàng)建。當工程創(chuàng)建時,你可以將工程嵌入圖形中,或將其保存為工程文件。7. 保存嵌入工程 嵌入工程是在圖形保存時同時保存的。全局工程必須使用VBA管理器或VBA IDE進行保存。 8. 處理宏 與設置VBA工程選項一樣,宏對話框允許你運行、編輯、刪除和創(chuàng)建宏。 宏是公用(可執(zhí)行)的子程序。每一工程通常至少一個宏。9. 運行宏 運行宏就是在當前AutoCAD進程中執(zhí)行宏代碼。當前活動圖形指的是當宏執(zhí)行開始時處于打開并處理激活狀態(tài)。所有在全局工程的宏中所涉及的This Drawing對象將指向當前活動圖形。在嵌入工程中,This Drawing

52、對象通常指向嵌入該宏的圖形。 10. 編輯宏 編輯宏將打開VBA IDE并打開所選定宏的代碼窗口。詳細的介紹請參考“用VBA IDE編輯工程”。從功能上來說,VBA與VB幾乎完全一樣,或者說VBA是VB的一個子集。但它們之間更本質的區(qū)別在于VBA沒有自己獨立的工作環(huán)境,而必須依附于主應用程序;而VB則不依附于任何其它的應用程序,具有完全獨立的工作環(huán)境和編譯、連接系統(tǒng)。由于VBA依附于主應用程序,因此它與主應用程序之間的通信簡單而富有效率,其代碼完全是在進程內(nèi)執(zhí)行的。VBA的代碼在AutoCAD中仍以解釋的方式執(zhí)行,但由于它與AutoCAD共享內(nèi)存空間,因此執(zhí)行速度比ADS程序還要快。- -2.

53、1.2VB開發(fā)AutoCAD應用程序的原理及方法1、ActiveX Automation技術 ActiveX Automation是微軟公司的一個技術標準,其宗旨是在Windows系統(tǒng)的統(tǒng)一管理下協(xié)調不同的應用程序,允許這此應用程序之間相互溝通、相互控制,但兩個應用程序間的溝通不是對等的,其中,一個程序稱為客戶程序(Client),另一個程序稱為服務程序(Server),一般情況下,由客戶程序提出需要進行什么操作,服務程序針對操作申請,完成相應的命令。2、AutoCAD下實現(xiàn)ActiveX Automation AutoCAD R14對AutoCAD本身增加了ActiveX自動化服務功能,即A

54、utoCAD可以作為ActiveX的服務程序,我們可以從其它客戶程序中操作AutoCAD。VB是最為常用的支持ActiveX Automation技術的開發(fā)工具,它可以編制出ActiveX的客戶程序,用來操作AutoCAD。即利用VB編制能與AutoCAD相溝通的應用程序,以此來實現(xiàn)AutoCAD的二次開發(fā)。3、利用VB進行AutoCAD二次開發(fā)的關鍵步驟 首先,要在VB中引用AutoCAD的類型庫Acad.tlb,該庫位于AutoCAD R14的安裝目錄下。 其次,要建立用VB開發(fā)的應用程序與AutoCAD間的聯(lián)系,這一過程,稱為初始化。相應的程序代碼如下: Private Sub Init

55、Graph() On Error Resume Next Set AcadApp = GetObject(, AutoCAD.Application) If Err Then MsgBox Err.Description Unload Me End If AcadApp.Visible = True Set AcadDoc = AcadApp.ActiveDocument Set MoSpace = AcadDoc.ModelSpace End Sub 之后,即可以用AutoCAD類型庫提供的屬性、方法對AutoCAD進行操作,如畫線,可用 AddLightWeightPolyline語句來完

56、成,寫文字,可用AddText語句來實現(xiàn)。- -第二節(jié)利用AutoCAD編寫船用標準零件2.2.1 船用標準零件隨著現(xiàn)代制造技術的發(fā)展,現(xiàn)代造船業(yè)也向著高科技密集方向發(fā)展。計算機技術引入現(xiàn)代造船業(yè)是現(xiàn)代造船業(yè)的一次突破,其中AutoCAD制圖技術的應用大大的縮短了造船的周期,節(jié)約了大量的人力物力。現(xiàn)代造船業(yè)是一個產(chǎn)業(yè)鏈的中的一個環(huán)節(jié),螺栓、螺母、墊片編程流程圖:開 始參數(shù)分析判斷螺 母墊 片螺 栓結 束 否是Private Sub canshu_Click()End SubPrivate Sub CmdExit_Click()Unload MeEnd SubPrivate Sub CmdOk_

57、Click()檢查參數(shù)賦值情況If TextX.Text = Or TextY.Text = Or TextZ.Text = ThenMsgBox 請在屏幕選起點!, vbExclamation, 警告Exit SubEnd If定義直線對象Dim objLine01, ObjLine02, ObjLine03, ObjLine04, ObjLine05, ObjLine06, ObjLine07, ObjLine08, ObjLine09, ObjLine10, ObjLine11, ObjLine12, ObjLine13, ObjLine14, ObjLine15 As AcadLine

58、定義數(shù)組變量,作為各頂點的坐標Dim Pt01(2) As Double:Dim Pt02(2) As Double:Dim Pt03(2) As DoubleDim Pt04(2) As Double:Dim Pt05(2) As Double:Dim Pt06(2) As DoubleDim Pt07(2) As Double:Dim Pt08(2) As Double:Dim Pt09(2) As DoubleDim Pt10(2) As Double:Dim Pt11(2) As Double:Dim Pt12(2) As DoubleDim Pt13(2) As Double:Dim

59、 Pt14(2) As Double:Dim Pt15(2) As DoubleDim Pt16(2) As Double:Dim Pt17(2) As Double:Dim Pt18(2) As DoubleDim Pt19(2) As Double:Dim Pt20(2) As Double:Dim Pt21(2) As DoubleDim Pt22(2) As Double:Dim Pt23(2) As Double:Dim d, l, b As DoubleDim x, y, z As Variantx = TextX: y = TextY: z = TextZ檢查參數(shù)賦值情況If T

60、extZhiJ.Text = Or TextChangD.Text = ThenMsgBox 參數(shù)不能為空,請檢查參數(shù)的輸入, vbExclamation, 警告Exit SubEnd Ifd = TextZhiJ: l = TextChangDIf d = 5 ThenMsgBox 螺栓長度應為:GB5780 2550; GB5781 1040, vbExclamation, 警告b = 16 If l 50 Then Exit Sub End IfEnd IfIf d = 6 ThenMsgBox 螺栓長度應為:GB5780 3060; GB5781 1250, vbExclamation

溫馨提示

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

評論

0/150

提交評論