【摘要】在模擬電子技術考試系統(tǒng)當中,需要解決的一個重要內(nèi)容就是電路圖的編輯功能如何實現(xiàn),這是整個考試系統(tǒng)的基本內(nèi)容,也是整個考試系統(tǒng)的設計難點之一。利用VB對AutoCAD進行二次開發(fā),從而滿足系統(tǒng)對電路圖編輯與修改的功能。
【關鍵詞】電路繪圖軟件 開發(fā) VB AutoCAD
一、引言
AutoCAD軟件是美國Autodesk公司所開發(fā)的一款繪圖軟件,由于其實用性較強,在我國一直有著較為廣泛的運用。AutoCAD的用戶界面較為友好,繪圖功能相比其他軟件較為發(fā)達,同時AutoCAD軟件的結構體系時開放的,允許人們對其進行二次開發(fā),從而使得AutoCAD被廣泛運用在各行各業(yè)當中,如電氣、建筑、設計等。AutoCAD在進行二次開發(fā)之后,可以根據(jù)用戶的需求在AutoCAD的基礎之上再提供一些較為有用的功能,可以實現(xiàn)快速作圖,例如在國內(nèi)應用的較為廣泛的天正建筑、探索者等軟件都是基于AutoCAD進行二次開發(fā)的產(chǎn)品。在模擬電子技術計算機考試系統(tǒng)當中,學生在考試或者練習的過程當中,需要多電路圖進行編輯與修改,這就必然要求需要開發(fā)一種所對應的電路圖繪圖軟件,考慮到AutoCAD的開放性,以及繪圖的功能較為強大,同時也簡單易學的特點,采用對AutoCADJ進行二次開發(fā)的方式進行電路繪圖軟件的開發(fā)。
二、利用VB對AutoCAD進行二次開發(fā)的過程
在利用VB進行AutoCAD的二次開發(fā)過程當中,其中有一項較為關鍵的技術,ActiveX自動化界面技術是對整個開發(fā)的過程都有著重要的作用。通過ActiveX自動化界面技術,可以將AutoCAD當成是VB程序當中的一個圖形窗口,用VB 語言通過編程操縱AutoCAD對其進行打開、繪圖、編輯、打印和關閉等操作。
(一)AutoCAD對象
在實際的開發(fā)過程當中,必須要通過VB實現(xiàn)對AutoCAD 的操作,現(xiàn)階段VB操作AutoCAD大部分都是通過對AutoCAD的對象的屬性與方法所實現(xiàn)的。AutoCAD的對象具有多種多樣的類型,例如包括圖形對象、樣式設置對象、組織結構、圖形顯示對象、AutoCAD應用程序(Application)和文檔(Document)。根據(jù)其功能所存在的的一些差異,可以將這些對象分為不同的層次,與隸屬關系,在AutoCAD的對象的所有屬性當中應用程序是整個對象模型的最基礎部分,對整通過對Application對象的屬性和方法可對AutoCAD應用程序進行操作。Application對象具有4個下級對象,其中包括一個對象(Preferences)3個集合對象(Document、MenuBar、MenuGroups),4個下級對象又分別具有它們的下級對象,可以通過Application對象的屬性和方法逐級向下訪問。圖一所示為Application對象的下級對象。
(二)VB與AutoCAD之間的連接
在利用VB對AutoCAD進行開發(fā)的過程當中,所面臨的一個重要問題就是如何實現(xiàn)VB與AutoCAD之間的連接,這是保障二次開發(fā)過程得以順利進行的重要保障,因此,必須要順利的實現(xiàn)這一過程。正常情況下VB與AutoCAD之間的連接實現(xiàn)過程可以通過以下兩個步驟實現(xiàn)。首先是需要VB的編程環(huán)境之下引用AutoCAD的對象庫,引用的具體方式為工程~引用~AutoCAD。第二,創(chuàng)建AutoCAD對象,啟動AutoCAD。程序的具體代碼如下所示:
Public Acad as Application//定義AutoCAD對象
Set Acad=GetObject(,"AutoCAD.Applica-tion")//創(chuàng)建AutoCAD對象
(三)AutoCAD圖形文件的操作
AutoCAD在正常的運用過程當中,在對圖形進行編輯與修改時,都需要在其圖形文件中進行,因此利用VB進行AutoCAD的二次開發(fā)過程其本質(zhì)就是利用VB對AutoCAD的圖形文件實行控制的過程,同時在圖形文件中實現(xiàn)電路圖的新建、編輯、修改等過程。在AutoCAD 圖形文件建立完成之后,可以通過添加功能在AutoCAD的模型當中或者布局當中創(chuàng)建出所需要的二維或者三維空間,從而實現(xiàn)對相關對象的編輯,在進行電路圖的繪制時往往都是利用二維空間進行繪制。VB不僅對AutoCAD 中點、線等圖形文件的創(chuàng)建能夠?qū)崿F(xiàn)直接的操作,同時也可以允許用戶通過更改實體對象屬性的方式來實現(xiàn)對對象的編輯與修改,還可以實現(xiàn)對圖層、線型等非實體對象的創(chuàng)建、設置和編輯。
三、結語
通過VB對AutoCAD進行二次開發(fā),可以對現(xiàn)有的AutoCAD軟件進行更好的升級,從而使其能夠在模擬電子技術計算機考試系統(tǒng)中能夠讓學生在日常的練習或者考試過程當中更加方便的對電路圖進行繪制與編輯,從而實現(xiàn)模擬電子技術計算機考試系統(tǒng)的基礎功能。此外,由于VB計算機語言在程序設計當中的簡便性,設計人員對VB的上手較快,其開發(fā)過程也相對簡單,此外VB還具有開發(fā)周期被大大縮短,代碼效率相對較高等特點,由于以上因素,利用VB進行AutoCAD的二次開發(fā),具有較高的效率。
參考文獻:
[1]郭道宜,李永生.基于Solid Works的波形膨脹節(jié)三維參數(shù)化繪圖軟件的開發(fā)[J]. 壓力容器,2006,08:36-39.
[2]張燕中,柴業(yè)宏,許高建.關于田徑人體動作計算機繪圖軟件開發(fā)的研究[J]. 安徽農(nóng)業(yè)大學學報,2009,01:155-159.
[3]張軍,張紅雷.基于AutoLISP語言繪圖軟件的CAD二次開發(fā)[J].煤礦機械,2003,08:49-51.
[4]李博.基于面向?qū)ο蠹夹g的二維電磁場有限元前處理系統(tǒng)研究[D].沈陽工業(yè)大學,2002.
[5]許新啟,羅映青.基于AutoCAD的礦山井巷工程繪圖軟件的開發(fā)[J].有色冶煉,2002,06:168-169.
基金項目:湖南省教育廳科學研究項目(項目編號:16C0941)
作者簡介:周博沙(1984-),男,講師,工學碩士。