PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

PLM之家PLMHome-国产软件践行者

CATIA 二次开发源码分享: CAA 如何新建一个文档

[复制链接]

2018-2-28 06:22:14 3349 1

admin 发表于 2017-12-27 08:59:02 |阅读模式

admin 楼主

2017-12-27 08:59:02

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
新建文档是CAA开发中的常用操作,分为在批处理环境下新建和在可视化交互环境下新建两种。下面以在批处理环境下新建为例,简要介绍步骤及涉及的方法。3 ^% V( c- T, p' R5 r

  f9 g" F$ {$ S/ v" u: l  w( y创建会话
6 r2 M* F! D3 c% X- `) a
, i9 n, Q6 ^- L% x3 n这是一个批处理程序,在使用文档之前首先需要打开一个会话。在CAA中,打开一个会话可使用全局函数Create_Session。
5 G2 ~) v/ `% x0 v9 F: E. \
2 ?% w! @6 q6 w& uchar *sessionName = "CAA2_Sample_Session";8 K( {% N! f2 W, I3 Y0 B: M/ k; v+ ]
CATSession *pSession = NULL;2 U7 A8 |' U5 ^0 ]5 C
HRESULT rc = ::Create_Session(sessionName, pSession);
4 o* ~& e2 Q$ A创建文档
. ~, |7 z* g+ v6 E7 S/ T2 {. a( u; e: y
) P+ p7 Z  g( Y3 Q# M- C) e会话打开之后,可以使用CATDocumentServices的静态方法New创建文档,该方法创建一个文档并对它进行初始化,使其可以被加载、存储和编辑。在该例子中,使用“Part”作为这个文档的类型,在交互式的模式中,这是使用File/New操作后显示的名称,不是文件的类型,即在这里不要使用“CATPart”。7 s/ E# K1 i9 r. B* U0 _3 Y
  h; {. @4 u/ m5 ?
CATDocument* pDoc = NULL;; y- @7 \5 r3 A. ~; ~4 C1 Q! I
rc = CATDocumentServices::New("Part",pDoc);' K, D0 `7 c) c5 {& u, d
if (NULL != pDoc) cout << "New document created OK" << endl;. X, F, {- a& {
保存文档% p* |: R7 S% V
, ~* t9 V1 \' a6 u
使用CATDocumentServices的静态函数SaveAs保存文档,该方法使用指向前面使用New方法所创建文档的指针作为第一个参数,用文档文件名作为第二个参数。
1 d8 r( v$ q% u5 z8 i( p0 f, a2 g' ~  p. R; V2 K: c" M
rc = CATDocumentServices::SaveAs (*pDoc, "TestPart");
9 G8 G# Q# G% Y- R8 Y0 Iif (SUCCEEDED(rc)) cout << "Document saved OK" << endl;
, D2 e- x) ?8 ~& f" Z' ^# O# z移除文档
3 m- q7 M8 ~0 L! q9 J6 L2 H- v1 W1 y6 k) }" f
在同一个Session中如果你要再次打开文档,有必要在保存完成以后从会话中移除文档。如果不需要再次打开文档,你就无需担心文档从会话中移除的问题,因为删除会话时会自动将文档移除。使用CATDocumentServices的静态方法Remove可以从会话中移除文档。
  |# T/ y& @. m8 A3 G2 F* D/ F, d4 u+ d9 s+ o% r. q8 k/ s' z
rc = CATDocumentServices::Remove (*pDoc);
8 G" u  z" U- @$ n& vif (SUCCEEDED(rc)) cout << "Document removed OK" << endl;
  z5 S; i1 }" e7 }, [pDoc = NULL ;/ s# b" J( j" V+ j4 ~2 V
删除会话3 y4 @; r2 }9 \( [. g5 R* H$ M
, U* `( C" `# M# k  K& e
在程序的最后不要忘记使用全局函数Delete_Session删除会话。9 R  c# \8 R2 M/ L2 {) U

: |- E) {2 ~6 X; b  B1 n: [rc = ::Delete_Session(sessionName);2 H  s; m$ I# Z" \% T9 {2 f
if (SUCCEEDED(rc)) cout << "Session deleted OK" << endl;
! U# y! [+ D7 g5 c. n8 k
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

cwp86 发表于 2018-2-28 06:22:14

cwp86 沙发

2018-2-28 06:22:14

显示所有内容
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了