畢業(yè)設(shè)計(jì)-基于catia二次開發(fā)下的車用彈簧建模設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩46頁(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)介

1、<p>  畢業(yè)設(shè)計(jì)說(shuō)明書(論文)</p><p>  指導(dǎo)者: </p><p>  (姓 名) (專業(yè)技術(shù)職務(wù))</p><p>  評(píng)閱者: </p><p>  (姓 名)

2、 (專業(yè)技術(shù)職務(wù))</p><p> 系:機(jī)械工程系</p><p> 專 業(yè):車輛工程專業(yè)</p><p> 題 目:基于CATIA二次開發(fā)的</p><p> 車用彈簧建模設(shè)計(jì)</p><p>  畢業(yè)設(shè)計(jì)說(shuō)明書(論文)中文摘要</p><p>  畢業(yè)設(shè)計(jì)說(shuō)明書(論文)外文摘

3、要</p><p><b>  目 次</b></p><p>  1 緒論……………………………………………………………………… 1</p><p>  1.1 CAD的二次開發(fā)…………………………………………………………………………… 1</p><p>  1.2 國(guó)內(nèi)外標(biāo)準(zhǔn)件庫(kù)現(xiàn)狀……………………………

4、…………………………………… 3</p><p>  1.3 課題的選題依據(jù)和主要研究任務(wù)……………………………………………… 5</p><p>  2 CATIA二次開發(fā)…………………………………………………………… 5</p><p>  2.1 CATIA二次開發(fā)的幾種方式…………………………………………………… 6</p><p&

5、gt;  2.2 Automation API二次開發(fā)……………………………………………………… 8</p><p>  3 軟件介紹……………………………………………………………………… 11</p><p>  3.1 CATIA介紹……………………………………………………………………… 11</p><p>  3.2 VB介紹………………………………

6、………………………………………… 14</p><p>  3.3 CBA和VBA的區(qū)別……………………………………………………………… 16</p><p>  4 車用彈簧的設(shè)計(jì)與計(jì)算………………………………………………………… 19</p><p>  4.1 幾何參數(shù)設(shè)計(jì)……………………………………………………………………19</p>

7、<p>  4.2 特性曲線………………………………………………………………………… 21</p><p>  4.3 圓柱螺旋壓縮(拉伸)彈簧受載時(shí)的應(yīng)力及變形……………………………… 23</p><p>  4.4 承受靜載荷的圓柱螺旋壓縮(拉伸)彈簧的設(shè)計(jì)………………………………… 25</p><p>  4.5 承受變載荷的圓柱螺旋壓

8、縮(拉伸)彈簧的設(shè)計(jì)………………………………… 28</p><p>  5 二次開發(fā)下的車用彈簧建模設(shè)計(jì)實(shí)例………………………………… 31</p><p>  5.1 CATIA車用彈簧建模及宏的錄制………………………………… 31</p><p>  5.2 車用彈簧參數(shù)化設(shè)計(jì)…………………………………………………… 34</p><

9、p>  結(jié)論 ………………………………………………………………………………… 39</p><p>  致謝 ………………………………………………………………………………… 40</p><p>  參考文獻(xiàn)………………………………………………………………………………41</p><p><b>  緒論</b></p>&

10、lt;p>  改革開放以來(lái),我國(guó)汽車尤其是轎車工業(yè)有了突飛猛進(jìn)的發(fā)展,汽車工業(yè)已成為我國(guó)國(guó)民經(jīng)濟(jì)的支柱產(chǎn)業(yè)之一。2006年我國(guó)汽車產(chǎn)量已超過(guò)300萬(wàn)兩,從而超過(guò)日本成為繼美國(guó)和德國(guó)之后的第三大汽車生產(chǎn)大國(guó)。但我國(guó)整個(gè)機(jī)械制造業(yè)的生產(chǎn)方式還比較落后,加入WTO以后,與國(guó)際間的競(jìng)爭(zhēng)更加激烈。所以,改造我們的制造業(yè),特別是將計(jì)算機(jī)熔入制造業(yè),這已成為大勢(shì)所趨。國(guó)內(nèi)CAD/CAE/CAM技術(shù)不斷引入與發(fā)展,計(jì)算機(jī)在機(jī)械制造業(yè)的應(yīng)用日益普及

11、和深化。</p><p>  目前,在我國(guó)汽車行業(yè)中應(yīng)用CAD進(jìn)行計(jì)算機(jī)輔助設(shè)計(jì)已經(jīng)較為普遍,所使用的CAD軟件種類也比較多,較大的提高了汽車設(shè)計(jì)及生產(chǎn)的效率。一個(gè)企業(yè)的發(fā)展速度也越來(lái)越依賴于這種設(shè)計(jì)方法的運(yùn)用程度。法國(guó)達(dá)索系統(tǒng)公司的CATIA是一款集CAD/CAE/CAM一體化的軟件,在世界CAD/CAE/CAM領(lǐng)域中處于領(lǐng)先地位,特別是在汽車設(shè)計(jì)領(lǐng)域更是占有主導(dǎo)優(yōu)勢(shì),在國(guó)內(nèi)的汽車企業(yè)中也被廣泛應(yīng)用[1]。&l

12、t;/p><p>  但隨著信息技術(shù)的發(fā)展,世界市場(chǎng)的全球化、經(jīng)濟(jì)的區(qū)域化、經(jīng)營(yíng)的跨國(guó)化已日趨明顯。主要表現(xiàn)在產(chǎn)品生命周期縮短、用戶需求多樣化、大市場(chǎng)和大競(jìng)爭(zhēng)、縮短交貨期等已成為主要的競(jìng)爭(zhēng)因素。在市場(chǎng)競(jìng)爭(zhēng)日益激烈的環(huán)境下,能否以盡量短的時(shí)間、盡量低的成本向用戶提供質(zhì)量滿意的產(chǎn)品已成為影響企業(yè)生存和發(fā)展的重要問(wèn)題。</p><p>  傳統(tǒng)基于二維的產(chǎn)品設(shè)計(jì)與制造要耗費(fèi)大量時(shí)間。不僅周期長(zhǎng),而且

13、工作量大。不能滿足現(xiàn)代制造系統(tǒng)靈活、快速的要求,同時(shí)用戶普遍感到?jīng)]有標(biāo)準(zhǔn)件庫(kù),也沒(méi)有提供建立標(biāo)準(zhǔn)件庫(kù)的方法,給設(shè)計(jì)工作帶來(lái)很多的不便,嚴(yán)重影響到設(shè)計(jì)效率。為此在汽車設(shè)計(jì)過(guò)程中建立行業(yè)或公司的專業(yè)性“零件庫(kù)”成為縮短產(chǎn)品設(shè)計(jì)開發(fā)周期、提高產(chǎn)品質(zhì)量、降低產(chǎn)品成本的重要手段。本論文正是利用CATIA的二次開發(fā)技術(shù)建立適應(yīng)于企業(yè)需求的車用標(biāo)準(zhǔn)彈簧庫(kù)。從而為三維CAD設(shè)計(jì)環(huán)境建立了良好的基礎(chǔ)。</p><p>  1.1

14、 CAD的二次開發(fā)</p><p>  1.1.1 CAD二次開發(fā)的意義</p><p>  CAD技術(shù)推動(dòng)了幾乎一切領(lǐng)域的設(shè)計(jì)和制造革命,其開發(fā)和應(yīng)用水平已成為衡量一個(gè)國(guó)家現(xiàn)代化水平的重要標(biāo)志。我國(guó)一貫重視CAD技術(shù)的引進(jìn)、推廣和應(yīng)用工作,但同時(shí)也非常重視CAD軟件的自主開發(fā)。目前,國(guó)內(nèi)實(shí)際使用的CAD系統(tǒng)可分為兩大類:一類是國(guó)內(nèi)主權(quán)版的CAD系統(tǒng),另一類是國(guó)外商品化的CAD系統(tǒng)。由于

15、國(guó)外CAD系統(tǒng)發(fā)展早、技術(shù)先進(jìn)、產(chǎn)品成熟、售后服務(wù)周到,仍占據(jù)著主要的市場(chǎng)份額。</p><p>  國(guó)際和國(guó)內(nèi)的知名的CAD/CAM軟件如Pro/Engineer、UG、I-DEAS、CATIA、SolidWorks、以及華正CAXA系統(tǒng)等,都是商品化的通用平臺(tái)。這些通用軟件需要考慮各行業(yè)、各地區(qū)用戶的需要,而并非針對(duì)某一領(lǐng)域甚至某種產(chǎn)品的專用軟件,因此用它來(lái)完成某一具體產(chǎn)品的設(shè)計(jì)時(shí)往往不是很方便。因?yàn)椴煌髽I(yè)

