初识CAA

原创 2004年08月02日 21:59:00

 

刚开始学习CAA不久,满打满算也不过30天。其中还要去掉出去玩的,心不在焉的,吊儿郎当的时间,真正用在学习上的时间就不多了。

 

CAADS公司正对于其一系列产品,egCATIAENOVIADELIMAetc,进行二次开发的一个环境。与VC结合的比较紧密。CAAV4是用于Unix/Linux的,到CAAV5才移植到Windows系统,但是V4V5不是简单的版本升级,其实现方法上完全不一样,甚至连数据格式都不一样。比如说,CATIAV4的数据要想转到V5版本中来,需要专用的工具进行格式转换才可以。

CATIA是一个很专业的用于三维设计的软件,比Pro/EUG更好。我不是学机械设计的,所以我也不会用CATIA,也不会用Pro/EUG,好在哪里我就更不知道了,只不过大家都这么说罢了。DS的这一套东西用在飞机设计(波音,飞豹等)还有汽车设计领域比较的多,因为专业,所以庞大?呵呵,确实比较大,基本都需要工作站以上的机子才能跑。当然价格也很昂贵,不是一般的小公司有能力买的。

 

学习CAA的过程就是整天啃CAA的那个Encyclopedia和“研究”CAA自带的Case的过程,由于机械设计的专业知识缺乏,还是有点挑战性的。

CAA的介绍和安装在我收藏的一篇文章CAA及其应用》中已经有了详细的介绍,另外还有一篇pdf文档(暂时无法上传)介绍了CAARADE最起步验证是否安装成功。其中在Create/Update Runtime View之后,还可以通过Tools->Open Runtime Window直接输入exe的名字和参数也是可以运行的。

 

下面介绍一个具体的例子来说明工程中的每个文件是做什么用的。

1、      拷贝CAAProductStructure.edu你的文件夹,然后通过CAA RADE打开这个Case编译。

2、      File View标签里面可以看到一系列的文件。*.edu是一个Framwork(框架),*.mModule(模块),Module下一层次才是具体的CAA ClassComponentInterface等,整个层次就是这样的三层结构。

3、      CAAProductStructure.edu files文件夹下面有三个子文件夹,ProductedInterfaces下存放一些头文件,这些头文件基本是模块或者类、接口的头文件,只是说明可以被框架里的其他的类或者模块调用。IndentityCard文件夹下含有IndentityCard.h文件,这个文件中声明了这个框架中用到了哪些PrereqComponent(其实就是系统的框架),在开发过程中所用到的在这里必须通过AddPrereqComponent包含。还有一个文件夹是CNext,用CAA RADE环境编译后总会生成一个CNext.exe,这应该和这里的CNext文件夹有些关系吧,其中resources毫无疑问是定义资源的文件夹,对话框、菜单、位图等VC传统的资源都在这可以定义。其中需要注意的是默认的资源语言是English,在其中有一个French的文件夹,这里面定义了一套French的资源,如果添加一个Simplified_Chinese的文件夹,也可以定义一套简体中文的资源,这些资源的加载都是自动识别的,和操作系统有关,当然也可以定义其他语言的资源,具体的还请察看EncyclopediaCode文件夹下是定义dicoiid的,这也是和CNext有关的,如果没有这里面的说明,编译后运行CNext是没有效果的,因为和环境变量的那一套东西没有加载。这个CNext文件夹,在运行Create/Update Runtime View菜单后会在intel_a文件夹下生成一套几乎对应的东西,这一套是在运行的时候需要的,把intel_a文件夹复制添加到安装CATIA的地方去,执行CNext就会自动启动了开发以后的CATIA,这就使组件的奥秘吧,我也不太清楚。

4、      还有就是各个module的文件夹,下面有srcinterfaces分别包含了源文件和头文件,不用解释,每增加一个CAA Class或者Interface这里就会对应的添加文件。需要注意的是Imakefile.mk文件,这是一个声明动态链接库的文件,用到的动态链接库都需要在这声明。

文件结构就是这个样子。

 

