CATIA+V5二次开发技术探讨

第14卷第5期2005年10月

淮阴工学院学报

V01.14No.5

0ct.2005

JournalofHuaiyinInstituteofTechnology

CATIA

V5二次开发技术探讨

龙峰,樊留群

(同济大学CIMS研究中心,上海200092)

摘要:介绍了CATIAActiveXAutomation组件对象模型原理与结构以及其在CATIA二次开发中的作用;然后比较了CATIA二次开发技术

的两次方式:CAAC++技术和CAAAUTOMATION技术,两种方式各有优劣,并分别在两种开发环境(VisualC++和VisualBasic)中通过利用Automation接口实现引用类型库程序以及与CATIA的通信程序,并给出了部分代码;最后给出一个端拾器的装配设计效果。关键词:CATIAV5;Activeautomation;组件对象模型中图分类号:TN4

文献标识码:A

文章编号:1009—7961(2005)05—0021—03

OntheSecondDevelopmentTechnologyofCATIAV5

LONGFen。FANLiu—qun

(CIMS

Research

Center,Tongji

University,Shanghai

200092,China)

the

structure

Abstract:ThispaperintroducesthetheoryoftheCATIAActiveXAutomationtheCOM,makescomparisonofthe

two

COM(componentobjectmodel)and

on

of

methodsinthedevelopment

two

technologybased

CATIAV5withCAAC++orCAAAu—

tomation,anddiscussesthedifferencebetweentheisfinallygiveninthis

paper.

technologieswithsomecodes.AndthedesigningeffectofCAAAutomation

Keywords:CATIAV5;Active

automation;COM(componentobject

modelJ

CATIA

的。Automation的核心技术是允许一个应用程序操作另一

个应用程序。Automation技术并不是直接获取及处理数据,

而是间接地通过暴露的对象和属性,利用对象的方法和属性获取、设置及处理数据。Automation技术包括两个方面:server和cliento

Automation

V5是IBM和达索系统公司共同推出的全新一

代的CAD/CAE/CAM软件,该软件能够在Windows98/Me、

Windows2000/Xp以及Unix等平台上运行,是目前应用范

server是一个实现了IDispatch接

围最广、影响最大的CAD软件。目前,CATIA是汽车、摩托车、以及航空航天领域中的主流CAD软件。作为一个在同行业中处于领先地位的软件,CATIA具有众多且功能强大的模块,模块总数从最初的12个增加到现在的140多个。

随着CATIA软件应用领域的日益普及和深入,用户对软件功能和性能的要求不断提高,以及增加对软件个性化服务要求,

CATIA

口的COM组件,而Automationclient是一个通过IDispatch接口与自动化服务器进行通信的COM客户。如CATIA我们把它看成一个server,客户编制的应用程序则是client。

C^AC++.

&计目的,

‘)e呻c堪∞哪at∞n

Int嘈蛳awithml*rsy,mms

}自啄h.

‘StruCk.clllmollaRath叶

Replacert,,ptatltgol诤zatlom+、套IT

V5开放了大部分接口,提供了很好的二次开发平台。

拜蔽性.

并发技术.

Liamed

c,mpiam:L∞《Ⅱ3拳。鞑呻tL=Ⅶ口13妒

Low

CATIA二次开发方式

CATIA的二次开发方式主要有两种,一种是采用CAA

并发困难度,}啦曲-

隐定鏖+

萑赓使用技

采.

}i掣F

[’AA(、+,

【.dw

C++技术,另一种是采用CAAAUTOMATION技术,两种技术都有其优缺点。

CAA(Component

Application

(‘A^(’}“

圈1两种技术比较

Architecture)C++是

从图1可以看出使用CAAC++可以进行最有效率的应用程序开发,但入门困难。CAAAutomation功能限制相当大,但入门容易。所以建议开发工作尽可能使用CAAAutomation,不足之处在以CAAC++完成。2

Auto—

CATIA的一整套C++函数库,该函数库在CATIA运行时加载。用户通过安装RADE(Rapid

ApplicationDevelopment

Environment)模块,用户可以在VC++编程环境下编制程序,与CATIA进行通信。

Automation技术是建立在COM基础之上,由OLEmation(Object

LinkingandEmbedding

Automation)发展而来

CATIA的其组件对象模型(COM)及其访问方法

收稿日期:2005—06—10

作者简介:龙峰(1980一),男,江西南昌人,硕士研究生,主要研究方向:制造业信息集成技术。

CATIA+V5二次开发技术探讨相关文档

最新文档

返回顶部