16、有不同的產(chǎn)品,其設(shè)計(jì)方法、產(chǎn)品結(jié)構(gòu)也不盡相同,即使是面向某一類對(duì)象的專用商品化CAD軟件,也難以滿足形形色色的具體需要,所以不可能從軟件公司買到適合所有產(chǎn)品設(shè)計(jì)需要的軟件。因此,欲利用CAD技術(shù)取得積極效果,必須以通用CAD軟件為基礎(chǔ),結(jié)合自身實(shí)際情況,進(jìn)行不同程度的用戶化、本地化開發(fā),以建立應(yīng)用繪圖系統(tǒng)和數(shù)據(jù)庫(kù),形成具有自身特色的CAD系統(tǒng),這也是CAD軟件均提供二次開發(fā)手段的原因。</p><p>  根據(jù)抽

17、樣調(diào)杳,國(guó)內(nèi)已引進(jìn)的CAD系統(tǒng)利用率高、效益好的單位大約只有20%。而據(jù)統(tǒng)計(jì),工程設(shè)計(jì)中繪圖工作只占整個(gè)設(shè)計(jì)工作量的18%,設(shè)計(jì)者的大部分精力還要花在資料檢索及設(shè)計(jì)思考上[2]。如果能在引進(jìn)的原始CAD系統(tǒng)基礎(chǔ)上,根據(jù)本企業(yè)或行業(yè)的常規(guī)性產(chǎn)品或工程設(shè)計(jì)的實(shí)際需要,將設(shè)計(jì)手冊(cè)、制造手冊(cè)中的各種數(shù)據(jù)、典型的結(jié)構(gòu)、計(jì)算方法與公式及產(chǎn)品標(biāo)準(zhǔn)、技術(shù)要求、外構(gòu)件、原材料的樣本、手冊(cè),本企業(yè)或行業(yè)產(chǎn)品的典型結(jié)構(gòu)、經(jīng)驗(yàn)數(shù)據(jù)、工裝情況等方而的資料、數(shù)據(jù)、

18、圖形等與現(xiàn)有CAD系統(tǒng)有機(jī)地融合起來(lái),使設(shè)計(jì)人員從繁重的重復(fù)勞動(dòng)中解放出來(lái),做到數(shù)據(jù)共享;甚至更一步,將本企業(yè)或行業(yè)多年來(lái)的設(shè)計(jì)經(jīng)驗(yàn)總結(jié)出來(lái),形成有特色的設(shè)計(jì)規(guī)范、設(shè)計(jì)方法、典型結(jié)構(gòu)、標(biāo)準(zhǔn)、通用零部件、功能模塊,并相應(yīng)地在CAD系統(tǒng)內(nèi)建立起數(shù)據(jù)庫(kù)、圖形庫(kù)、方法庫(kù)、知識(shí)庫(kù)及其應(yīng)用程序,從而真正發(fā)揮CAD系統(tǒng)的效用和優(yōu)越性。</p><p>  1.1.2 國(guó)內(nèi)外研究現(xiàn)狀</p><p> 

19、 目前,國(guó)內(nèi)CAD技術(shù)的應(yīng)用已逐步進(jìn)入高級(jí)階段,許多用戶都針對(duì)本行業(yè)的特點(diǎn)對(duì)CAD進(jìn)行二次開發(fā),CAD二次開發(fā)技術(shù)幾乎在各個(gè)行業(yè)中都有一應(yīng)用實(shí)例,并已有一些商品化軟件問(wèn)世。但各行業(yè)CAD二次開發(fā)技術(shù)的發(fā)展水平存在較大差距,機(jī)械、電子、建筑、航空航天等最早應(yīng)用二次開發(fā)技術(shù),其二次開發(fā)程度也最高。開發(fā)出的CAD系統(tǒng)能夠集計(jì)算、參數(shù)化繪圖、數(shù)據(jù)管理為一體,并直接與計(jì)算機(jī)輔助制造(CAM)和計(jì)算機(jī)輔助工藝設(shè)計(jì)(CAPP)有機(jī)結(jié)合。目前國(guó)內(nèi)已開發(fā)

20、成功一批符合工程需要的應(yīng)用軟件,逐漸形成了一批具有一較高素質(zhì)的研究開發(fā)隊(duì)伍。</p><p>  另外各高校和相關(guān)研究機(jī)構(gòu)也在CAD二次開發(fā)方面作了很多成功的工作,如:在北京航空航天大學(xué)教授成傳賢、李天的指導(dǎo)下,其碩士研究生進(jìn)行了UG系統(tǒng)二次開發(fā)的研究,以實(shí)現(xiàn)飛機(jī)復(fù)雜型面在UG中的提??;華南理工大學(xué)賴朝安博士、北京航空航天大學(xué)張景賽博士都曾進(jìn)行過(guò)Pro/E二次開發(fā)關(guān)鍵技術(shù)研究,運(yùn)用Pro/E提供的二次開發(fā)工具Pr

21、o/TOOLKIT實(shí)現(xiàn)由程序動(dòng)態(tài)地、自動(dòng)地進(jìn)行特征建模的功能,所建模型能由程序自動(dòng)加入較為豐富的非幾何特征,并存入模型統(tǒng)一的數(shù)據(jù)庫(kù)、特征庫(kù)中,該用戶定義特征的方法適用于所有的模型的程序自動(dòng)建模,對(duì)其它所有的產(chǎn)品模型有很大的借鑒意義,其研究并開發(fā)的Pro/E與MFC的接口,突破了Pro/TOOLKIT的局限,克服了在Pro/E上進(jìn)行二次開發(fā)的技術(shù)難題;遼寧工學(xué)院的李衛(wèi)民、劉淑芬以及淮安市廣播電視大學(xué)的張莉分別探討了“基于SolidWork

22、s平臺(tái)的二次開發(fā)技術(shù)”等[2]。</p><p>  其他行業(yè)的CAD二次開發(fā)技術(shù)則相對(duì)落后,有的僅僅是一小部分工程技術(shù)人員的個(gè)人行為,還沒(méi)有形成專門從事CAD二次開發(fā)的研究隊(duì)伍。雖然也出現(xiàn)了一些CAD應(yīng)用軟件,但大多數(shù)僅僅針對(duì)某一類型的產(chǎn)品或產(chǎn)品的一部份而開發(fā)的小型應(yīng)用系統(tǒng),解決的問(wèn)題也比較有一限。</p><p>  國(guó)外成功的CAD技術(shù)開發(fā)企業(yè)為了加快CAD技術(shù)開發(fā)步伐,都選擇了高起

23、點(diǎn)的CAD技術(shù)開發(fā)戰(zhàn)略,即利用已有的技術(shù)成果,在此基礎(chǔ)上二次開發(fā)自己的CAD技術(shù),而不是將人力物力浪費(fèi)在低水平的重復(fù)開發(fā)上,這樣既可以提高效率,又能保證自己的產(chǎn)品具有一較高的技術(shù)含量和水平。</p><p>  1.2 國(guó)內(nèi)外標(biāo)準(zhǔn)件庫(kù)現(xiàn)狀</p><p>  對(duì)機(jī)械產(chǎn)品的零部件分析表明,標(biāo)準(zhǔn)零部件的數(shù)量約占到60%左右,30%左右的零部件是通過(guò)變型設(shè)計(jì)得到的通用件,而根據(jù)客戶特殊需求開發(fā)

24、的零部件只有10%左右。標(biāo)準(zhǔn)零部件不僅數(shù)量多,且在設(shè)計(jì)過(guò)程中需要頻繁查閱各種設(shè)計(jì)手冊(cè)。據(jù)統(tǒng)計(jì),標(biāo)準(zhǔn)零部件的選用及繪制約占全部設(shè)計(jì)時(shí)間的70%[3]。所以,在產(chǎn)品設(shè)計(jì)中,標(biāo)準(zhǔn)零部件的設(shè)計(jì)是一項(xiàng)費(fèi)時(shí)費(fèi)力且?guī)в泻艽笾貜?fù)性的工作,這顯然與日趨激烈的市場(chǎng)競(jìng)爭(zhēng)環(huán)境不相適應(yīng)。因此,很有必要開發(fā)各種通用和專用的標(biāo)準(zhǔn)件庫(kù)來(lái)取代這一繁瑣、復(fù)雜的勞動(dòng)。</p><p>  正是由于標(biāo)準(zhǔn)件庫(kù)的創(chuàng)建具有巨大商機(jī)和經(jīng)濟(jì)效益,因此針對(duì)不同的C

