CAD二次開發

CAD二次開發

軟件定制用書
本書介紹了根據客戶的特殊用途進行軟件的客戶化定制和二次開發,往往能夠大大提高企業的生産效率和技術水平。CAD用于計算機及其圖形設備幫助設計人員進行設計工作。目前CAD在機械、建築、電子等各個設計行業大規模應用,随着行業發展,設計、制造等環節已經模塊化的發展,平台無法适配各個行業的模塊化需求,随着市場競争和産品研發周期的縮短,平台提供搞的塊、參數化塊和參考引用等無法滿足項目的需要,需要定制專業的行業的模塊化軟件,實現設計環節的高效設計,制造和建設等環節對設計環節數據的一鍵運用等要求。[1]
    書名: 别名: 作者: 類别: 原作品: 譯者: 出版社: 頁數: 定價: 開本: 裝幀: ISBN: 中文名:CAD二次開發 開發工具:VisualLisp、VBA、ObjectARX 開發的主要内容:編寫各種用戶自定義函數并形成若幹LISP、ARX、VLX或ADS文件,以及一些DCL文件。 應用背景:往往能夠大大提高企業的生産效率和技術水平

應用背景

設計中一般都采用浩辰CAD或AutoCAD等設計軟件,在複雜CAD問題或特殊用途的設計中,依據原有軟件的功能往往難以解決問題,在此情況下,隻是會使用軟件的基本功能是不夠的,根據客戶的特殊用途進行軟件的客戶化定制和二次開發,往往能夠大大提高企業的生産效率和技術水平。

開發工具

當前AutoCAD的二次開發工具主要有:VisualLisp、VBA、ObjectARX和.NETAPI等。其中,VisualLisp與VBA較為簡單,特别是VBA,使用方便且開發速度較快,但其功能相比ObjectARX有所不足,尤其是對面向對象的功能支持不好。而ObjectARX基于VC平台,在C++的支持下,其功能非常強大,可以很好地運用各種面向對象技術,但其缺點是發開速度比較慢,同時對開發人員的能力要求較高。

.NET是微軟新推出的開發平台,具有衆多優點。

基于.NET平台對AutoCAD進行二次開發,可充分利用.NET的各種優勢,在保證功能強大的前提下大大提高開發速度。

1AutoLISP

AutoLISP的全名是LISTProcessingLanguage,她出現于1985年推出的AutoCADR2.18中,是一種嵌入在AutoCAD内部的編程語言,是LISP原版的一個子集,她一直是低版本AutoCAD的首選編程語言。它是一種表處理語言,是被解釋執行的,任何一個語句鍵入後就能馬上執行,它對于交互式的程序開發非常方便。其缺點是繼承了LISP語言的編程規則而導緻繁多的括号。

2ADS

ADS的全名是AutoCADDevelopmentSystem,它是AutoCAD的C語言開發系統,ADS本質上是一組可以用C語言編寫AutoCAD應用程序的頭文件和目标庫,它直接利用用戶熟悉的各種流行的C語言編譯器,将應用程序編譯成可執行的文件在AutoCAD環境下運行,這種可以在AutoCAD環境中直接運行的可執行文件叫做ADS應用程序。ADS由于其速度快,又采用結構化的編程體系,因而很适合于高強度的數據處理,如二次開發的機械設計CAD、工程分析CAD、建築結構CAD、土木工程CAD、化學工程CAD、電氣工程CAD等。

3ObjectARX

ObjectARX是一種嶄新的開發AutoCAD應用程序的工具,她以C++為編程語言,采用先進的面向對象的編程原理,提供可與AutoCAD直接交互的開發環境,能使用戶方便快捷地開發出高效簡潔的AutoCAD應用程序。ObjectARX并沒有包含在AutoCAD中,可在AutoDESK公司網站中去下載,其最新版本是ObjectARXforAutoCAD2000,它能夠對AutoCAD的所有事務進行完整的、先進的、面向對象的設計與開發,并且開發的應用程序速度更快、集成度更高、穩定性更強。

ObjectARX從本質上講,是一種特定的C++編程環境,她包括一組動态鍊接庫(DLL),這些庫與AutoCAD在同一地址空間運行并能直接利用AutoCAD核心數據結構和代碼,庫中包含一組通用工具,使得二次開發者可以充分利用AutoCAD的開放結構,直接訪問AutoCAD數據庫結構、圖形系統以及CAD幾何造型核心,以便能在運行期間實時擴展AutoCAD的功能,創建能全面享受AutoCAD固有命令的新命令。

ObjectARX的核心是兩組關鍵的API,即AcDb(AutoCAD數據庫)和AcEd(AutoCAD編譯器),另外還有其它的一些重要庫組件,如AcRX(AutoCAD實時擴展)、AcGi(AutoCAD圖形接口)、AcGe(AutoCAD幾何庫)、ADSRX(AutoCAD開發系統實時擴展)。ObjectARX還可以按需要加載應用程序;使用ObjectARX進行應用開發還可以在同一水平上與Windows系統集成,并與其它Windows應用程序實現交互操作。

4VisualLISP

VisualLISP已經被完整地集成到AutoCAD2000中,她為開發者提供了嶄新的、增強的集成開發環境,一改過去在AutoCAD中内嵌AtuoLISP運行引擎的機制,這樣開發者可以直接使用AutoCAD中的對象和反應器,進行更底層的開發。其特點為自身是AutoCAD2000中默認的代碼編輯工具;用它開發AutoLISP程序的時間被大大地縮短,原始代碼能被保密,以防盜版和被更改;能幫助大家使用ActiveX對象及其事件;使用了流行的有色代碼編輯器和完善的調試工具,使大家很容易創建和分析LISP程序的運行情況。

在VisualLISP中新增了一些函數:如基于AutoLISP的ActiveX/COM自動化操作接口;用于執行基于AutoCAD内部事件的LISP程序的對象反應器;新增了能夠對操作系統文件進行操作的函數。

5VBA

VBA即Microsoftoffice中的VisualBasicforApplications,它被集成到AutoCAD2000中。VBA為開發者提供了一種新的選擇,也為用戶訪問AutoCAD2000中豐富的技術框架打開一條新的通道。VBA和AutoCAD2000中強大的ActiveX自動化對象模型的結合,代表了一種新型的定制AutoCAD的模式構架。通過VBA,我們可以操作AutoCAD,控制ActiveX和其它一些應用程序,使之相互之間發生互易活動。

《深入淺出AutoCAD.NET二次開發》教程(含光盤)中介紹了這幾種開發方式,并且介紹了常用開發方式的混合開發方法。

開發的主要内容

(1)編寫各種用戶自定義函數并形成若幹LISP、ARX、VLX或ADS文件,以及一些DCL文件。

(2)建立符合自己要求的菜單文件,一般可在AutoCAD原菜單文件内添加自己的内容,對于AutoCAD200x版本還可增加部分菜單文件,然後經交互方式加入到系統中去。

(3)在系統的ACAD.LSP或類似文件中加入某些内容以便進行各種初始化操作,如在啟動時立即裝入一些文件等。

(4)通過系統對話框設置某些路徑。這些操作在程序開發成功後向其它AutoCAD系統上安裝應用,特别是需要大批安裝時,需要進行很多文件檢索、内容增删、子目錄創建、文件拷貝、系統設置等繁瑣工作,如能令上述工作全部自動進行,使整個二次開發程序在無人幹預的情況下嵌入系統,将大大提高工作效率

(5)面向對象,讓用戶能夠根據自己的需要編寫相關程序,進行二次開發。

上一篇:派克峰

下一篇:西梅汁

相關詞條

相關搜索

其它詞條