|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
CATIA二次开发入门教程---1 CATIA 二次开发介绍 / ?( u C* M' \8 f$ ^
u2 ]9 @# v" E$ ~4 q
CATIA(Computer Aided Three Dimensional Interaction Application System),计算机辅助三维/二维交互式应用系统)V5是IBM/DS基于Windows核心开发的高端CAD/CAM软件系统。目前CATIA最新的版本为V6。CATIA系统如今已经发展为集成化的CAD/CAE/CAM系统,它具有统一的用户界面、数据管理以及兼容的数据库和应用程序接口,并拥2多个独立的模块。 在国内,CATIA应用CAA 组件应用架构进行二次开发刚刚开始不久,相对人员比较少,资料不多,由于CATIA软件功能的强大以及CAA二次开发功能的强大,探索和实现基于CATIA的二次开发技术具有很好的应用价值。
1 e/ B: w3 M0 w6 N8 T0 d% Q; \
& v- ]( E1 S- PCATIA的二次开发方式 作为强大的工程软件,CATIA具有很强的开放性能。用户可以按照自己的需要,采用不同方式进行各种程度上的开发。 CATIA二次开发接口是通过两种方式与外部程序通信:进程内应用程序(In-process Application)方式和进程外应用程序(Out-Process Application)方式。进程内应用程序方式下,CATIA软件与脚本运行在同一进程地址空间,比如宏方式(Macro)。在CATIA环境下通过菜单记录宏(Record Macro),宏记录后,生成VB脚本(Visual Basic Script)序列,当宏开始运行,CATIA就处于非激活状态,因此不能宏调用之间存储变量的值,这种方式比较简单,在CATIA环境就中可完成。进程外应用程序方式下,CATIA与外部应用程序在不同进程地址空间运行。在CATIA运行的情况下,外部进程可以通过接口驾驭CATIA,创建、修改CATIA环境和几何形体的数据、尺寸等,同时支持对象连接与嵌入(OLE,Object Linking and Enbedding)。 具体来说,CATIA的二次开发主要有两种方法:使用宏对CATIA进行二次开发和使用组件应用架构(CAA)对CATIA进行二次开发。
& T7 U% g! _) Z- q
- |$ K# e& _5 ?3 g8 U* T" n! u1 j
! ^' Y; S! {8 I: E) d h# w使用宏(Macro)对CATIA进行二次开发。
f) n9 J; [2 I/ b/ L: ^" B& h/ H) Q8 F" M' [ j2 L
可以用于自动化(Automation)组件,使用VBScript作为编辑工具,这是一种交互方式的定制。可以记录用户的操作过程,自动生成代码。CATIA提供了Automation API用于VBScript对CATIA的二次开发,Automation API具备了与任何OLE所兼容的平台进行通讯能力。自动化应用接口可以调用InputBox和MsgBox函数获取用户输入信息和进行输出,而对于NT用户则可以应用Visual Basic来定义更为复杂的输入输出面板。运行的时候可以给宏关联一个图标,并置入CATIA显示框架。
- ~) `( M s; W' G
: `3 W U. |" E使用组件应用架构(CAA)对CATIA进行二次开发
s4 q6 S! ~' t4 K- A p& K' S
( o0 @+ \1 g* ^4 }/ A# S2 u. ~Component Application Architecture (CAA) 组件应用架构,是Dassault Systemes产品扩展和客户进行二次开发的强有力工具。Dassault Systemes提供的CAA产品包括如下内容: CAA RADE 快速开发环境,基于Microsoft Visual Studio , CAA CATIA V5 API, CATIA V5应用开发工具 % CAA ENOVIA LCA V5 API,ENOVIA LCA应用开发工具; CAA DELMIA V5 API,DELMIA V5应用开发工具; CAA ENOVIA PORTAL V5 API ,ENOVIA PORTAL V5应用开发工具快速应用研发环境Rapid Application Development Environment(RADE)是一个可视化的集成开发环境,它提供完整的编程工具组。RADE以Microsoft Visual C++6.0为载体,开发工具完全集成在了VC++环境中,并且提供了一个CAA框架程序编译器,但同时也限制了VC++的部分功能。可以说RADE是目前所有高端CAD/CAM开发环境中最为复杂、同时也是功能最为强大的一个。 CAA采用面向对象的程序语言,开发过程可看作是其组件对象的组合和扩展。CAA采用组件对象模型(COM)和对象的连接和嵌入(OLE)技术1 n2 J# j. i: u8 u5 w" n8 j1 E
2 I+ Y5 L7 P# j0 }) _" X) A* j
) Z2 _; }* g+ P' w: ]" w, D
" h! X, k0 l& p7 T' J: o |
|