25、AD平臺(tái)開發(fā)出適合用戶和企業(yè)要求的標(biāo)準(zhǔn)件庫(kù),十分有必要。目前,己經(jīng)有許多企業(yè)和科研機(jī)構(gòu)正在做這方面的工作。下面是關(guān)于國(guó)內(nèi)外的標(biāo)準(zhǔn)件庫(kù)的開發(fā)現(xiàn)狀。</p><p>  國(guó)產(chǎn)CAD軟件金銀花MDA2000V2集成的標(biāo)準(zhǔn)件庫(kù)主要分為標(biāo)準(zhǔn)件、非標(biāo)準(zhǔn)件、通用件、自定義件四大類,其中標(biāo)準(zhǔn)件又分為國(guó)家標(biāo)準(zhǔn)件和國(guó)家軍用標(biāo)準(zhǔn)件[4]。在國(guó)家標(biāo)準(zhǔn)件中收錄了大量的標(biāo)準(zhǔn)件,分為螺栓、螺釘、螺母墊片、鉚釘、軸承、檔圈等幾類。自定義零件庫(kù)可

26、以將用戶自己設(shè)計(jì)的一些常用零件收編成庫(kù),如廠標(biāo)零件、系列件等,以補(bǔ)充標(biāo)準(zhǔn)件的不足,便于重復(fù)使用。</p><p>  CSPLIB機(jī)械CAD標(biāo)準(zhǔn)件庫(kù)是一個(gè)運(yùn)行于AutoCAD之上的機(jī)械標(biāo)準(zhǔn)件庫(kù),是一套全新的CAD產(chǎn)品目錄零件管理信息系統(tǒng),其數(shù)據(jù)描述符合GB10091-事物特性表和GB/T15049. 1-CAD標(biāo)準(zhǔn)件圖形文件編制總則。CAD標(biāo)準(zhǔn)件圖形文件編制總則規(guī)定以ASCII形式作為描述零件特性的文件格式。CS

27、PLIB完全遵循上述標(biāo)準(zhǔn)而設(shè)計(jì),可顯示標(biāo)準(zhǔn)件幾何視圖變形,進(jìn)行快速檢索,并將圖形插入到CAD系統(tǒng)[4]。</p><p>  白玉蘭CAD系統(tǒng)(BYLcadS. 1,含二、三維標(biāo)準(zhǔn)件庫(kù)及建庫(kù)工具)。二、三維標(biāo)準(zhǔn)件庫(kù)及建庫(kù)工具是一個(gè)基于ISO-13584國(guó)際標(biāo)準(zhǔn)、可與多種CAD系統(tǒng)共享、集成的標(biāo)準(zhǔn)零部件的通用建庫(kù)工具和庫(kù)管理系統(tǒng)[4]。</p><p>  由陜西金葉西工大軟件股份有限公司開

28、發(fā)的二維/三維標(biāo)準(zhǔn)件庫(kù)及其建庫(kù)工具是一套功能強(qiáng)大的、基于網(wǎng)絡(luò)版的二、三維標(biāo)準(zhǔn)件CAD軟件[4]。它覆蓋了國(guó)標(biāo)、航標(biāo)等標(biāo)準(zhǔn),基于網(wǎng)絡(luò)運(yùn)行保證了二維數(shù)據(jù)統(tǒng)一性,完整性,具有方便的擴(kuò)充功能,它具有以下特點(diǎn):高度的靈活性、方便性;全中文,基于世界上先進(jìn)的CAD產(chǎn)品MDT。具有擴(kuò)充功能:提供了自定義標(biāo)準(zhǔn)件功能;可以添加國(guó)標(biāo)和航標(biāo)中沒(méi)有的標(biāo)準(zhǔn)件。</p><p>  Autodesk公司的MDT帶有總共120萬(wàn)個(gè)各種標(biāo)準(zhǔn)工具

29、庫(kù),是世界上目前為止最全的機(jī)械工具標(biāo)準(zhǔn)集。因?yàn)橛械挠脩粢呀?jīng)長(zhǎng)期使用UG, CATIA等高端軟件,除了自行二次開發(fā)適合的機(jī)械工具庫(kù)外,也可以通過(guò)STEP技術(shù)作為接口,將MDT6. 0的工具集從它的環(huán)境中生成*. STP格式文件,從而被UG, CATIA等軟件接受,生成完整的線框模型,因而可以作為投影視圖的幾何圖形而被使用[4]。</p><p>  UG、 Pro/E、Ideas、CATIA是國(guó)外著名的高端CAD軟

30、件系統(tǒng),功能十分強(qiáng)大,也都帶有自己的標(biāo)準(zhǔn)件庫(kù)系統(tǒng),但都沒(méi)有很好地實(shí)現(xiàn)標(biāo)準(zhǔn)件庫(kù)的動(dòng)態(tài)擴(kuò)充,尚存在這樣或那樣的問(wèn)題,有關(guān)CAD軟件標(biāo)準(zhǔn)件庫(kù)系統(tǒng)詳見表1-1[5]。針對(duì)不同行業(yè)要求而建立的不同種類的標(biāo)準(zhǔn)件庫(kù),確實(shí)給企業(yè)帶來(lái)了高效率,縮短了設(shè)計(jì)、生產(chǎn)和制造的周期;但是,絕大多數(shù)的標(biāo)準(zhǔn)件庫(kù)不可能覆蓋用戶和企業(yè)所需要的所有標(biāo)準(zhǔn)件,因此在特定的情況下,用戶和企業(yè)不僅能夠自己來(lái)實(shí)現(xiàn)標(biāo)準(zhǔn)件的動(dòng)態(tài)添加和調(diào)用,而且能夠保證離線編輯,才能體現(xiàn)出標(biāo)準(zhǔn)件庫(kù)的靈活性

31、和可擴(kuò)充性。</p><p>  表 1-1 CAD軟件標(biāo)準(zhǔn)件庫(kù)</p><p>  1.3 課題的選題依據(jù)和主要的研究任務(wù)</p><p>  1.3.1 選題依據(jù)</p><p>  由上文可知計(jì)算機(jī)輔助設(shè)計(jì)和制造在制造業(yè),特別是汽車制造業(yè)的重要作用,而在使用CAD軟件繪圖設(shè)計(jì)的過(guò)程中如何減少重復(fù)勞動(dòng)又是提高設(shè)計(jì)和制造效率的重要問(wèn)題。

32、在CATIA軟件環(huán)境使用高級(jí)編程語(yǔ)言對(duì)汽車零部件建模的下進(jìn)行二次開發(fā)或使用知識(shí)工程相關(guān)方法進(jìn)行開發(fā)設(shè)計(jì)。使企業(yè)通過(guò)重用產(chǎn)品設(shè)計(jì)知識(shí),將設(shè)計(jì)經(jīng)驗(yàn)融入到軟件中,能夠縮短開發(fā)周期,從而提高其市場(chǎng)競(jìng)爭(zhēng)力有著非常重要的現(xiàn)實(shí)意義。因此選擇基于CATIA二次開發(fā)的車用彈簧建模設(shè)計(jì)作為本文的研究選題。</p><p>  1.3.2 研究任務(wù)</p><p>  1、掌握車用彈簧設(shè)計(jì)計(jì)算及工作原理;&l

33、t;/p><p>  2、掌握機(jī)械彈簧二維及三維參數(shù)化建模的方法;</p><p>  3、熟練使用VB語(yǔ)言對(duì)CATIA軟件對(duì)零件實(shí)體設(shè)計(jì)的語(yǔ)言描述;</p><p>  4、使用CATIA編程實(shí)現(xiàn)彈簧的實(shí)體建模和零件庫(kù)的程序編寫;</p><p>  5、使用CATIA編程實(shí)現(xiàn)零件三維轉(zhuǎn)換工程圖控件的程序編寫。</p><p

