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

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

[复制链接]

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

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

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型2 B, x0 W8 H( k8 g7 t& |( x0 _

$ B& g( M) O# z4 J) r一个很好的方法是通过typeid去判断对应的类,直接方便。; s# ^. h+ [7 l- P1 T  ^
另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型
# h8 _. j" I4 q- g0 p% X# z[mw_shl_code=cpp,true]void MyClass::do_it()* V/ G4 ^/ U! }" J& }
{
; D! p2 o* b; }% W+ z5 n, b/ Q9 ~    BasePart* wp = theSession->Parts()->BaseWork();+ }  R+ o3 Y- z! J+ G$ L2 @7 ]
( ~- r. [, g# Q
    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))
" b# B6 @( D. L    {( o( |; Z+ [+ j5 L" Y
        print("SimPart");
8 ], P. F! B4 M# B& k8 v    }
. ^  ]6 n$ T! S: M- E) e    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))& H4 _$ K; d. s, ]) y
    {# Q( ^) D! f, _7 S1 B! f
        print("FemPart");
/ M% u4 F; L) \6 j" {# C    }
& I6 _! _% o) k- J    else if (typeid(*wp) == typeid(NXOpen::Part))$ i: |, x  Q, U" a5 e
    {
" n* ]( x, w: P4 c% O* N        print("Part");* j5 i8 U9 t# o9 g2 H3 @# \
    }) \0 V0 Q+ H$ G$ W9 b: b; k
    else: p' |7 W6 c% G: L8 t) i  W7 Y1 m
        print("Something else");
* X1 C% H0 H: D# D( C3 b* l6 R* Z3 T; p6 m
}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了