基于3種開(kāi)發(fā)工具的SolidWorks二次開(kāi)發(fā)對(duì)比編程實(shí)踐_第1頁(yè)
基于3種開(kāi)發(fā)工具的SolidWorks二次開(kāi)發(fā)對(duì)比編程實(shí)踐_第2頁(yè)
基于3種開(kāi)發(fā)工具的SolidWorks二次開(kāi)發(fā)對(duì)比編程實(shí)踐_第3頁(yè)
基于3種開(kāi)發(fā)工具的SolidWorks二次開(kāi)發(fā)對(duì)比編程實(shí)踐_第4頁(yè)
基于3種開(kāi)發(fā)工具的SolidWorks二次開(kāi)發(fā)對(duì)比編程實(shí)踐_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于3種開(kāi)發(fā)工具的SolidWorks二次開(kāi)發(fā)對(duì)比編程實(shí)踐2009年08月12日

e-works

1前言隨著計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,越來(lái)越多的企業(yè)已經(jīng)加大對(duì)于企業(yè)數(shù)字化信息化的建設(shè),購(gòu)買(mǎi)了相應(yīng)的三維設(shè)計(jì)軟件及其相關(guān)產(chǎn)品,這無(wú)疑對(duì)加速企業(yè)產(chǎn)品開(kāi)發(fā)進(jìn)程,縮短產(chǎn)品制造周期,提高產(chǎn)品質(zhì)量,增強(qiáng)企業(yè)市場(chǎng)競(jìng)爭(zhēng)力與創(chuàng)新能力發(fā)揮著重要作用。然而在工程實(shí)踐中,其專業(yè)針對(duì)性不強(qiáng)。為此,人們通常通過(guò)對(duì)CAD軟件的二次開(kāi)發(fā),開(kāi)發(fā)符合國(guó)家標(biāo)準(zhǔn)、適合企業(yè)實(shí)際應(yīng)用的功能模塊,以極大地提高這一通用系統(tǒng)的附加值,更好地滿足企業(yè)設(shè)計(jì)要求,更好地發(fā)揮CAD的效能。SolidWorks軟件是一款基于Windows平臺(tái)開(kāi)發(fā)的著名的全參數(shù)化三維實(shí)體造型軟件,其設(shè)計(jì)過(guò)程全相關(guān)性,可以在設(shè)計(jì)過(guò)程的任何階段修改設(shè)計(jì),同時(shí)牽動(dòng)相關(guān)部分的改變。同時(shí)SolidWorks具有良好的開(kāi)放性和兼容性?;谶@些優(yōu)點(diǎn),本文著重對(duì)SolidWorks的二次開(kāi)發(fā)進(jìn)行分析與研究。通過(guò)對(duì)該軟件的二次開(kāi)發(fā),使其實(shí)現(xiàn)專業(yè)化、本地化,更大程度上發(fā)揮軟件的價(jià)值,為制造業(yè)信息化與快速化服務(wù)。2SolidWorks二次開(kāi)發(fā)的大體思路與一般方法SolidWorks通過(guò)COM(ComponentObjectModel,組件對(duì)象模型)技術(shù)為用戶提供了強(qiáng)大的二次開(kāi)發(fā)接口(SolidWorksAPI),凡支持COM編程的開(kāi)發(fā)工具,如VisualBasic,Delphi等均可用于SolidWorks的二次開(kāi)發(fā)。SolidWorks中常用的API對(duì)象如圖1所示。SldWorks對(duì)象為對(duì)SolidWorks工作環(huán)境進(jìn)行訪問(wèn)處理提供了接口。通過(guò)此對(duì)象可以對(duì)SolidWorks工作環(huán)境添加菜單、刪除菜單、添加工具條、打開(kāi)文件、新建文件、退出SolidWorks系統(tǒng)。SolidWorks的API對(duì)象涵蓋了全部的SolidWorks的數(shù)據(jù)模型,通過(guò)對(duì)這些對(duì)象屬性的設(shè)置和方法的調(diào)用,就可以在用戶自己開(kāi)發(fā)的DLL中實(shí)現(xiàn)與SolidWorks相同的功能。進(jìn)行二次開(kāi)發(fā)時(shí),調(diào)用SolidWorks中的API函數(shù),可以完成零件的造型和修改,零件各特征的建立、修改、刪除和壓縮等各項(xiàng)控制,零件特征信息的提取,如特征尺寸的設(shè)置與提取,特征所在面的信息提取及各種幾何和拓?fù)湫畔?,零件的裝配信息,零件工程圖紙中的各項(xiàng)信息等[1]。

圖1SolidWorksAPI對(duì)象層次圖SolidWorks開(kāi)發(fā)系統(tǒng)圖如圖2所示。其基本工作流程為:基于OLE技術(shù)的SolidWorksAPI將SolidWorks的各種功能封裝在SolidWorks對(duì)象之中供編程調(diào)用,開(kāi)發(fā)者使用二次開(kāi)發(fā)編程語(yǔ)言通過(guò)調(diào)用SolidWorks的對(duì)象體系結(jié)構(gòu),操縱對(duì)象的屬性和調(diào)用對(duì)象的方法便可以建立自主的應(yīng)用程序,實(shí)現(xiàn)二次開(kāi)發(fā)[2-3]。