34、>  2 CATIA二次開發(fā)</p><p>  CATIA是一個(gè)通用的計(jì)算機(jī)輔助設(shè)計(jì)軟件系統(tǒng),在某個(gè)專業(yè)的特定應(yīng)用時(shí),可能顯得繁瑣。如果能在CATIA軟件通用系統(tǒng)基礎(chǔ)上,針對(duì)行業(yè)標(biāo)準(zhǔn)規(guī)范和具體應(yīng)用需求,進(jìn)行二次開發(fā),并融合公司的經(jīng)驗(yàn)、標(biāo)準(zhǔn)將會(huì)顯著提高CATIA軟件的使用效率和工程設(shè)計(jì)人員的CATIA系統(tǒng)應(yīng)用水平, 實(shí)現(xiàn)產(chǎn)品數(shù)字化設(shè)計(jì)的一致性和規(guī)范性。最初CATIA V5提供Macro工具來(lái)做二次開發(fā)。R

35、7及以前版本只支持用腳本語(yǔ)言(CATIA Script和Ⅶ Script)作為其開發(fā)語(yǔ)言,這些語(yǔ)言的最大缺陷是難以定制豐富的交互界面。從R8開始,CATIA V5融合了VBA 編輯器。正式提供對(duì)VBA的支持,使得二次開發(fā)變得有意義。之后推出的CAA(Component Application Architecture,組件應(yīng)用架構(gòu))是Dassault Systemes產(chǎn)品擴(kuò)展和客戶進(jìn)行二次開發(fā)的又一強(qiáng)有力的工具。其實(shí)二次開發(fā)的底層運(yùn)行實(shí)

36、質(zhì)是調(diào)用CATIA V5 API。隨著CATIA軟件應(yīng)用領(lǐng)域的日益普及和深入,用戶對(duì)軟件功能和性能的要求不斷提高,以及增加了對(duì)軟件個(gè)性化服務(wù)要求。CATIA V5開放了大部分接口,公開的類有474個(gè),幾</p><p>  2.1 CATIA二次開發(fā)的幾種方式</p><p>  作為一種大型工程應(yīng)用軟件,CATIA V5 先后具備了以下5個(gè)開放性能[1],從而使其用戶能夠方便地對(duì)CAT

37、IA進(jìn)行定制開發(fā):</p><p>  (1)標(biāo)準(zhǔn)格式的輸入輸出:</p><p>  用于跨CAD 平臺(tái)、跨PDM、標(biāo)準(zhǔn)格式的輸入輸出,以便進(jìn)行數(shù)據(jù)格式的轉(zhuǎn)化。</p><p>  (2) Automation API 使用自動(dòng)化應(yīng)用接口的宏:</p><p>  用于自動(dòng)化(Automation)組件,日志(Journaling),Vis

38、ual Basic和JavaScript/Html的開發(fā),這是一種交互方式的定制。該定制方式允許用戶獲取CATIA的數(shù)據(jù)模型。通過(guò)提供交互的方式,讓用戶記錄操作過(guò)程,通過(guò)VB Script or Java Script 來(lái)錄制宏,從而自動(dòng)生成代碼。Automation API具備了與任何OLE所兼容的平臺(tái)進(jìn)行通訊的能力。</p><p>  (3) KnowledgeWare 智能構(gòu)件:</p>&

39、lt;p>  一種反應(yīng)式的,基于規(guī)則的,面向目標(biāo)的客戶化方式。它是一種高效的規(guī)范重用,像應(yīng)用公式一樣簡(jiǎn)單的,實(shí)現(xiàn)團(tuán)體的知識(shí)庫(kù)準(zhǔn)則集,并且和V5緊密集成以提升處理能力。它能通過(guò)相關(guān)的穩(wěn)定不變的規(guī)范定義來(lái)實(shí)現(xiàn)交互的知識(shí)捕捉。智能構(gòu)件是一套預(yù)定義的易用服務(wù),它驅(qū)動(dòng)的管理和重用是從函數(shù)、規(guī)范到組件和系統(tǒng)來(lái)一步一步實(shí)現(xiàn)的。它允許定制和外部代碼的集成。它用于三個(gè)方面:知識(shí)顧問(wèn)、知識(shí)專家和產(chǎn)品工程優(yōu)化。知識(shí)顧問(wèn)是用于參與設(shè)計(jì)定義的嵌入知識(shí),包含

40、規(guī)則集、檢查、審查和預(yù)定義行為(Behavior)。知識(shí)專家則是基于規(guī)則的過(guò)程,可以實(shí)現(xiàn)規(guī)則集、檢查和報(bào)告。產(chǎn)品工程優(yōu)化是面向設(shè)計(jì)目標(biāo)的,它包含優(yōu)化目標(biāo)、準(zhǔn)則和求解方案。</p><p>  (4) Interactive User Defined Feature 交互式的用戶定義特征:</p><p>  一種編制式的定制開發(fā)。通過(guò)聚合現(xiàn)存的特征來(lái)交互的定義新的數(shù)據(jù)類型。收集現(xiàn)存規(guī)范,指

41、定輸入,從而創(chuàng)建一個(gè)“IUDF”(用戶定義特征)?!癐UDF”可以通過(guò)引用一個(gè)目錄文件(Catalog)保存在.CATPart文檔中。它可以交互的被客戶使用。</p><p>  (5)CAA V5 的C++ 和Java 應(yīng)用接口:</p><p>  這是基于組件的定制開發(fā)。CAA 是組件應(yīng)用架構(gòu)(Component Application Architecture)的縮寫,是 Dass

42、ault Systemes產(chǎn)品擴(kuò)展和客戶進(jìn)行定制開發(fā)的平臺(tái),它使全球諸多開發(fā)商可參與Dassault Systemes 的研發(fā)。利用CAA 可以進(jìn)行從簡(jiǎn)單到復(fù)雜的二次開發(fā)工作,而且和原系統(tǒng)的結(jié)合非常緊密,如果沒(méi)有特別的說(shuō)明,無(wú)法把客戶所研發(fā)的功能從原系統(tǒng)中區(qū)分出來(lái),這非常有利于用戶的使用和集成。作為CATIA最強(qiáng)大的二次開發(fā)工具,在國(guó)外,無(wú)論是在法國(guó)還是日本等國(guó),對(duì)CAA 的研究和應(yīng)用相對(duì)比較早,也比較深入。而在國(guó)內(nèi),南京航空航天大學(xué)在

43、2004 年初才成為CAA 的第一個(gè)正式用戶。但國(guó)內(nèi)的北京航空航天大學(xué)、西北工業(yè)大學(xué)、第一飛機(jī)設(shè)計(jì)院等許多大學(xué)和研究所,都在關(guān)注CAA的應(yīng)用研究。</p><p>  對(duì)于需要捕捉用戶的一系列交互操作的應(yīng)用,可以采用CATIA V5 的自動(dòng)化應(yīng)用接口和CAA V5 的C++、Java 應(yīng)用接口。自動(dòng)化應(yīng)用接口可以調(diào)用“InputBox”和“MsgBox”函數(shù)獲取用戶輸入信息和進(jìn)行輸出,而對(duì)于NT 用戶還可以應(yīng)用V

44、isual Basic來(lái)定義更為復(fù)雜成熟的輸入輸出面板,還可以給宏關(guān)聯(lián)一個(gè)圖標(biāo),并置入CATIA 顯示框架。CAA V5 可以做精致的交互命令,這些命令可以分組歸入工作臺(tái)(workbench)并展示精美的面板,且能夠?qū)崿F(xiàn)Undo/Redo。智能構(gòu)件和CAA V5可以用來(lái)實(shí)現(xiàn)企業(yè)標(biāo)準(zhǔn)的約束檢查。</p><p>  用戶定義特征和CAA V5 都可以事后定義新的特征,而產(chǎn)生和其它DS特征平等的特征。要擴(kuò)展已經(jīng)存在對(duì)

45、象的行為,則要CAA V5 才能實(shí)現(xiàn)。和外部系統(tǒng)通訊可以通過(guò)格式輸入輸出實(shí)現(xiàn)。而CATIA 也是自動(dòng)化的服務(wù)器,在NT 下,可以通過(guò)自動(dòng)化接口進(jìn)行與外部通訊。CAA V5 提供一個(gè)稱為Backbone 的通訊總線結(jié)構(gòu),該總線通過(guò)封裝底層的通訊技術(shù)實(shí)現(xiàn)高層異步通訊。</p><p>  對(duì)于用戶定義特征和智能構(gòu)件,只需要用戶具備CATIA V5的知識(shí)就可以進(jìn)行開發(fā);而對(duì)于自動(dòng)化應(yīng)用接口和CAA V5,還需要用戶分別

