PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

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

[复制链接]

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

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

admin 楼主

2017-12-27 08:59:02

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

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

x
新建文档是CAA开发中的常用操作,分为在批处理环境下新建和在可视化交互环境下新建两种。下面以在批处理环境下新建为例,简要介绍步骤及涉及的方法。2 ]# D8 K# b3 }
+ u, L" f7 z  T  N
创建会话
4 o# q. A$ }5 I. B8 L5 A% t4 S5 Q1 r9 ?2 Y, R
这是一个批处理程序,在使用文档之前首先需要打开一个会话。在CAA中,打开一个会话可使用全局函数Create_Session。
2 ?+ l6 ]+ J' @6 g% A( U5 y
" ^1 g2 j) C7 }. E1 i( d- W1 Q  h% fchar *sessionName = "CAA2_Sample_Session";9 @3 Z5 P0 A3 k. l
CATSession *pSession = NULL;/ m* I  w7 _6 ]* g# V: c
HRESULT rc = ::Create_Session(sessionName, pSession);
" k3 V2 k* O6 F$ \+ p! a, d创建文档) |) ^2 ^, X& ]

. T: S" k! m3 B9 X会话打开之后,可以使用CATDocumentServices的静态方法New创建文档,该方法创建一个文档并对它进行初始化,使其可以被加载、存储和编辑。在该例子中,使用“Part”作为这个文档的类型,在交互式的模式中,这是使用File/New操作后显示的名称,不是文件的类型,即在这里不要使用“CATPart”。
5 z* u; m& T/ c$ R2 ]) ?- T& Z
$ ?* p* ], ~$ v" q, v/ DCATDocument* pDoc = NULL;
- l) f" y: d; ?0 ^* w4 ?rc = CATDocumentServices::New("Part",pDoc);
; u+ ~) m3 {1 u3 j% G" Eif (NULL != pDoc) cout << "New document created OK" << endl;
& e7 \3 \. h9 B1 |1 I; Z保存文档* e0 R8 M0 p4 G8 `' r' o1 x) h! q. J# l
/ _9 O# b! x/ E7 u5 X  y1 Q
使用CATDocumentServices的静态函数SaveAs保存文档,该方法使用指向前面使用New方法所创建文档的指针作为第一个参数,用文档文件名作为第二个参数。  A! V( g6 w$ ?( o# Y  `
; h( t8 x% r; E2 c: k5 X. D
rc = CATDocumentServices::SaveAs (*pDoc, "TestPart");& @" h( O) c6 T7 s
if (SUCCEEDED(rc)) cout << "Document saved OK" << endl;
- N. n+ V/ {% c6 g; g, ~移除文档
+ u* F; q$ Z8 s0 m% D- s7 s' e( s: h1 D; c& g# R
在同一个Session中如果你要再次打开文档,有必要在保存完成以后从会话中移除文档。如果不需要再次打开文档,你就无需担心文档从会话中移除的问题,因为删除会话时会自动将文档移除。使用CATDocumentServices的静态方法Remove可以从会话中移除文档。
' O% n; A2 e( Y/ k, ~& B/ ~0 s* B" F5 v0 ]. y$ L8 L
rc = CATDocumentServices::Remove (*pDoc);. `) {* f- |) a$ D- N
if (SUCCEEDED(rc)) cout << "Document removed OK" << endl;! C1 S7 t7 t: K6 @
pDoc = NULL ;5 y5 N1 ]! I8 C  q, Y8 d
删除会话
5 N( S2 h6 O$ r9 i( ?! _
+ x8 v3 @- U9 `1 R在程序的最后不要忘记使用全局函数Delete_Session删除会话。0 }8 l* D2 Y5 H; x# ~3 h* }

1 K( h( B! U5 trc = ::Delete_Session(sessionName);  z8 O+ Y$ d7 l$ w
if (SUCCEEDED(rc)) cout << "Session deleted OK" << endl;
* w$ k4 W- @2 j+ m# l
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了