国产爱久久久精品_看**视频一一级毛片_91啪国自产中文字幕在线_国内精品伊人久久久久妇

網絡消費網 >  5G > > 正文
基于VBA的AutoCAD二次開發及應用實例
時間:2022-01-31 14:22:02

1引言

AutOCAD2005是AutOdesk公司的系列產品,該軟件從其使用和設計思路上都秉承了工程制圖人員的繪圖習慣,能夠非常輕松地繪制出帶有平面視圖和三維渲染效果的工程圖紙,是繪圖人員的一個理想工具。隨著CAD基礎理論和應用技術的不斷發展,對CAD系統的功能要求也越來越高。因而AutoCAD不可能完全滿足每個用戶的具體而特定的要求。設計人員希望它能從本質上減輕大量簡單煩瑣的工作量,使他們能集中精力于那些富有創造性的高層次思維活動中。

AutoCAD提供的開放式體系結構允許用戶和開發者采用高級編程語言對其進行擴充和修改,即二次開發,能最大限度地滿足用戶的特殊要求,更方便、更規范、更專業的實現設計和繪圖中的應用。VBA最早是建立在0ffice97中的標準宏語言,由于它在開發方面的易用性及具有的強大功能,許多軟件開發商都將其嵌入自己的應用程序中,作為一種開發工具提供給用戶使用。AutOdeSk公司自從Aut0CADRl4.0l版開始,內置了VBA開發工具。

新一代程序開發工具ViSual BaSic,不僅繼承了面向對象方法的特性,同時具備可視化程序語言及程序產生器的概念。

VBA(visual Basic For Apphcation)是AutoCADR12以后推出的一種新的編程環境,提供了以Visual Basic為基礎的面向對象的開發特征及程序接口,能真正快速地訪問AutOCAD圖形數據庫,能明顯提高軟件開發和維護的效率。

2 VBA的技術特性

2.1 VBA開發AUTOCAD的技術特點

VBA是微軟開發出來的應用程序共享一種通用的自動化語言,它可以使常用的程序自動化,并可以創建自定義的解決方案。

VBA被集成到AutoCAD中,VBA和AutoCAD中強大的Activex自動化對象模型的結合,代表了一種新型的定制AutoCAD的模式構架。通過VBA,我們可以操作AutoCAD2004,控制ActiveX和其它一些應用程序,使之相互之間發生互易活動下面就是VBA的主要功能:

(1)VBA提供強大的窗體創建功能,為應用程序建立對話框及其他屏幕界面。

(2)可以創建自己的工具條。

(3)可以創建功能強大的模塊級宏指令,宏名實質上就是模塊的過程名。

(4)提供建立類模塊的功能,這對開發大型工程非常有用,因此類可以提供重用組。

(5)具備完善的數據訪問和管理能力,通過ADO(ActivexData Objects),可以對Access數據庫或其他外部數據庫(像dBase,FoxPro等)實現訪問和管理。此功能比直接使用AutoCAD的數據庫管理系統要方便,且功能強大。

2.2 VBA AutoCAD ActiveX Automation對象模型

VBA是通過AutoCAD ActiveX Automation接口來建立和AutoCAD對象問的聯系。ActiveX是建立在COM對象模型之上的一個標準通信協議,它允許對象之間通過一定的接口相互通信。

AutoCAD Activex使用戶能夠從AutoCAD的內部或外部以編程方式來操作AutoCAD。它是通過將AutoCAD對象顯示到“外部世界”來做到這一點的。這些對象被顯示后,許多不同的編程語言和環境以及其他應用程序(例如Microsonword VBA或Excel VBA)就可以訪問它們。如圖1是編程語言和應用程序通過AutoCAD ActiveX訪問AutoCAD。

圖1 編程語言和應用程序通過AutoCAD AcfiveX訪問AutoCAD

在AutoCAD中實現ActiveX接口有兩大優點:

·更多的編程環境可以編程訪問AucOCAD圖形。在ActiveXAutomation出現以前,開發人員只能使用AutoLISP或C++接口。

·與其他windows應用程序(如Microsoft ACCESS和Word)共享數據變得更加容易。

對象是所有Activex應用程序的主要構造塊。每一個顯示的對象均精確代表一個AutoCAD組件。AutoCAD ActiveX接口中有許多不同類型的對象。例如:

