CAA V5R18培训教材1
培训教程CATIA二次开发密级:内部编号:1CAA基础共 14 页 2012 年 7 月编号:1CAA基础分发:批 准:审 核:质 审:审 校:校 对:设 计:I编号:1CAA基础目次1 CAA开发环境安装11.1 软件版本11.2 安装过程11.2.1 安装CATIA11.2.2 将CATIA打补丁SP611.2.3 安装VC200511.2.4 安装CAA API11.2.5 安装CAA API 补丁11.2.6 安装CAA RADE 在T18下11.2.7 安装windows 系统补丁11.2.8 系统配置21.3 注意事项42 CAA编程思想62.1 CAA基本概念62.2 体系结构73 CAA程序组成84 程序建立与功能集成104.1 CAA 程序开发前言104.2 批处理程序与交互程序1012 培训教程CATIA二次开发1 CAA开发环境安装1.1 软件版本CATIA开发所用的工具 :CATIA/CAAR18 ,VC2005。1.2 安装过程1.2.1 安装CATIACAT3-R18-WIN-1 , CAT3-R18-WIN-2。1.2.2 将CATIA打补丁SP6 CATIA的补丁文件为SP6-R18-WIN-1.iso ,SP6-R18-WIN-2.iso,SP6-R18-WIN-3.iso1.2.3 安装VC2005略。1.2.4 安装CAA API文件位于CAT_CAA-R18-WIN-1.iso与CAT_CAA-R18-WIN-2.iso1.2.5 安装CAA API 补丁文件位于SP6-R18-CAA-win-1.iso1.2.6 安装CAA RADE 在T18下 文件位于RADE-R18-WIN-1.iso1.2.7 安装windows 系统补丁winxp sp3系统可以不安装系统补丁,否则安装WindowsXP-KB926255-x86-CHS.exe1.2.8 系统配置首先要选择许可证CDC。通过D:DSB18intel_acodebinCATVBTLicenser.exe 选择:在同一个目录下运行CATVBTSetup.exe ,配置开发环境的预定义工作区,将C与CATIA集成到一起。1.3 注意事项(1)CAA开发环境的安装请按照前述步骤进行,尤其是VC的安装应在RADE之前。(2)RADE的安装路径不能有汉字或其他中文字符,不能有空格,在单独的文件夹T18,避免与B18内的内容冲突。(3)一般情况下一台主机上会有多个CATIA版本(R16,R18等);如果同时安装VC.NET和VC2005,会造成开发环境的紊乱,并破坏R16的可执行文件(bin内的动态链接库和其他文件),使catia不能启动。如果想在同一台电脑上同时开发R16和R18,可以在VC2005的环境下调用服务器上的R16,在本地调用R18。(4)以上安装路径为纯CATIA安装方式,不包含vpm,vpm的安装如下: 1.Lum在configuration tool中添加server名为:192.9.111.48 192.9.245.122.Java安装jdk和jer3.ENOVIAvpm设置jer的路径 tem路径4.Vault(可最后装)需要添加电子库文件VaultClient.PROPERTIES文件在D:DSB18intel_adocsjava下5.CATIA(可以在ENOVIAvpm之前安装但是都要装在一个目录下),将CATEnv配置文件中的java路径添加jdk与jer都可,一般选择jdk6.配置hostC:WINDOWSsystem32driversetc2 CAA编程思想2.1 CAA基本概念l CAA:Component Application Architecturel RDDE:Rapid Application Development Environmentl Workshop和Workbench:它们为CATIA的功能模块的组织。CATIA将其功能细分,每个人都可以选择自己的模块进入进行设计,简化了界面。 如下图:WorkshopWorkbench图 CATIA的Workshop和Workbenchl Toolbar:catia内部的工具条,可集成用户新开发的功能。2.2 体系结构在CAA中新建一个工程,文件结构树如下图所示:每个WorkSpace至少需要包含一个Framework。一个Framework包含了一个工程的所有需要的元素,也即是,一个Framework即可以是你的一个工程。Framework的体系如下图:可以将磁盘中的文件夹结构与上图对照。3 CAA程序组成下面对Framework的几个文件夹及其文件作简单的一个介绍。l PublicInterfaces:公共接口,在这个文件夹中是类的声明,即.h头文件。这些类可以为整个Framework的各个模块共享,也可以被外部Framework使用。l PretectedInterfaces:系统自动生成的module.h头文件,供编译连接时使用。这些模块只能在本Framework使用。l IdentityCard.h:本文件定义了所有用于编译使用此Framework的预定义Framework。即,在开发过程中你使用了系统或者外部的API,你必须包含此API所在的头文件,module和Framework,其中Framework的预定义就在这个文件中进行。l Cnext文件夹:包含了Resources和Code两部分,其具体的作用下文会具体阐述。l Module文件夹:Module为组织程序代码的一个基本容器。其结构如下图:图1.3 Module的结构图其中:LocalInterfaces中是仅供本模块使用的头文件集合;Src是所有本模块的.cpp文件集合;Imakefile.mk文件是所有本模块所包含的头文件所在外部Module的定义。在上面提到的IdentityCard.h中定义的是API所在的Framework,而相应的Module即在此文件中定义。在LINK_WITH后面添加需要连接的Modules。下面为VC中的文件视图:FrameworkModule4 程序建立与功能集成 4.1 CAA 程序开发前言CATIA二次开发的工具可以为VBA和CAA。VBA的特点是程序简单、编写方便快捷,缺点是API函数开放程度有限,一些复杂的功能不能实现;CAA的优点就是VBA的缺点,CAA的缺点就是VBA的优点。因此在对CATIA二次开发的时候,可以根据任务情况灵活选择开发工具。此外CAA还可以对LCA二次开发,因此掌握CAA的开发是很有用的。4.2 批处理程序与交互程序 CAA程序开发主要包括批处理程序 与 交互程序 两大类 。与交互程序相比,批处理程序有以下几个不同点:(1)程序开发的最终结果:交互程序生成 .dll 动态链接库;批处理程序生成可执行文件.exe。(2)结果运行方法:交互程序的.dll文件应拷贝到catia安装路径下(bin文件夹)的dll 库中,启动catia,即可启动开发的插件;而批处理的.exe 运行举例:1复制文件到*intel_acodebin*目录;2创建CATIA的运行环境 Env001或Copy_of_Env0011,主要是增加安装路径,运行程序所在的上级目录,两个目录之间用“ ; “ 间隔,注意分号的前后均不得有空格。3修改运行环境参数;红色为修改的参数,exportdrwfile.exe为可执行文件,参数1为输入的文件,参数2为输出的文件,参数3为导出的文件类型,Copy_of_Env0011为运行环境。注意:运行命令与各参数之间以空格间隔开。D:DSB18intel_acodebinCATSTART.exe -run "ExportDrwFile.exe D:CAATestKymcoAddMenuDrawTempA0.Catdrawing D:CAATestKymcoAddMenuDrawTempa1.pdf pdf" -env Copy_of_Env0011 -direnv "d:DSB17CATEnv" -nowindow4获得程序运行结果(3)程序入口:批处理程序需定义一个main()函数做为程序执行的入口,程序开始需创建一个进程,程序结束需删除进程;交互程序没有类似的程序入口和进程定义要求。(4)程序调试:批处理程序在runtime窗口输入可执行程序的名称、参数;在程序体内加上调试的参考信息后,可以根据需要检查程序的每一步执行;交互程序在runtime窗口输入cnext,进入catia操作界面。