46、具備VB的開發(fā)能力、C++(或Java)的開發(fā)能力,同時(shí)還需具備COM 的基本知識(shí)。</p><p>  CATIA的幾種二次開發(fā)方式中主要用到的是后四種,它們對(duì)開發(fā)人員的要求層次大致如圖1-1[6]所示:</p><p>  圖1-1 CATIA不同二次開發(fā)方法</p><p>  2.2 Automation API二次開發(fā)</p><p&

47、gt;  可以用于自動(dòng)化(Automation)組件,使用VBScript作為編輯工具,這是一種交互方式的定制。可以記錄用戶的操作過(guò)程,自動(dòng)生成代碼。CATIA提供了Automation API用于VBScript對(duì)CATIA的二次開發(fā),Automation API具備了與任何OLE所兼容的平臺(tái)進(jìn)行通訊能力。自動(dòng)化應(yīng)用接口可以調(diào)用“InputBox”和“MsgBox”函數(shù)獲取用戶輸入信息和進(jìn)行輸出,而對(duì)于NT用戶則可以應(yīng)用Visual

48、Basic來(lái)定義更為復(fù)雜的輸入輸出面板。運(yùn)行的時(shí)候可以給宏關(guān)聯(lián)一個(gè)圖標(biāo),并置入CATIA顯示框架。這種方式的開發(fā)流程如圖1-1[5]中所示。</p><p>  圖 1-1 CATIA API方式開發(fā)流程</p><p>  Application主要對(duì)象:</p><p>  要對(duì)CATIA進(jìn)行操作,首先是要連接它的com接口,一般是要用到GetObject,當(dāng)然

49、這種方法必須是在CATIA已經(jīng)運(yùn)行的前提下,如果CATIA沒(méi)有運(yùn)行,那么就要用到CreatObject啟動(dòng)CATIA。為了避免發(fā)生問(wèn)題通常將2種方法合用,即:</p><p>  Dim CATIA 'As Object</p><p>  On Error Resume Next</p><p>  Set CATIA = GetObject(,"

50、;CATIA.Application")</p><p>  If Err.Number <> 0 Then</p><p>  Set CATIA = CreateObject("CATIA.Application")</p><p>  CATIA.Visible = True</p><p>&

51、lt;b>  End If</b></p><p>  On Error GoTo 0</p><p>  Documents和Document對(duì)象:</p><p>  在CATIA中,文檔有很多的類型,包括零件(Part),產(chǎn)品(Product),工程圖(Drawing)等,這些不同的文檔格式基于Microsoft的多文檔標(biāo)準(zhǔn)。它去除了傳統(tǒng)的V

52、4會(huì)話,模型和EXP文件格式。一般可以通過(guò)Add的方法新增一個(gè)文檔,程序如下所示:</p><p>  Dim oPartDoc As Document</p><p>  Set opartDoc=CATIA.Document.Add(“Part”)</p><p>  其中Add的參數(shù)可以是Part ,Product,Drawing三種,分別對(duì)應(yīng)的是零件文檔,產(chǎn)

53、品文檔和工程圖文檔。</p><p>  當(dāng)然對(duì)于已經(jīng)存在的文檔可以用open的方法打開,代碼程序如下:</p><p>  Dim OpartDoc As Document</p><p>  Set OpartDoc =CATIA.Documents.Open(FileName)</p><p>  而對(duì)于FileName參數(shù)必須加上完整

54、的路徑。</p><p>  采用ActiveDocument屬性來(lái)獲取當(dāng)前活動(dòng)的文檔,這時(shí)要加上一定的錯(cuò)誤控制,因?yàn)镃ATIA不一定有當(dāng)前打開的文件。下面是典型的代碼程序:</p><p>  On Error Rusume Next</p><p>  Set OpartDoc=CATIA。ActiveDocument</p><p> 

55、 If OpartDoc Is Nothing Then</p><p><b>  Err.clear</b></p><p>  Set OpartDoc=CATIA.Documents.Add(“Part”)</p><p><b>  End If </b></p><p>  On Err

56、 Go To 0</p><p>  在獲取Document對(duì)象后,就可以對(duì)它進(jìn)行各種各樣的操作,比如保存,另存為,關(guān)閉。在保存文檔時(shí),另存為不能把文檔保存為另一種格式。例如把當(dāng)前的文檔以IGESDoc為名稱,在當(dāng)前的目錄輸出為IGES格式:程序代碼 OpartDoc。ExportData(“IGESDoc”,“igs”)</p><p>  Cameras和Camera對(duì)象</p&

57、gt;<p>  主要是針對(duì)零件文檔和產(chǎn)品文檔來(lái)說(shuō)的,對(duì)與工程圖沒(méi)有這個(gè)概念。Cameras和Camera對(duì)象的關(guān)系就像Documents和Document對(duì)象關(guān)系一樣,Cameras對(duì)象可以包含Camera2D和Camera3D兩種對(duì)象。可以用Count屬性得知當(dāng)前文檔中視點(diǎn)個(gè)數(shù),這其中也包含自定意義視點(diǎn)。程序代碼:</p><p>  Dim myCam3d As Camera3D</p&

58、gt;<p>  MsgBox OpartDoc.Cameras.Count</p><p>  For i=1toOpartDoc.cameras.count</p><p>  Set myCam3d=OpartDoc.Camera.Item(i)</p><p>  MsgBox mycam3d.Name</p><p>

59、<b>  Next</b></p><p>  Windows和Window對(duì)象</p><p>  一個(gè)零件在CATIA中可以用很多個(gè)窗口打開,每個(gè)窗口的視角可以是不同的。Windows對(duì)象即指所有打開的窗口的集合,而對(duì)Window對(duì)象則指的是某一特定的窗口,這兩者之間的關(guān)系就如Documents和Document對(duì)象的關(guān)系一樣。代碼程序如下:</p>

60、<p>  Dim myWindow As Window</p><p>  Msgbox CATIA.Windows.count</p><p>  For Each myWindows In CATIA.Windows</p><p>  myWindow.Activate</p><p>  Msgbox myWindow

61、.Name</p><p><b>  Next</b></p><p>  這個(gè)代碼顯示當(dāng)前打開窗口個(gè)數(shù),然后逐個(gè)激活顯示名稱</p><p>  Viewers和Viewer對(duì)象</p><p>  Viewer對(duì)象一般只有一個(gè),它是Windows對(duì)象的一個(gè)屬性。用Window。Active Viewer可以獲取,V

62、iewer對(duì)象中有很多有用的方法如下列程序代碼:</p><p>  Dim myViewer As Viewer3D</p><p>  Set my Viewer=CATIA.ActiveWindows.ActiveViewer</p><p>  myViewer.zoomIn </p><p>  myViewer.zoomOut

63、 </p><p>  myViewer.zoomReframe </p><p>  myViewer.Update </p><p>  它代表的意思是視圖的縮小,放大,視圖重組,視圖更新。</p><p>  CATIA API包含的函數(shù)數(shù)量眾多。在利用CATIA二次開發(fā)做汽車標(biāo)準(zhǔn)件庫(kù)的創(chuàng)建時(shí)主要涉及以下幾類中的函數(shù):</p&

64、gt;<p>  1)Application類:該類對(duì)應(yīng)運(yùn)行著的CATIA程序,是開發(fā)語(yǔ)言調(diào)用其他API的入口(用關(guān)鍵字CATIA來(lái)獲得運(yùn)行程序?qū)嵗?,要對(duì)CATIA進(jìn)行操作,首先就要通過(guò)它的GetObject和CreateObject方法連接到它的COM接口上。特別是封裝的ActiveDocument()方法,該方法是獲得當(dāng)前活動(dòng)文檔的快捷、簡(jiǎn)易方法。</p><p>  2)Document類:

65、該類對(duì)應(yīng)CATIA程序一個(gè)文檔。文檔有很多種類型,包括零件(Part)、產(chǎn)品(Product)、工程圖(Drawing)等,而Documents對(duì)象是這種對(duì)象的一個(gè)集合。各種不同的文檔類型又包含不同的屬性和操作方法。</p><p>  3)HybridShapeFactory:該類封裝了在線框和曲面模塊(wireframe and surface design)中創(chuàng)建所有HybridShape (線框)對(duì)象的方

66、法,如:Point、Line、Surface、Corner(倒角)、Intersection (相交)、Circle、HybridSplit(割)、CurvePar(曲線的平行線)等。</p><p>  4)ShapeFactory:該類封裝了在零件設(shè)計(jì)模塊(part design)中所有創(chuàng)建shapes(實(shí)體)對(duì)象的方法,如:AddNewPad()(拉伸)、AddNewPocket、AddNewHole、Ad