·直線、圓弧、文字和標注等圖形對象都是對象。

·線型與標注樣式等樣式設置都是對象。

·圖層、編組和塊等組織結構都是對象。

·視圖與視口等圖形顯示都是對象。

·甚至圖形、AutoCAD應用程序本身也是對象。

AutoCAD對象是通過分層方式來組織的,應用程序對象為根對象。這種分層結構的視圖被歸結為對象模型。對象模型提供了用戶訪問下一層對象的途徑。

用戶可直接通過用戶定義變量引用對象。直接引用對象,應包括對象的層次。舉一個最簡單的例子,在VBA中要利用圓心和半徑創建圓可以使用以下代碼:

Sub drawcircle()

* Dim ptl(2)As Double

Dim radius As Double

ptl(0)=23

ptl(1)=78

Dtl(2)=67

radius=56

’調用Addcircle方法繪制圓

ThisDrawing.Modelspace.addcircle ptl,radiusEnd Sub

3 AUTOCAD VBA實例應用

這個實例,介紹了VBA開發AUTOCAD實現參數化繪圖的編程思路與實際應用,是CAD系統中很重要的環節。

3.1繪制三維圖形實例說明

(1).本程序運行界面如圖2所示,用戶可以指定中心點,桌面及桌腿半徑,桌子的高度,系統就能根據用戶指定的參數在三維空間中創建出一個桌子。

(2).編程思路

核心問題是創建大小圓的面域,復制出來的桌腿,角度的旋轉及最后的合并著色。

3.2 VBA開發AutoCAD2005的技術流程

(1)首先在AUTOCAD2004中,選擇[工具/宏/VBA管理器]菜單項,在彈出的[VBA管理器]對話框中單擊[新建]按鈕,將其保存在適當的位置。

(2)在[VBA管理器]對話框中單擊[Visual Basic編輯器]按鈕,進入VBA集成開發環境,選擇[插入/用戶窗體]菜單項,向工程中添加一個用戶窗體。

圖2 創建桌子運行界面

(3)在用戶窗體上插入如圖2所示的相關控件,并按下表分別設置它們的相關屬性。

(4)相關代碼:l>.在Cammandbutton2命令按鈕的單擊Click事件的代碼為:

圖3桌子的參數化繪圖

(2)在AutoCAD2004中,選擇[視圖/著色/體著色]菜單項,對生成的模型進行著色,所得結果,如圖4所示

圖4 創建桌子運行界面

該實例可以連接上數據庫,使用時可以直接調用數據庫中的參數,直接運行得出所需的圖形。

4 AUTOCAD VBA數據庫連接技術

4.1 ADO數據庫訪問技術

別隨著CAD技術的發展,在CAD軟件中使用數據庫的場合越來越多,數據庫連接方法ADO是Microsoft AcciveX Data ObjeCts的簡稱,ADO作為一種更新的數據庫訪問技術,“擴展”了DA0和RD0所使用的對象模型,包含較少的對象和更多的屬性、方法、事件。

本節僅介紹ADO控件連接MICROSOFT、ACCESS數據庫的基本操作,桌子的各個參數,存放在數據庫DESK.mdb中,可以用于瀏覽數據庫中的各條記錄,還可以完成記錄的添加,修改和刪除操作。

在使用ADO對象之前,需要在VBA集成開發環境中,選擇[工程/引用]菜單項,從彈出的對話框中選中[microsoft ActiveX Data Objects 2.5 Livrary]選項,引用ADO的對象模型,如圖5所示

圖5 引用ADO的對象模型

4.2 ADO編程

在編程過程中使用AD0的一個典型的存取數據的步驟為:

(1)連接數據源。可以使用連接對象的Open方法打開數據庫對象,例如:

adoCon.Open“Provider=Microsoft.Jet.OLEDB.4.0;DataSource=“_

Left(strPath,Len(strPam)一6)”\DESK.mdb;”

(2)打開記錄集對象。可以使用記錄集對象的Open方法打開記錄集對象,例如:

adoRs.Open“biaoData2”,adoCon,adOpenDynamic,adLockOptimiStic

(3)使用記錄集。在各個記錄集之間切換一般可以使用記錄集對象的Move、MoveFirst、MoveNext、MovePrevious和MoveLast方法,添加新的記錄可以使用記錄集對象的AddNew方法,修改當前記錄的內容只需對數據庫記錄集中的對象重新賦值即可,刪除當前的記錄可以使用記錄集的Delete方法。

