| 会员登录 立即注册
关注公众号

关注公众号拿干货

CATIA论坛公众号
加入联盟

扫微信(sakula)入联盟

CATIA软件
风格切换

catia教程

搜索

CATIA联盟论坛

[CATIA VBA] CATIA二次开发技术简介

[复制链接]
CATIA基础教程 发表于 2019-9-4 13:48:57 | 显示全部楼层 |阅读模式
CATIA基础教程
2019-9-4 13:48:57 1098 0 看全部
  1.1 CATIA二次开发技术综述

  CATIA二次开发是用户通过某种手段实现对CATIA的功能定制的过程。用户可以通过特定的接口,并借助CAA、VB.NET、C#和Python等开发语言方式实现对CATIA的二次开发。其中,CAA与其他三种开发方式有质的区别,基于CAA的CATIA二次开发技术是通过CAA为用户提供的一系列函数和接口等并结合专门的编译环境实现的,通过VB.NET、C#和Python等方式进行的CATIA二次开发均基于Automation实现。本文主要介绍基于CAA的CATIA二次开发技术,对于基于Automation的开放方式也只简单介绍VB的方式。

  1.1.1基于VA的CATIA二次开发

  通过VB语言开发CATIA有三种方法,分别为

  Visual Basic(下文简称VB)

  Visual Basic Script for Macros(下文简称VBS)

  Visual Basic for Application(下文简称VBA)

  上述三种方法均通过Interface与CATIA之间建立通讯,关于VBScript、VBA和VB之间的关系具体如表所示:

  表1.1 VB、VBA和VBS之间的关系与区别表

方法

特点

VB

1. 可编制独立的程序;
2. 可创建ActiveX和程序服务器;
3. 可被编译;
4. 有自己的帮助文档;
5. 完整独立的版本;

VBA

1. 是程序中的主机,类似Office中的Word、Excel和PowerPoint等;
2. 提供含编辑器、除错器、帮助、对象浏览器、完成器的完整的开发环境;
3. 通过Tools-Reference可声明使用的对象库,在完成和对象浏览器之间建立通道。
4. 属于VB的一个子集;

VBS

1. 更简单的VB解释语言;
2. 可以调用CATIA对象;
3. 无数据类型的区别,系统总是动态的调用函数和对象属性。
4. 属于VB的一个子集;

  1.1.2基于CAA的CATIA二次开发

  Component Application Architecture(组件应用架构,简称CAA),是CATIA的一整套C++函数库,该函数库在CATIA运行时加载。用户通过安装快速应用开发环境(Rapid Application DevelopmentEnvironment,简称RADE)模块,可以在C++编程环境下编制程序,与CATIA进行通信,从而实现对CATIA二次开发。CATIA本身按照组件模型建立,用户可以开发自己的CAA组件,对CATIA v5进行扩展;也可以把用户自己开发的CAA组件结合起来。实现用户自定义的应用。

  RADE是一个可视化的集成开发环境,它为用户提供了完整的编程工具组,以Microsoft Visual C++为载体,开发工具完全集成在VC++环境中。RADE为用户提供了诸如TCK(Tool Configuration Key)、MAB(多空间应用生成器)、CUT(C++单元调试管理器)、MKMK(CAA编译工具)、CID(C++交互式面板)等工具。

  1.2 CAA入门必备知识

  在学习基于CAA的CATIA二次开发技术之前,读者应具备一定的编程基础,最好是能独立完成一个C++小程序的编制,并对COM技术有一定的了解。

  1.2.1 C与C++编程基础C语言是大学理工科的必修课程之一,由于各种各样的原因大多数人可能也只是学过了就忘了,即使是拿到了计算机国家二级证书的人,可能也不会写一个Hello Word的小程序。所以,想快速上手CAA读者必须具备一定的C或者C++基础。由于C和C++也是一门庞大的学科,且作者能力有限,故本文将不对C和C++的只是展开讲述,读者可以去某网课平台上观看各位C/C++大佬的视频,千万不要抱着一本《C++从入门到精通》去啃,这样容易让你学习CAA变成一个从入门到放弃的过程,这里不是否定这本书,而是我们的主要目标是CAA,所以不必在C/C++上花费太多的功夫。1.2.2认识COM技术由于作者也非计算机科班出身,关于COM技术的相关理解也是参考网上的一些文章。1.3如何获取帮助资料

  参考的帮助文档共三个:

  (1)CNextHelpViewer.exe中提供了常用Interface及函数的定义及继承关系,改功能可以通过集成了RADE开发环境的VS打开,如图所示,也可直接从本地端启动,本地端存放位置为RADE安装目录下的…Intel/code/bin目录下。

  (2)百科全书CAAV5HomePage.htm提供了命名规则,编码规则和创建方法等实例和讲解。使用百科全书用户需要安装配置JDK环境,具体会在后文中讲述,百科全书存放于CAA安装目录的…CAADoc/Doc/Online文件夹下。

  (3)CAA Automation帮助文档,该文档存放于CATIA安装目录的…/B26/winb64/code/bin文件下。

  1.4 WorkSpace结构介绍:一个WorkSpace中至少包含一个FrameWork,一个FrameWork中至少包含一个Module,所有的功能实现均在Module中完成。

  Workspace:用于存放开发的项目或工程,类似于VS中的解决方案。

  Framework:包含了一系列Module,这些Module被设计成为可以一起实现一定的功能。

  Module:实现某种功能程序的集合。

  1.5 CATIA界面框架

  1.5.1主界面组成元素介绍

CATIA二次开发技术简介65

  1.5.2区别Workshop与Workbench

  Workshop是由与CATIA文件独立的命令组成,workshop由命令组成,包括如在“文件”菜单中的“新建”“打开”等这些命令无论何时都是可用的和必须激活某个workbench后才可以使用的,比如基于草图的特征。一个workshop可用包括很多个workbench,一个workbench包括很多个add-in。同时只有一个workbench可用。

CATIA二次开发技术简介64

CATIA论坛官方公众号
  • 您可能感兴趣
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表

查看:1098 | 回复:0

CATIA教程| CATIA视频| CATIA培训| CATIA下载| CATIA安装| CATIA插件| CATIA入门| CATIA V5| CATIA V6| CATIA论坛
联系电话:18982019507 地址:成都市青羊区二环路西一段155号天祥广场4栋1801
版权所有 ©软易达 •( 蜀ICP备14018086号 )Copyright © 2001-2013 Comsenz Inc. All Rights Reserved.   Powered by Discuz! X3.4
联盟微信客服:
silhouette023CATIA软件


CATIA技术群

微信公众号 CATIA微信公众号
“CATIA联盟”