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二次开发源码分享: 获得零件下所有节点

[复制链接]

2018-2-22 13:10:11 2691 0

admin 发表于 2018-2-22 13:10:11 |阅读模式

admin 楼主

2018-2-22 13:10:11

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

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

x

2 S2 e& O) z2 a* C5 K
! M7 O3 c5 J, Q0 A. P2 z2 y; I获得 CATIPrtPart
: b& c4 p1 p5 X, C
( M2 ?. S9 J3 ~$ A$ I参考代码如下:
; U/ x- r: ]8 |& F) g/ R9 v- zCATIPrTContainer_var spPrtContainer = spContainer;
0 A9 S3 c% f) jCATIPrtPart_var spPrtPart = spPrtContainer ->GetPart();# H$ p: a4 S8 Q' J+ N- D

1 P: x3 i! y: ^$ E/ H. |获得零件下所有节点6 q2 f0 D% U  x: [7 b
方法一:利用 CATIDescendants 接口
2 v5 f5 a) K/ rCATIDescendants_var spDescendantsOnPart = spPrtPart;
4 M3 }, a. t* M# M. sCATListValCATISpecObject_var spSpecObjects;+ L; @+ b2 h2 P2 A" G8 Q! @
piDescendantsOnPart->GetAllChildren("CATISpecObject", spSpecObjects);
7 X5 ~1 b2 O7 w5 L8 y+ l0 v3 h) T- O: a% F$ @
方法二:利用CATContainer 中的ListMembersHere 方法/ }3 U# F" M" t5 v; H8 L
SEQUENCE(CATBaseUnknown_ptr) ListObj;5 I; m4 \  o  h" G$ a: j+ r
long NbObj = piRootContainer->ListMembersHere("CATISpecObject",ListObj);
" h, S- v3 T0 m" ufor(int j=0;j<NbObj;j++)//注意从0 开始
9 ?& L% E9 S$ q& W$ \9 b{}
5 P3 v2 t7 _6 A- x' Y注意:"CATISpecObject"表示将所有的节点列出,如果想要只列出某种元素,可以将该
7 p: Z, _  c. N7 n$ r' b4 s参数设置为相应的接口,例如"CATPoint"表示所有的点。
5 }; P1 s! _0 p
5 X" q" ~5 J" c& d8 h0 g& W
+ g5 W  f# M+ `: s获得参考平面" X* Q; H0 Z6 d' b# u9 @
参考平面包括 XY 平面、YZ 平面、ZX 平面,参考代码如下:
; q" D# o) ?9 p  \: o  DCATListValCATISpecObject_var spReferencePlanes;
) z' w% L% R  I  h, RspReferencePlanes = spPrtPart->GetReferencePlanes();* d. W. i0 v0 s& s2 l. E+ [
注意:spReferencePlanes 为包含三个元素的数组,数组元素依次为xy 平面, yz 平面和zx 平
' X0 G& M; m4 ]: @面。
3 t; e8 ]1 h' d& ~! D+ E如果要使用 yz 平面,则参考代码如下:
6 S( N. T( x% YCATISpecObject_var spyzPlane = spReferencePlanes[2];
9 D# L2 f2 `, h3 q5 m0 H
" J+ N; X4 r( d' ?
% d! w) T4 O$ A: f+ r% ?获得轴系
0 h6 m1 `: C: g7 B9 P参考代码如下:
7 @" ?- g, Z* ^8 J) Q8 MCATIMf3DAxisSystemManager_var spAxisSystem = NULL_var;) [8 T) v& W2 L: ]1 d- f: M
spPrtPart->QueryInterface(IID_ CATIMf3DAxisSystemManager,(void**)& spAxisSystem);
. t$ T, V- n# _* W
$ f: f! s' p+ O. i, I5 l//得到的所有轴系
- j5 b" W+ F4 F' @  M: T* O/ }4 ]CATLISTV(CATIMf3DAxisSystem_var) oAxisSystemList;
- J7 G! u: ~6 u+ h0 V0 A0 uspAxisSystem ->GetAxisSystems(oAxisSystemList);& }( p  D* U. {/ Y# ?
9 r. u4 q7 l, s
4 R' X. y7 n4 C( ]. I6 g
9 G, w! O1 d9 U) g' c- j* ]  n. Q9 c8 u
3 x) s% ^  C5 M5 n2 I: T0 ?8 i
1 w6 H: n. `6 t. x2 r8 ^
" B; U5 v1 _& z& ^0 X
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了