其中,記錄集在進行添加的操作之后,必須使用Update方法更新數據庫。

(4)斷開連接。使用close方法能夠關閉記錄集和數據庫連接對象,在退出程序之后,必須用close方法關閉這兩個對象。向工程中添加一個用戶窗體,并在窗體中放置如圖6所示的控件。

向工程中添加一個用戶窗體,并在窗體中放置如圖6所示的控件。

圖6桌子的數據庫連接

5 結束語

基于VBA的AutoCAD二次開發技術,可以實現AUTOCAD功能的拓展及參數化沒計,如零件標準圖庫的建立等各個方面,更好的滿足機械電子行業等系列化產品的專業設計。對于大型CAD應用軟件的開發,能發揮極大的作用。各大企業也在開發自己的CAD系統,具有很好的實用價值。

關鍵詞: AutoCAD VBA 二次開發 應用實例

版權聲明:
    凡注明來網絡消費網的作品,版權均屬網絡消費網所有,未經授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明"來源:網絡消費網"。違反上述聲明者,本網將追究其相關法律責任。
    除來源署名為網絡消費網稿件外,其他所轉載內容之原創性、真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考并自行核實。
熱文

網站首頁 |網站簡介 | 關于我們 | 廣告業務 | 投稿信箱
 

Copyright © 2000-2020 m.fnsyft.com All Rights Reserved.
 

中國網絡消費網 版權所有 未經書面授權 不得復制或建立鏡像
 

聯系郵箱:920 891 263@qq.com

備案號:京ICP備2022016840號-15

營業執照公示信息

