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

[二次开发源码] NX二次开发源码分享:判断当前工作部件是否为CAE的类型

[复制链接]

2018-12-15 10:53:15 1694 0

mildcat 发表于 2018-12-15 10:53:15 |阅读模式

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型6 Q* C7 |3 ]. y- }8 z/ e% ]7 c

8 L! V: T9 Y$ b; T5 C+ H7 T一个很好的方法是通过typeid去判断对应的类,直接方便。. Y! B0 y' Q! d9 @4 {2 P
另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型
* g& G0 L4 ^2 e[mw_shl_code=cpp,true]void MyClass::do_it()( z3 D* j" o' H  }1 Y) C
{
! S( `  w* F0 \    BasePart* wp = theSession->Parts()->BaseWork();
# f% e7 R7 H* ^) ], I1 [. Q1 i. V; A; x8 {1 x" r. S( u) z
    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))8 _* F* u- S2 r2 |
    {
& @: {( W' ?( N7 Z& t+ r6 T        print("SimPart");1 z: L- J; l$ O/ }% D" z$ e/ t/ j
    }
7 k* \' }/ v8 z& m, z    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))7 f  T) D0 _2 k7 K6 Y, R: _
    {6 l1 n2 S) @  x# P1 P
        print("FemPart");
- w8 t; x" C& ]2 O6 O    }
; v. H& }7 q2 L3 O; f; D    else if (typeid(*wp) == typeid(NXOpen::Part))8 L4 c- X/ I3 ?+ i5 B
    {
# o( X0 o* r3 r        print("Part");
" c, f! J7 ?. I/ X, }$ e  g* C    }' u7 R* {7 ?( a. }9 Q/ x
    else, S3 Z- l* K5 v7 u- ~
        print("Something else");9 K. m' f0 i- ]7 g  q1 y9 u

! @1 x% ~7 G* [! h: L}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了