67、dNewGroove、AddNewSlot等。</p><p><b>  3 軟件介紹</b></p><p>  3.1 CATIA介紹</p><p>  CATIA(Computer Aided Three & Two Dimensional Interaction Application System,計(jì)算機(jī)輔助三維/二維

68、交互式應(yīng)用系統(tǒng))是法國(guó)達(dá)索飛機(jī)公司開發(fā)的高檔CAD/CAM軟件。目前在中國(guó)由IBM公司代理銷售。CATIA軟件以其強(qiáng)大的曲面設(shè)計(jì)功能在飛機(jī)、汽車、輪船、機(jī)械制造、電子、電器、消費(fèi)品行業(yè)被廣泛應(yīng)用它的集成解決方案覆蓋所有的產(chǎn)品設(shè)計(jì)與制造領(lǐng)域,滿足了工業(yè)領(lǐng)域各類大、中、小型企業(yè)的需要。世界前20名的汽車企業(yè)有18家采用CATIA作為其核心設(shè)計(jì)軟件。世界上已有超過(guò)13 000個(gè)用戶選擇了CATIA,其中包括波音、克勞斯勒、寶馬、奔馳、本田、豐

69、田等著名企業(yè)。波音公司用CATIA完成整個(gè)波音777的零件設(shè)計(jì)和電子裝配,創(chuàng)造了業(yè)界的一個(gè)奇跡,從而業(yè)確定了CATIA在CAD/CAE/CAM行業(yè)的領(lǐng)先地位[1]。 </p><p>  CATIA軟件運(yùn)行在工作站的版本系列為4版本,由于其許多造型工具能利用不同的方法實(shí)現(xiàn)類似的造型效果,使用戶必須在嚴(yán)格掌握各種工具的細(xì)微差別的基礎(chǔ)上才能正確的選擇。所以對(duì)于工作站版本,往往需要專業(yè)的培訓(xùn)才能掌握。達(dá)索公司也通過(guò)推出

70、一些更專業(yè)的軟件包方便用戶使用。</p><p>  如今達(dá)索公司又推出了CATIA V5版本,該版本能夠運(yùn)行于多種平臺(tái),特別是微機(jī)平臺(tái)。這不僅使用戶能夠節(jié)省大量的硬件成本,而且其友好的用戶界面,使用戶更容易使用。從CATIA軟件的發(fā)展,我們可以發(fā)現(xiàn)現(xiàn)在的CAD/CAM軟件更多的向智能化、支持?jǐn)?shù)字化制造企業(yè)和產(chǎn)品的整個(gè)生命周期的方向發(fā)展。</p><p>  CATIA V5系統(tǒng)特點(diǎn)參數(shù)變

71、量化建模器,CATIA V5是3D參數(shù)變量化建模軟件,它允許用戶添加參數(shù)或尺寸以驅(qū)動(dòng)模型的創(chuàng)建和加工,以此來(lái)捕捉設(shè)計(jì)意圖。通過(guò)捕捉和維護(hù)用于定義模型的元素,參數(shù)和尺寸之間的關(guān)系的設(shè)計(jì)意圖,參數(shù)化可增零件的智能化水平。這有利于新設(shè)置更新模型,但仍然保持設(shè)計(jì)的初始意圖不變。</p><p>  在CATIA V5的強(qiáng)大功能支持下,用戶可以對(duì)幾何體進(jìn)行參數(shù)化,包括實(shí)體,曲面,線框和結(jié)構(gòu)特征。整體設(shè)計(jì)或部分設(shè)計(jì)都進(jìn)行參數(shù)

72、化,這在快速設(shè)計(jì)開發(fā)中具有更大的靈活性。在產(chǎn)品的設(shè)計(jì)過(guò)程中,用戶隨時(shí)可以添加或者刪除尺寸。為模型標(biāo)注尺寸和施加約束時(shí),用戶的選擇是開發(fā)健壯模型的關(guān)鍵。</p><p>  一旦對(duì)模型進(jìn)行了參數(shù)化,用戶就可以輸入新的參數(shù)值并更新模型,以此來(lái)已有設(shè)計(jì)的幾何形狀。模型更新就會(huì)將幾何體驅(qū)動(dòng)到新的位置。另外,基于參數(shù)的建模方式允許由實(shí)體建模實(shí)體,諸如孔,圓角,凸飾,型腔等,與指定的邊或面關(guān)聯(lián)。當(dāng)這些邊或面因?yàn)槟炒胃露苿?dòng)

73、時(shí),這些部件會(huì)跟隨移動(dòng),從而維持初始的關(guān)系。</p><p>  工作臺(tái)產(chǎn)品,在CATIA V5環(huán)境中經(jīng)常使用工作臺(tái)(Workbench)這個(gè)術(shù)語(yǔ)。工作臺(tái)就是應(yīng)用模塊中的工作環(huán)境,用戶可以使用一些獨(dú)特的功能來(lái)創(chuàng)建幾何體并對(duì)幾何體進(jìn)行操作。多數(shù)的工作平臺(tái)就是應(yīng)用模塊的特例。但是,某些工作臺(tái)(如草圖工作臺(tái))卻結(jié)合在多個(gè)應(yīng)用模塊中。</p><p>  CATIA V5采用了多種支持組件技術(shù)的軟

74、件技術(shù)如:JAVA、COM/DCOM、CORBA等,內(nèi)部模塊全部用CNEXT(CATIA 內(nèi)部使用的一種C++語(yǔ)言)實(shí)現(xiàn),結(jié)構(gòu)單一。提供了多種開發(fā)接口,支持C++/JAVA、Automation API ,支持各種開發(fā)工具:CAA C++,JAVA ,VB,腳本語(yǔ)言。采用單繼承,對(duì)象之間關(guān)系明確,體系結(jié)構(gòu)嚴(yán)謹(jǐn),維護(hù)容易。根據(jù)CAD軟件的特點(diǎn)和實(shí)際需要,CATIA 的設(shè)計(jì)模式比較簡(jiǎn)單,主要有工廠模式、層模式等。在面向?qū)ο蟮木幊讨?,工廠模式

75、是一種經(jīng)常被使用到的模式。根據(jù)工廠模式實(shí)現(xiàn)的類可以根據(jù)提供的數(shù)據(jù)生成一組類中某一個(gè)類的實(shí)例,通常這一組類有一個(gè)公共的抽象父類并且實(shí)現(xiàn)了相同的方法,但是這些方法針對(duì)不同的數(shù)據(jù)進(jìn)行了不同的操作[7]。 </p><p>  CATIA中的具體實(shí)現(xiàn)如下例所示: </p><p>  如要做一條垂直于曲面的線,由對(duì)象繼承關(guān)系如下 </p><p>  CATBaseUnkn

76、own     ↓  CATBaseDispatch      ↓  AnyObject        ↓  

77、 HybridShape        ↓  Line       ↓    HybridShapeLineNormal</p><p>

78、;  CATIA V5所提供的工作臺(tái)與相關(guān)產(chǎn)品遠(yuǎn)遠(yuǎn)超出了本文的介紹范圍。主要的平臺(tái)有如下:產(chǎn)品結(jié)構(gòu)(Product Structure),草圖(Sketch), 零件設(shè)計(jì)(Part Design), 線框和曲面(Wireframe and Surface Design) ,裝配設(shè)計(jì)(Assembly),工程圖(Drawing)。</p><p>  CATIA V5的設(shè)計(jì)理念是基于將數(shù)字化產(chǎn)品和產(chǎn)品開發(fā)的生命周期

79、結(jié)合在一起的概念。這款軟件已經(jīng)被徹底的重新設(shè)計(jì),并將主要的技術(shù)提供給工業(yè)。CATIA V5提供了全新的過(guò)程結(jié)構(gòu),該結(jié)構(gòu)利用一套獨(dú)特的軟件開發(fā)工具進(jìn)行開發(fā),和針對(duì)Microsoft Windows環(huán)境進(jìn)行優(yōu)化。用戶界面全部重新設(shè)計(jì)為基于工具欄,圖標(biāo)和驅(qū)動(dòng)式快捷菜單的樣式。這種基于圖標(biāo)的新菜單結(jié)構(gòu)有利于縮短用戶的學(xué)習(xí)周期。</p><p>  CATIA V5最成功的地方在于各種工作臺(tái)的相互結(jié)合與GUI的無(wú)縫集成。實(shí)