国产爱久久久精品_看**视频一一级毛片_91啪国自产中文字幕在线_国内精品伊人久久久久妇

        亚洲视频每日更新| 欧美日韩精品是欧美日韩精品| 欧美日韩大陆一区二区| 国产清纯白嫩初高生在线观看91 | av电影在线不卡| 亚洲黄色免费电影| 欧美一区国产二区| 亚洲欧美另类在线| 国产精品乡下勾搭老头1| 国产精品国产三级国产aⅴ入口| 欧美日韩成人一区| 亚洲麻豆国产自偷在线| 国产成人av一区二区三区在线| 亚洲欧美一区二区久久| 欧美一级黄色录像| 亚洲国产精品久久人人爱| 成人亚洲精品久久久久软件| 一区二区激情视频| 久久久久久久久久久电影| 日韩不卡免费视频| 国产欧美一区二区精品性色| 欧美日韩国产综合视频在线观看| 最新中文字幕一区二区三区 | 在线播放国产精品二区一二区四区 | 亚洲男同性视频| 国产成人av电影在线| 夜夜嗨av一区二区三区网页| 久久嫩草精品久久久精品一| 麻豆极品一区二区三区| 国产精品久久久久永久免费观看| 91麻豆精品91久久久久同性| 亚洲国产精品麻豆| 国产婷婷色一区二区三区四区| 欧美日韩一级二级| 一区二区三区久久| 久久蜜桃一区二区| 制服丝袜国产精品| 日韩高清不卡在线| 国产精品每日更新在线播放网址| 日韩视频免费直播| 麻豆久久久久久久| 亚洲免费成人av| 国产偷v国产偷v亚洲高清| 国产综合色在线视频区| 亚洲一区二区视频在线| 国产精品色哟哟| 成人国产精品免费观看视频| 欧美中文字幕亚洲一区二区va在线 | 日韩一级片网站| 青青草精品视频| 亚洲色图一区二区三区| 国产午夜一区二区三区| 国产成人精品影视| 欧洲另类一二三四区| 亚洲精品你懂的| 久久久噜噜噜久噜久久综合| 欧美一级xxx| 久久99精品久久只有精品| 亚洲制服丝袜一区| 亚洲欧洲国产日本综合| 久久这里只有精品视频网| 欧美一区二区三区系列电影| 美国毛片一区二区| 亚洲第一狼人社区| 亚洲精品你懂的| 中文字幕乱码亚洲精品一区| 久久久久国色av免费看影院| 成人午夜视频福利| 在线播放视频一区| 久久91精品国产91久久小草| 午夜精品久久久久| 亚洲一区二区精品视频| 中文字幕在线不卡| 国产精品久久久久久一区二区三区| av激情综合网| 日韩天堂在线观看| 国产福利精品一区二区| 欧美狂野另类xxxxoooo| 六月丁香婷婷色狠狠久久| 色中色一区二区| 午夜不卡av在线| 亚洲一区在线观看视频| 亚洲午夜免费电影| 亚洲精品写真福利| 一区二区三区成人| 亚洲人妖av一区二区| 亚洲免费在线播放| 亚洲色图在线播放| 亚洲精品欧美专区| 悠悠色在线精品| 夜夜嗨av一区二区三区| 一区二区三区四区高清精品免费观看 | 一本色道久久综合亚洲91| 午夜视频在线观看一区二区| 亚洲激情在线激情| 亚洲一级不卡视频| 亚洲综合视频在线观看| 亚洲国产视频a| 午夜一区二区三区在线观看| 天天综合天天综合色| 偷拍日韩校园综合在线| 免费观看成人鲁鲁鲁鲁鲁视频| 日本韩国欧美一区| 久久超碰97人人做人人爱| 欧美视频一二三区| 国产一区免费电影| 欧美一区二区三区婷婷月色| 成人永久看片免费视频天堂| 欧美成人bangbros| 91亚洲精品久久久蜜桃网站| 国产欧美1区2区3区| 国产欧美精品一区二区色综合 | 日韩三级视频在线看| youjizz国产精品| 久久精品一二三| 国产精品女主播av| 洋洋成人永久网站入口| 亚洲成av人影院| 久久精品国产第一区二区三区| 欧美人妖巨大在线| 波多野结衣在线aⅴ中文字幕不卡| 久久婷婷国产综合精品青草 | 粉嫩aⅴ一区二区三区四区五区 | 99久久婷婷国产综合精品| 国产亚洲一区二区在线观看| 日本一区二区三区视频视频| 一区二区三区产品免费精品久久75 | 国产乱码精品一品二品| 欧美mv日韩mv| 国产日韩欧美亚洲| 亚洲一区二区av在线| 在线区一区二视频| 成人精品一区二区三区四区 | 国产精品久久久久久久久久久免费看| 一区二区三区国产豹纹内裤在线| 色妹子一区二区| 成人免费视频播放| 国产精品视频yy9299一区| 尤物在线观看一区| 精品一区二区三区久久久| 精品欧美一区二区久久| 国产精品精品国产色婷婷| 亚洲国产精品精华液网站| 欧美日韩国产影片| 久久午夜国产精品| 一区二区三区精品视频在线| 欧美性受极品xxxx喷水| av午夜精品一区二区三区| 日韩美女精品在线| 日本二三区不卡| 99精品视频一区| 亚洲黄色小视频| 欧美体内she精高潮| 91老师片黄在线观看| 一区二区三区精品久久久| 欧美日韩国产综合草草| 久久久久88色偷偷免费| 婷婷久久综合九色综合伊人色| 欧美一区二区三区色| 国产精品久久毛片a| 麻豆成人免费电影| 久久久久久久久蜜桃| 亚洲一二三区在线观看| 国产91对白在线观看九色| 亚洲欧洲在线观看av| 欧美在线免费视屏| 国产亚洲女人久久久久毛片| 视频一区在线播放| 精品久久久久久久人人人人传媒 | 亚洲成av人片在www色猫咪| 91精品国产综合久久久久| 国产精品久久一级| 激情六月婷婷综合| 国产精品麻豆视频| 欧美色爱综合网| 国产女同互慰高潮91漫画| 免费观看在线色综合| 欧美激情中文字幕| 日本丰满少妇一区二区三区| 久久久久99精品一区| 免费日本视频一区| 欧美激情艳妇裸体舞| 欧美亚洲综合久久| 国产女主播视频一区二区| 精品无人区卡一卡二卡三乱码免费卡 | 亚洲一区二区三区自拍| 97久久精品人人做人人爽50路| 亚洲地区一二三色| 久久女同精品一区二区| 午夜精品久久久久| 国产日韩欧美在线一区| 精品一区二区三区av| 亚洲人成精品久久久久| 欧美一级片在线观看| 一区二区三区视频在线看| 91视频精品在这里| 久久国产日韩欧美精品| 亚洲欧美电影一区二区| 欧美sm极限捆绑bd| 日本韩国一区二区三区|