使用CAA V5 Help Viewer可以给你很便捷的帮助,在CAA RADE环境中按Ctrl+F1键就可以打开Help Viewer。在Index下输入你想要找的类或者函数都是可以的。比如说输入CATIIner..就可以看到有接口出来了,这是一个读取产品惯量(其实是质量、表面积、重心和惯量等)的接口,需要用到这个需要在FrameworkIndentityCard.h中添加SpaceAnalysisInterfaces这个框架,还要在用到的地方包含CATIInertia.h头文件,在这个ModuleImakefile.mk中包含CATSaiSpaceAnalysisItf模块。如果不包含框架和模块会出现LNK2001错误,典型的有声明找不到实现的错误。

 

在开始动手之前当然还要看懂提到多次的Encyclopedia了,这里面有全面的介绍,有Index,还有Search。在动手之前,需要对各个模块是做什么用的有个大概的了解,还有把右下角的一个红色的RADE先看一下,其中介绍的怎么使用还是蛮详细的,还有规定了一些规范,在编程过程中是实用的,不按照它的rules来,可能会遇到意想不到的错误。慢慢实践,慢慢体会,知识源于积累的。

 

知道了文件结构和如果使用帮助,就可以开始尝试慢慢的开发需要的东西了。

 

 

Camera framwork调用结构

Java层:Camera类 client调用server端: framework/base/core/jni/android_hardware_camera.cpp 主要包含了camera jav...
  • u010860284
  • u010860284
  • 2016-11-14 11:18:24
  • 216

初识CAA

刚开始学习CAA不久,满打满算也不过30天。其中还要去掉出去玩的,心不在焉的,吊儿郎当的时间,真正用在学习上的时间就不多了。   CAA是DS公司正对于其一系列产品,eg:CATIA,ENOVIA,D...
  • Chinamming
  • Chinamming
  • 2013-11-22 00:25:17
  • 3680

debian 资源列表 source.list

debian source.list 大全 在安装raspberry pi的系统时,需要debian的资源列表。我将发现的资源列出来供大家参考。该资源只限debian,其中包含大量的第三方sou...
  • Botaruibo
  • Botaruibo
  • 2013-01-15 19:08:11
  • 2933

caa二次开发的安装

源运行程序放在了d:\win_b64 安装版catia: 1.开始->所有程序->CATIA P3->tools->Environment Editor V5R18  弹出CatiaEnvirom...
  • dongzhe8
  • dongzhe8
  • 2016-10-30 00:27:57
  • 1126

CATIA二次开发CAA实现MFC树形控件的方法研究

CATIA使用CAA二次开发的时候,如果需要对树形数据对象实现管理,使用树形控件是非常好的选择。但是,CAA本身提供的控件较少,多数情况无法较好地满足项目要求,如果你的水平足够高,也可以使用CATNa...
  • zhidingguan2875
  • zhidingguan2875
  • 2016-12-30 23:40:30
  • 1774

CAA视图处理

CAA中视图的处理分两种方式:1、CATICATI3DCamera 俗称照相机,此方法进行视图转换时,附带旋转动作;2、CAT3DViewpoint 3D视角,此方法进行视图转换时,无转旋转动作。 ...
  • streamluan
  • streamluan
  • 2015-06-09 14:20:10
  • 677

CATIA CAA 二次开发入门实例源码

  • 2009年07月18日 22:49
  • 357KB
  • 下载

CAA检查成为强制 保护域名所有者免于误签发证书

证书颁发机构授权(CAA)是一种可选的安全措施,网站运营商可以使用这些措施来保护其域名免于错误发布。它允许域所有者指定哪些证书颁发机构(CA)被允许为其网站颁发证书。CAA被配置为DNS记录。想要使用...
  • TrustAsia
  • TrustAsia
  • 2017-04-14 16:31:58
  • 1164

CAA的学习

CAA的百科全书目录为: CAA安装目录\CAADoc\Doc\online\CAACenV5Default.htm 1.打开CAACenV5Default.htm 2.学习百科...
  • dongzhe8
  • dongzhe8
  • 2016-01-17 23:06:07
  • 2318
收藏助手
不良信息举报
您举报文章:初识CAA
举报原因:
原因补充:

(最多只允许输入30个字)