1.CATIA CAA二次開發(fā)簡介_第1頁
1.CATIA CAA二次開發(fā)簡介_第2頁
1.CATIA CAA二次開發(fā)簡介_第3頁
1.CATIA CAA二次開發(fā)簡介_第4頁
1.CATIA CAA二次開發(fā)簡介_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

CAA及其應(yīng)用[摘要]本文就DassaultSystemes的CAA(ComponentApplicationArchitecture)產(chǎn)品作了比較全面而詳盡的介紹,包括CAA產(chǎn)品的構(gòu)架、軟件包的構(gòu)成和選購。最后對CAA的安裝和應(yīng)用也作了簡要介紹。[關(guān)鍵詞]面向?qū)ο蟪绦蛟O(shè)計、組件對象模型(COM)、CAA、RADECAA簡介ComponentApplicationArchitecture(CAA)組件應(yīng)用架構(gòu),是DassaultSystemes產(chǎn)品擴展和客戶進行二次開發(fā)的強有力的工具。以為商標(biāo)的DassaultSystemes已形成六大支柱產(chǎn)品,通過PPRHUB進行集成,對產(chǎn)品的生命周期進行全方位管理。圖1DassaultSystemes產(chǎn)品結(jié)構(gòu)邏輯關(guān)系這六大產(chǎn)品包括:CATIAV5:產(chǎn)品的數(shù)字化設(shè)計和數(shù)字樣機技術(shù)。ENOVIA:產(chǎn)品數(shù)據(jù)管理和協(xié)同工作環(huán)境。DELMIA:數(shù)字化工廠,包括工藝設(shè)計、資源控制、工廠布置和生產(chǎn)模擬等。另外還有SOLIDWORKS、SMARTTEAM也可進行數(shù)字化設(shè)計和管理,由用戶情況決定。特別要提的是SPATIAL,專門進行CAA架構(gòu)的開發(fā)和研究。PPRHUB是DassaultSystemes3D產(chǎn)品生命周期管理(ProductLifecycleManagement,PLM)解決方案的核心,確保CATIA、ENOVIA、DELMIA三者之間的整合。DassaultSystemes的這套解決方案得利于開放式,可擴展的模塊化開發(fā)架構(gòu)CAA,使得全球諸多開發(fā)商可以參與DassaultSystemes的研發(fā)。對客戶而言,CAA可以進行從簡單到復(fù)雜的二次開發(fā)工作,而且和原系統(tǒng)的結(jié)合非常緊密,如果沒有特別的說明,無法把客戶所研發(fā)的功能從原系統(tǒng)中區(qū)分出來,這非常有利于用戶的使用和集成。CAA的實現(xiàn),是通過提供的快速應(yīng)用研發(fā)環(huán)境RADE和不同的API接口程序來完成的??焖賾?yīng)用研發(fā)環(huán)境RapidApplicationDevelopmentEnvironment(RADE)是一個可視化的集成開發(fā)環(huán)境,它提供完整的編程工具組。實際上RADE以MicrosoftVisualStudioVC++為載體,在VC++環(huán)境中增加了CAA的開發(fā)工具。API提供了操作各種對象的方法、工具和接口。DassaultSystemes提供的CAA產(chǎn)品包括如下內(nèi)容:CAARADE快速開發(fā)環(huán)境,基于MicrosoftVisualStudioCAACATIAV5API,CATIAV5應(yīng)用開發(fā)工具CAAENOVIALCAV5API,ENOVIALCA應(yīng)用開發(fā)工具CAADELMIAV5API,DELMIAV5應(yīng)用開發(fā)工具CAAENOVIAPORTALV5API,ENOVIAPORTALV5應(yīng)用開發(fā)工具CATIA是ComputerAidedTri-dimensionalInterfaceApplication的縮寫,是世界第一大飛機制造公司法國達索公司的產(chǎn)品,是世界上主流的CAD/CAE/CAM一體化集成軟件。CATIA開放了大部分接口,提供了強大的二次開發(fā)平臺,用于滿足用戶對軟件功能和性能的要求和軟件本地化、用戶化的要求。CATIA的二次開發(fā)接口主要是通過進程內(nèi)和進程外兩種方式與外部程序通信。CATIA軟件與腳本運行在同一進程地址空間,即為進程內(nèi)應(yīng)用程序,比如宏(Macro)方式;CATIA與外部程序在不同進程地址空間運行為進程外應(yīng)用程序。具體來說,CATIA主要有兩種二次開發(fā)方法:使用宏對CATIA進行二次開發(fā)和使用組件應(yīng)用架構(gòu)(CAA-RADE)對CATIA進行二次開發(fā)。相比較而言,CAA方法具有強大的交互、集成功能,可以實現(xiàn)深層次和復(fù)雜系統(tǒng)的開發(fā),有良好的開放性和穩(wěn)定性,且CAA方法綜合了C++本身豐富的庫,具有強大的界面開發(fā)功能,本文采用CAA方法對CATIA進行開發(fā)。CAA(ComponentsApplicationArchitecture)是組件應(yīng)用架構(gòu)技術(shù),是達索系統(tǒng)產(chǎn)品擴展和客戶進行二次開發(fā)的強有力工具,具有強大的集成、交互功能。如圖2所示,在CAA中,組件(Compenent)是軟件的基本組成部分,主要指可重用對象,代表了諸如點、線、面等對象;接口則代表實現(xiàn)組件的類型和行為,由一組對應(yīng)于組件的操作集組成。應(yīng)用程序通過接口與組件發(fā)生關(guān)系,獲取一個指向接口的指針,調(diào)用接口所提供的方法,對組件進行相應(yīng)的操作,完成程序所要求的功能。圖2CAA組件和接口CATIAV5采用基于COM(ComponentsObjectModel,組件對象模型)技術(shù)的自動化提供二次開發(fā)接口。COM是CATIAV5中自動化接口的核心技術(shù),可以實現(xiàn)不同的組件在二進制可執(zhí)行代碼級基礎(chǔ)上相互通信,并提供對外訪問接口。如圖3所示,IUnknown接口是COM的基接口,COM的每一個接口都是由基接口IUnknown繼承,CATBaseUnknown是CAA提供的CATIAV5所有接口的基類,AnyObject、Collection、Reference是其它對象的抽象基類。AnyObject是Application、Window、Document等對象的基類,Collection是Windows、Document、Products等對象的基類,Reference用于表示指向另一個對象的對象。CATIAV5軟件本身的開發(fā)即是遵循面向?qū)ο螅–OM)的設(shè)計思想,構(gòu)建了基于組件的體系結(jié)構(gòu)。圖3CATIAV5的COM模型在每個CAA中,至少有一個框架(framework),每個框架中至少有一個模塊(module)。在每一個框架中包含一個IdentityCard.h文件,當(dāng)此框架與其他框架進行聯(lián)系時,通過此文件中的宏“AddPrereqComponent(framework,protected)”進行聲明。通過上述方法對CATIAV5組件的操作,用戶可以組裝CATIA自身的CAA組件實現(xiàn)對CATIA的功能擴展,也可以通過開發(fā)CAA組件實現(xiàn)自定義功能,從而實現(xiàn)系統(tǒng)的維護、管理和擴展。CAA架構(gòu)在軟件開發(fā)領(lǐng)域,使用面向?qū)ο蟮某绦蛟O(shè)計(OOP:Object-Oriented-Programming)已經(jīng)成為軟件開發(fā)設(shè)計的主流,它為軟件的發(fā)展帶來了很多好處:可復(fù)用性、抽象性、封裝性等。軟件專家把軟件開發(fā)看作是對象的組合。面向?qū)ο蟪绦蛟O(shè)計是一種程序設(shè)計方法,而建立在面向?qū)ο蟪绦蛟O(shè)計基礎(chǔ)之上的組件對象模型(COM)和對象的連接和嵌入(OLE)技術(shù),使程序設(shè)計更加容易且趨于標(biāo)準(zhǔn)化,使程序的使用更加簡潔明了。Microsoft是COM和OLE的先祖,基于此種技術(shù)的應(yīng)用軟件,如MicrosoftWord,Excel,Access得到廣泛地使用和承認(rèn),而且許多應(yīng)用軟件也是基于這種技術(shù),CAA就是基于這種技術(shù)的Windows應(yīng)用軟件。圖4CAA產(chǎn)品的架構(gòu)可用圖4表示。它全面反映了DassaultSystemes幾大產(chǎn)品之間的關(guān)系。在CAA架構(gòu)的支撐之下,DassaultSystemes系統(tǒng)可像搭積木一樣建立起來,這種結(jié)構(gòu)非常適宜于系統(tǒng)的壯大和發(fā)展。表1列出了在CATIAV5應(yīng)用方面為DassaultSystemes開發(fā)應(yīng)用程序的部分公司。表1CATIAV5軟件合作伙伴序號合作伙伴產(chǎn)品1CADDAMSystemscompanyInc.HelixIntegration/EnvironmentV1R4CAAV5Based/HelixDirectInterface(HDI)CAAV5Based2DimensionalControlSystemsInc.3DCSAnalystCAAV5Based/3DCSDesignerCAAV5Based3TracePartsTracePartsCAAV5Based4T-SystemsITSGmbHVAMOSCAAV5Based5MetalsoftInc.FabriwinCAAV5Based6MechanicalDynamicsInc.DynamicDesignerCAAV5Based7LMSInternationalLMSVirtual.LabAcousticsLMSVirtual.LabNoiseandVibrationLMSVirtual.LabDurabilityLMSVirtual.LabMotion8ICEMCFDICEMCFDHexaCAAV5Based9AIKOKUALPHAENGINEERINGCORP.AIKOKUPostfor4axisCAAV5Based/AIKOKUPostfor5axisCAAV5Based10CENITAGSystemhausCUT4AXESCAAV5Based11EADSMatraDatavisionEUCLID3ConnectivityCAAV5Based12ZEHSoftwareZEHSeverCAAV5Based13InfrastructureInterfaceCOM/VDAFSCAAV5Based在商業(yè)運作方面,與DassaultSystemes系統(tǒng)的其產(chǎn)品一樣,CAA也被劃分為軟件包(Configuration)和模塊(Product),用戶在購置CAA時要根據(jù)需要選擇合適的配置和產(chǎn)品。目前CAA有五個配置軟件包:CAA-Multi-workspaceApplicationBuilding(簡稱ABC)CAA應(yīng)用的基本配置.CAA-C++ExtendedDevelopment(簡稱CDC)提供與C++共存的的開發(fā)環(huán)境,即對C++開發(fā)環(huán)境的客戶化,用戶除可使用C++開發(fā)環(huán)境的所有工具外,還可使用CAA提供的獨特的開發(fā)工具.可用于CATIA和ENOVIA的二次開發(fā).CAA-C++BaseDevelopment(簡稱CDV)與CDC類似,但規(guī)模小,針對中小市場,可有限地運用于CATIAV5和ENOVIALCA的客戶化工作.CAA-JavaBaseDevelopment(簡稱JDV)運行于JAVA開發(fā)環(huán)境,適用于ENOVIALCA客戶端的定制.CAA-LegacyDataIntegrationDevelopmentConfiguration(簡稱LDC)提供數(shù)據(jù)接口工具,可使用戶繼承原有的數(shù)據(jù).CAA提供的產(chǎn)品(模塊)包括:CAA-C++APIDocumentationGenerator(CDG).CAA-C++SourceChecker(CSC)CAA-CAADataModelCustomizer(DMC)CAA-JavaUnitTestManager(JUT)CAA-Multi-WorksoaceApplicationBuilder(MAB)CAA-TeamworkReleaseManager(TRM)CAA-C++InteractiveDashboard(CID)CAA-C++UnitTestManager(CUT)CAA-JavaInteractiveDashboard(JID)CAA-WebApplicationGeneratorforLegacyDatabase(LWG)CAA-SourceCodeManager(SCM)圖2圖2表示了CAA產(chǎn)品配置及其所包含的產(chǎn)品的矩陣圖.這里對各個模塊的功能不再作詳盡的解釋,如果讀者需

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論