一、背景

    CATIA是当今工业领域内领先的三维CAD软件,通过对CATIA的二次开发,可以对特定功能和需要进行定制,并且无缝嵌入到CAITA中。

二、二次开发框架

    CATIA提供了AutomationAPI组件和组件应用架构(CAA,Component Application Architecture)开发模式。

2.1 Automation组件(VBScript

    Automation API具备与任何OLE所兼容的平台进行通讯能力,自动化(Automation)组件使用VBScript作为编辑工具。通过宏录制功能(Macro Record),可以记录用户的操作过程并自动生成VBScript代码。这种方式比较简单,在CATIA环境就中可完成。

2.2 COM组件调用(C#)

    CATIA安装后会注册相应的COM组件,COM作为一种软件架构具备了更好的模块独立性、可扩展性。在CATIA运行的情况下,外部进程可以通过访问COM组件实现对CATIA的操作,如创建、修改CATIA环境和几何形体的数据、尺寸等。通过C#可添加需要的COM组件引用可完成对CAITA的二次开发。

2.3 组件应用架构(CAA)

    CAA为主要的开发方式,安装CAA后安装路径下会提供头文件和库文件,通过达索提供的RADE开发框架来搭建CAA开发环境,这种方式主要使用C++作为开发语言。

三、CAA+RADE

3.1 配置开发环境

    需要:CATIA、CAA接口、CAA RADE(版本对应)、Visual Studio。

3.2 CAA RADE框架

    RADE框架是集成在Visual Studio中的由达索提供的CATIA二次开发框架。

3.3 CAA接口库

     CAA接口包括了达索提供的可使用的CATIA接口(头文件、库文件等)。

3.4 百科全书

    对于CAA开发,最基础也是最常用的帮助文档便是百科全书。

    百科全书路径:Root_DirCAADocDoconlineCAACenV5Title.htm

    对AutomationAPI组件来说,其帮助文档为:Root_Dirwin_b64codebinV5Automation.chm

四、开发模式

4.1批处理模式

    批处理模式,即在不启动CATIA的情况下运行的程序。

4.2交互式模式

    交互式模式,即在CATIA下运行的程序。