Delphi7.0中圖5接口相關(guān)文件編制源代碼從上述源代碼中可以分明看出,語(yǔ)句簡(jiǎn)潔的是宏語(yǔ)言和VB語(yǔ)言,從定義變量直到獲取solidworks接口并新建一個(gè)零件文件只需要簡(jiǎn)單的幾句語(yǔ)句即可實(shí)現(xiàn),速度最高。而Delphi需要的語(yǔ)句最多,同時(shí)對(duì)于程序中的變量需要預(yù)先定義,其接口相關(guān)文件編制較為繁瑣。但特別之處的一點(diǎn)就是Delphi語(yǔ)言的自動(dòng)化程度較高,如添加一個(gè)組件的話,在“type”中會(huì)自動(dòng)添加該組件的類型和過(guò)程的聲明。3.2.2零部件建模命令的實(shí)現(xiàn)完成接口相關(guān)文件編制及環(huán)境設(shè)置之后,接下來(lái)的任務(wù)就是繪制圖形。使用三種開(kāi)發(fā)工具繪制圓臺(tái)的源代碼如圖6所示:

宏中

VB6.0中

Delphi7.0中圖6繪制圓臺(tái)的源代碼

通過(guò)對(duì)比上述源代碼,可以看出,宏語(yǔ)言和VB語(yǔ)言中繪制圓臺(tái)程序一致(僅有變量參數(shù)不同)。Delphi與上述二者的差別較大,主要是API函數(shù)內(nèi)參數(shù)形式與內(nèi)容的不同,語(yǔ)句的格式及所使用的API函數(shù)相同,參照Delphi語(yǔ)言格式要求可以很方便地對(duì)宏錄制的相關(guān)源碼進(jìn)行修改與完善,以提高Delphi語(yǔ)言編程速度與效率。4結(jié)論本文使用VBA語(yǔ)言、VB語(yǔ)言及Delphi這三種不同的開(kāi)發(fā)語(yǔ)言實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的圓臺(tái)參數(shù)化交互式繪制程序,對(duì)二次開(kāi)發(fā)過(guò)程中的相關(guān)問(wèn)題做了詳細(xì)的對(duì)比分析。通過(guò)實(shí)際編程過(guò)程,對(duì)于上述三種開(kāi)發(fā)工具的優(yōu)缺點(diǎn)有了更加明確的認(rèn)識(shí):

(1)使用VBA進(jìn)行二次開(kāi)發(fā)(即通過(guò)宏錄制及編輯實(shí)現(xiàn)二次開(kāi)發(fā)),優(yōu)點(diǎn)在于:操作簡(jiǎn)便;可使得重復(fù)的任務(wù)自動(dòng)化;定制和擴(kuò)展客戶應(yīng)用程序功能;將客戶應(yīng)用程序及數(shù)據(jù)集成到其他應(yīng)用程序中;最大的優(yōu)點(diǎn)在于可以便捷高效地實(shí)現(xiàn)工作任務(wù)。但其缺點(diǎn)在于使用VBA開(kāi)發(fā)的程序不能脫離他的宿主程序,可移植性不好,必須在“父”環(huán)境中才可以得以實(shí)現(xiàn);且錄制的代碼混亂,必須經(jīng)過(guò)修改與調(diào)試才能最終得以實(shí)現(xiàn)。(2)使用VB進(jìn)行二次開(kāi)發(fā),優(yōu)點(diǎn)在于:代碼簡(jiǎn)潔,易于編輯,可讀性很強(qiáng);簡(jiǎn)單易學(xué),學(xué)習(xí)過(guò)程中很容易上手;功能齊全,程序員可以輕松的使用VB提供的組件進(jìn)行二次開(kāi)發(fā),快速建立屬于自己的應(yīng)用程序,在其各項(xiàng)高效強(qiáng)大集成功能的支持下,最終可方便快速地完成二次開(kāi)發(fā)任務(wù),是一個(gè)最為理想的二次開(kāi)發(fā)工具。(3)使用Delphi進(jìn)行二次開(kāi)發(fā),優(yōu)點(diǎn)在于:Delphi同時(shí)兼?zhèn)淞薞C功能強(qiáng)大和VB簡(jiǎn)單易學(xué)的特點(diǎn),學(xué)習(xí)過(guò)程中很容易上手,自動(dòng)化程度很高且集成了強(qiáng)大的數(shù)據(jù)庫(kù)功能,也是用于二次開(kāi)發(fā)的一個(gè)強(qiáng)大而高效的工具。但其缺點(diǎn)在于接口相關(guān)文件編制較為繁瑣,且不能較為直接地利用宏錄制這一高效的參考工具,因此開(kāi)發(fā)效率稍遜于與宏錄制同一“語(yǔ)系”的VB語(yǔ)言。通過(guò)對(duì)CAD軟件的二次開(kāi)發(fā),開(kāi)發(fā)符合國(guó)家標(biāo)準(zhǔn)、適合企業(yè)實(shí)際應(yīng)用的功能模塊,以極大地提高這一通用系統(tǒng)的附加值,更好地滿足企業(yè)設(shè)計(jì)要求,已經(jīng)成為信息化、數(shù)字化時(shí)代的客觀需要與必然發(fā)展趨勢(shì)。希望本文的論述能夠?yàn)樾氯巳腴T(mén)及迅速掌握SolidWorks二次開(kāi)發(fā)的思想與技巧提供幫助,共同提升CAD/CAE等通用軟件的附加值,為制造業(yè)信息化、數(shù)字化與快速化服務(wù)。[參考文獻(xiàn)][1](美)SolidWorks公司.SolidWorksAPI二次開(kāi)發(fā)[M].生信實(shí)維公司編譯.北京:機(jī)械工業(yè)出版社,2005.[2]殷國(guó)富,尹湘云,胡曉兵.SolidW

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論