80、體主要是由草圖的特征和修飾特征進(jìn)行創(chuàng)創(chuàng)建,從而它比CATIA以前的版本具有強(qiáng)大的功能。</p><p>  3.2 Visual Basic介紹</p><p>  3.2.1 Visual Basic的簡(jiǎn)介</p><p>  Visual Basic,簡(jiǎn)稱VB,是Microsoft公司推出的一種Windows應(yīng)用程序開發(fā)工具。是當(dāng)今世界上使用最廣泛的編程語(yǔ)言

81、之一,它也被公認(rèn)為是編程效率最高的編程方法之一。無(wú)論是開發(fā)功能強(qiáng)大、性能可靠的商務(wù)軟件,還是編寫能處理實(shí)際問(wèn)題的實(shí)用小程序,VB都是最快速、最簡(jiǎn)便的方法[8]。 </p><p>  Visual Basic 中的“Visual”指的是采用可視化的開發(fā)圖形用戶界面(GUI)的方法,一般不需要編寫大量代碼去描述界面元素的外觀和位置,而只要把需要的控件拖放到屏幕上的相應(yīng)位置即可;“Basic”指的是BASIC語(yǔ)言,因

82、為VB是在原有的BASIC語(yǔ)言的基礎(chǔ)上發(fā)展起來(lái)的,至今包含了數(shù)百條語(yǔ)句、函數(shù)及關(guān)鍵詞,其中很多和Windows GUI 有直接關(guān)系。專業(yè)人員可以用 Visual Basic 實(shí)現(xiàn)其它任何 Windows 編程語(yǔ)言的功能,而初學(xué)者只要掌握幾個(gè)關(guān)鍵詞就可以建立實(shí)用的應(yīng)用程序。 VB提供了學(xué)習(xí)版、專業(yè)版和企業(yè)版,用以滿足不同的開發(fā)需要。學(xué)習(xí)版使編程人員很容易地開發(fā)Windows和Windows NT的應(yīng)用程序;專業(yè)版為專業(yè)編程人員提

83、供了功能完備的開發(fā)工具;企業(yè)版允許專業(yè)人員以小組的形式來(lái)創(chuàng)建強(qiáng)健的分布式應(yīng)用程序。 </p><p>  Visual Basic的功能十分強(qiáng)大,它是一種強(qiáng)大的語(yǔ)言,即您所能想到的編程任務(wù),它基本都能完成。從設(shè)計(jì)新型的用戶界面到利用其它應(yīng)用程序的對(duì)象;從處理文字圖象到使用數(shù)據(jù)庫(kù);從開發(fā)個(gè)人或小組使用的小工具,到大型企業(yè)應(yīng)用系統(tǒng),甚至通過(guò) Internet 的遍及全球分布式應(yīng)用程序,都可在 Visual Basic

84、 提供的工具中各取所需。 VB是微軟公司的一種通用程序設(shè)計(jì)語(yǔ)言,包含在Microsoft Excel、Microsoft Access等眾多Windows應(yīng)用軟件中的VBA都使用VB語(yǔ)言,以供用戶二次開發(fā);目前制作網(wǎng)頁(yè)使用較多的VBScript腳本語(yǔ)言也是VB的子集[8]。 </p><p>  VB在目前各種編程語(yǔ)言共存的時(shí)代仍然以其出色的性能和長(zhǎng)久以來(lái)積累下的大量用戶而在同行業(yè)中占據(jù)重要地位。VB從1991年

85、誕生之日起到現(xiàn)在已經(jīng)有七個(gè)版本了(最新.NET版)這么高的更新率,不外乎說(shuō)明兩個(gè)問(wèn)題:用戶對(duì)VB的熱衷,微軟對(duì)VB的重視。不可否認(rèn)微軟對(duì)市場(chǎng)的預(yù)測(cè)能力是極為高明的,而它強(qiáng)大的技術(shù)、財(cái)力支持也使它在許多以前未進(jìn)入的領(lǐng)域,在不長(zhǎng)的時(shí)間內(nèi)有成為最有力的競(jìng)爭(zhēng)對(duì)手。</p><p>  VB語(yǔ)言在學(xué)習(xí)上更是有其獨(dú)特的優(yōu)勢(shì),特別是對(duì)初學(xué)電腦編程或者這是利用編程做一些其他工作的輔助工作。如果你是一個(gè)對(duì)編程一無(wú)所知,而又迫切希望

86、掌握一種快捷實(shí)用的編程語(yǔ)言的初學(xué)者,那選擇Visual Basic沒(méi)錯(cuò)的。它的快捷的開發(fā)速度,簡(jiǎn)單易學(xué)的語(yǔ)法,體貼便利的開發(fā)環(huán)境,是初學(xué)者的首選。VB的語(yǔ)法的和QBASIB語(yǔ)言是基本相同的,也就是說(shuō)它的語(yǔ)法是最容易被初學(xué)者所接受的。另外VB提供的是可視化的開發(fā)環(huán)境,我們可以象搭積木一樣構(gòu)建出程序的界面,而且VB提供了豐富的控件組,省去了我們自己寫代碼實(shí)現(xiàn)這些效果的麻煩,這樣我們就能把更多的精力放在程序功能的實(shí)現(xiàn)上,所以VB學(xué)起來(lái)簡(jiǎn)單,用

87、起來(lái)方便[8]。 </p><p>  CAD軟件的二次開發(fā)對(duì)工程師的綜合能力要求很高,但是通常具備CAD應(yīng)用經(jīng)驗(yàn)的工程師往往不具備軟件開發(fā)經(jīng)驗(yàn)和軟件開發(fā)語(yǔ)言,這也是現(xiàn)在CAD軟件二次開發(fā)方面發(fā)展多集中在少數(shù)高校和研究所的原因。而VB的簡(jiǎn)單易學(xué),以及其可視化的開發(fā)界面對(duì)參與CAD二次開發(fā)的人士而言是個(gè)很不錯(cuò)的選擇。</p><p>  3.2.2 Visual Basic的特點(diǎn)</

88、p><p>  Visual Basic極大地簡(jiǎn)化了界面的設(shè)計(jì),它使程序員可以直觀地設(shè)計(jì)應(yīng)用程序的用戶界面。通過(guò)事件驅(qū)動(dòng)機(jī)制,用戶在界面上的任何操作都自動(dòng)被映射到了相應(yīng)的處理代碼上。這樣,程序員可以將精力集中在程序功能的實(shí)現(xiàn)上,無(wú)須像以前那樣需要耗費(fèi)大量的精力為界面編寫代碼。例如:當(dāng)用鼠標(biāo)單擊一個(gè)按鈕時(shí),用戶并不需要知道這個(gè)過(guò)程是怎樣發(fā)生的,或者這個(gè)過(guò)程的代碼是什么,而只需寫一段代碼來(lái)告訴計(jì)算機(jī)單擊按鈕時(shí)要執(zhí)行什么命

89、令。因此,在程序設(shè)計(jì)中Visual Basic比以往的各種工具都簡(jiǎn)便,快速。</p><p>  Visual Basic還提供了OLE(Object Linking and Embedding,對(duì)象的鏈接與嵌入)功能。也就是在應(yīng)用程序里,可以通過(guò)控制其它應(yīng)用程序中的對(duì)象來(lái)借用他們的某些功能。例如,建立一個(gè)Visual Basic應(yīng)用程序,在這個(gè)程序中,可以使用Microsoft Excel建立一個(gè)計(jì)算器,用Mi

90、crosoft Word 建立一個(gè)報(bào)表。</p><p>  另外,Visual Basic6.0中的數(shù)據(jù)訪問(wèn)特性,允許對(duì)SQL Server 和其他企業(yè)數(shù)據(jù)在內(nèi)的大部分?jǐn)?shù)據(jù)庫(kù)格式和前端應(yīng)用程序,以及可調(diào)整的服務(wù)器端軟件。</p><p>  Visual Basic是一種基于對(duì)象的程序設(shè)計(jì)語(yǔ)言。一個(gè)Visual Basic程序由眾多的對(duì)象以及各種事件的代碼組成。當(dāng)用戶對(duì)對(duì)象進(jìn)行操作時(shí),就

