PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

320

主题

226

回帖

9784

积分

管理员

PLM之家NX|TC专家

积分
9784
发表于 2018-12-15 10:53:15 | 显示全部楼层 |阅读模式

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型3 l) t( v7 r- z! l( s5 c& L2 L

6 r' r1 X5 E! Z# ?/ ~9 p一个很好的方法是通过typeid去判断对应的类,直接方便。/ K5 P' a% B9 C2 Z
另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型* o4 C' ]0 r( J( X; l( u7 G
[mw_shl_code=cpp,true]void MyClass::do_it()
/ m% W9 h- J; L5 I0 N# C+ f8 ?% ^{: X( t2 n3 B9 C4 K6 }
    BasePart* wp = theSession->Parts()->BaseWork();" o8 {6 C+ t1 M( r$ d2 K/ W, }+ z

; e# f& C0 }; u$ T  u  S/ F    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))4 P: L0 p1 t8 r% X8 M
    {
' Q# ^, d' a" ]: l        print("SimPart");, W) o0 N4 i' ^' r2 E: z) k
    }% p" Q6 x/ M8 [/ K! F/ `
    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))
* i4 A. e7 Z/ E: f7 M3 V    {/ g. V" F+ R* q8 f# Y
        print("FemPart");2 R2 q$ d% L* q/ Z! k' z
    }
: a6 M! ]8 `  K5 U  [6 ^( g/ M    else if (typeid(*wp) == typeid(NXOpen::Part))9 A6 ~3 ~/ |5 T7 f" `' Z3 M/ M
    {
) [6 [( n: h. I! q5 N8 m8 l        print("Part");
0 V( A# j8 e6 ~) @    }
. M# Z0 I8 D; T+ W) T3 B    else
: z' B% q4 @4 l, \0 H8 Z6 n  K        print("Something else");0 x* ^9 b. z; u& L1 w; }8 r
" T3 Y' U6 t: {( ~$ e2 ?/ O8 Q" K
}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了