91、產(chǎn)生特定的事件。對(duì)象在某些特定的條件下也會(huì)自動(dòng)產(chǎn)生事件。當(dāng)事件產(chǎn)生時(shí),Visual Basic程序就自動(dòng)調(diào)用相應(yīng)的代碼來(lái)處理。可以說(shuō),應(yīng)用程序在運(yùn)行的過(guò)程當(dāng)中,始終在等候事件的產(chǎn)生并做出響應(yīng),直到用戶結(jié)束整個(gè)程序?yàn)橹筟8]。 </p><p>  Visual Basic程序的主體是眾多的對(duì)象,也就是窗體、控件、菜單等。當(dāng)用戶在某個(gè)對(duì)象上進(jìn)行某些操作時(shí),比如在命令按鈕上進(jìn)行單擊鼠標(biāo),就會(huì)在這個(gè)命令按鈕的對(duì)象上激發(fā)

92、一個(gè)鼠標(biāo)單擊事件。一般來(lái)說(shuō),用戶的操作都是有目的的,應(yīng)用程序該響應(yīng)用戶的操作,也就是說(shuō),程序員應(yīng)該編寫代碼處理這些事件。</p><p>  3.3 CAA 與VBA 的區(qū)別 </p><p>  CAA 組件應(yīng)用架構(gòu)(Component Application Architecture,CAA)是Dassault Systemes產(chǎn)品擴(kuò)展和客戶進(jìn)行二次開發(fā)的強(qiáng)有力的工具。以 為商標(biāo)的D

93、assault Systemes已形成六大支柱產(chǎn)品,通過(guò)PPR HUB進(jìn)行集成,對(duì)產(chǎn)品的生命周期進(jìn)行全方位管理。</p><p>  PPR HUB是Dassault Systemes 3D產(chǎn)品生命周期管理(Product Lifecycle Management ,PLM)解決方案的核心,確保CATIA、ENOVIA、DELMIA三者之間的整合。</p><p>  Dassault S

94、ystemes的這套解決方案得利于開放式,可擴(kuò)展的模塊化開發(fā)架構(gòu)CAA,使得全球諸多開發(fā)商可以參與Dassault Systemes的研發(fā)。對(duì)客戶而言,CAA可以進(jìn)行從簡(jiǎn)單到復(fù)雜的二次開發(fā)工作,而且和原系統(tǒng)的結(jié)合非常緊密,如果沒(méi)有特別的說(shuō)明,無(wú)法把客戶所研發(fā)的功能從原系統(tǒng)中區(qū)分出來(lái),這非常有利于用戶的使用和集成。</p><p>  CAA的實(shí)現(xiàn),是通過(guò)提供的快速應(yīng)用研發(fā)環(huán)境RADE和不同的API接口程序來(lái)完成的

95、。快速應(yīng)用研發(fā)環(huán)境Rapid Application Development Environment(RADE)是一個(gè)可視化的集成開發(fā)環(huán)境,它提供完整的編程工具組。實(shí)際上RADE以Microsoft Visual Studio VC++為載體,在VC++環(huán)境中增加了CAA的開發(fā)工具。API提供了操作各種對(duì)象的方法、工具和接口。</p><p>  CAA V5則可以做精致的交互命令,這些命令可以分組歸入工作臺(tái)(w

96、orkbench)并展示精美的面板,并能夠?qū)崿F(xiàn)Undo/Redo。并且用戶可以定義新的特征,而產(chǎn)生和其他DS特征平等的特征,從而豐富CATIA V5的數(shù)據(jù)模型。要擴(kuò)展已經(jīng)存在的對(duì)象的行為則要CAA V5才能實(shí)現(xiàn),并且可以定義新的行為。</p><p>  Dassault Systemes提供的CAA產(chǎn)品包括如下內(nèi)容:</p><p>  CAA RADE 快速開發(fā)環(huán)境,基于Microso

97、ft Visual Studio</p><p>  CAA CATIA V5 API, CATIA V5應(yīng)用開發(fā)工具</p><p>  CAA ENOVIA LCA V5 API,ENOVIA LCA應(yīng)用開發(fā)工具</p><p>  CAA DELMIA V5 API,DELMIA V5應(yīng)用開發(fā)工具</p><p>  CAA ENOVI

98、A PORTAL V5 API ,ENOVIA PORTAL V5應(yīng)用開發(fā)工具</p><p>  在商業(yè)運(yùn)作方面,與Dassault Systemes系統(tǒng)的其產(chǎn)品一樣,CAA也被劃分為軟件包(Configuration)和模塊(Product),用戶在購(gòu)置CAA時(shí)要根據(jù)需要選擇合適的配置和產(chǎn)品。</p><p>  目前CAA有五個(gè)配置軟件包:</p><p> 

99、 CAA-Multi-workspace Application Building(簡(jiǎn)稱ABC)</p><p>  CAA應(yīng)用的基本配置. CAA – 多工作空間應(yīng)用程序構(gòu)建配置是為IT和QA組織提供的。這種配置提供了CAA V5的基礎(chǔ)產(chǎn)品:多工作空間應(yīng)用程序構(gòu)建產(chǎn)品。通過(guò)這種基礎(chǔ)配置可以增加IT和QA產(chǎn)品在運(yùn)行協(xié)同設(shè)計(jì)發(fā)布管理配置時(shí)的益處。應(yīng)用這種配置的策略是提供充分的IT 和QA產(chǎn)品,它們被用來(lái)建立與開發(fā)者

100、所使用的產(chǎn)品無(wú)關(guān)的版本。該配置包括:多工作空間應(yīng)用程序構(gòu)建產(chǎn)品</p><p>  CAA-C++ Extended Development(簡(jiǎn)稱CDC)</p><p>  提供與C++共存的的開發(fā)環(huán)境,即對(duì)C++開發(fā)環(huán)境的客戶化,用戶除可使用C++開發(fā)環(huán)境的所有工具外,還可使用CAA提供的獨(dú)特的開發(fā)工具.可用于CATIA和ENOVIA的二次開發(fā).</p><p>

101、;  CAA-C++ Base Development(簡(jiǎn)稱CDV)</p><p>  CAA-基于C++的開發(fā)配置是為C++開發(fā)者提供的。這種配置面向中小規(guī)模應(yīng)用市場(chǎng)。為開發(fā)者提供了交互面板產(chǎn)品和編譯工具。可以用于客戶化CATIA V5 和ENOVIA V5產(chǎn)品。相對(duì)于CAA-C++擴(kuò)展開發(fā)配置它提供了有限的功能支持,該配置包括: (1)C++交互面板產(chǎn)品 (2)多工作空間應(yīng)用程序建構(gòu)產(chǎn)品 </p>

102、;<p>  CAA-Java Base Development(簡(jiǎn)稱JDV)</p><p>  CAA-基于Java 的開發(fā)配置是為JAVA開發(fā)者提供的。這種配置提供了一個(gè)工具包,其中包含為客戶化ENOVIA客戶端而開發(fā)JAVA應(yīng)用軟件時(shí)所需要的所有工具。通過(guò)簡(jiǎn)單易用的標(biāo)準(zhǔn)用戶界面,提供了實(shí)施和建立應(yīng)用程序的集成能力,該配置包括: (1)JAVA 交互面板產(chǎn)品 (2)多工作空間應(yīng)用程序構(gòu)建產(chǎn)品

103、</p><p>  CAA-Legacy Data Integration Development Configuration(簡(jiǎn)稱LDC)</p><p>  CAA-歷史數(shù)據(jù)的集成開發(fā)配置是為JAVA開發(fā)者提供的,提供訪問(wèn)舊有系統(tǒng)所必需的工具,可與歷史數(shù)據(jù)輕松集成。該配置包括: (1)針對(duì)歷史數(shù)據(jù)的Web應(yīng)用程序生成器產(chǎn)品 (2)多工作空間應(yīng)用程序構(gòu)建產(chǎn)品</p>&l

104、t;p>  CAA提供的產(chǎn)品(模塊)包括:</p><p>  CAA-C++ API Documentation Generator(CDG).</p><p>  CAA-C++ Source Checker(CSC)</p><p>  CAA-CAA Data Model Customizer(DMC)</p><p>  CA

105、A-Java UnitTest Manager(JUT)</p><p>  CAA-Multi-Worksoace Application Builder(MAB)</p><p>  CAA-Teamwork Release Manager(TRM)</p><p>  CAA-C++ Interactive Dashboard(CID)</p>

106、<p>  CAA-C++ Unit Test Manager(CUT)</p><p>  CAA-Java Interactive Dashboard(JID)</p><p>  CAA-Web Application Generator for Legacy Database(LWG)</p><p>  CAA-Source Code Manag

溫馨提示

  • 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ù)僅提供信息存儲(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)論