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

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

[复制链接]

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

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

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型
6 K/ A: y: r8 z, |* V# f
, @9 @- y1 }9 x6 i一个很好的方法是通过typeid去判断对应的类,直接方便。
; q2 P; `7 h, W- S: h; M另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型
" q/ l% W) `0 D% C+ R) u* D[mw_shl_code=cpp,true]void MyClass::do_it()' S! K5 F0 z# J3 f1 P- J5 d  ]
{
' V8 q# i/ ~9 f    BasePart* wp = theSession->Parts()->BaseWork();
- M2 v8 {; Z+ C4 f! f& U
" P* p3 j$ {4 ~2 z3 I    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))/ p3 {: f" d; O7 e7 }8 E2 l8 m$ y
    {$ U8 ]7 }  O% }( q- `9 V& z
        print("SimPart");
  P' S0 [5 v1 b( {0 {    }
+ O1 G; z! F; Q6 r7 w/ B  y    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))& o% b6 O/ N' z4 a5 P  P
    {- x0 r' ~  I3 I' z
        print("FemPart");
- v7 k% c: w" d$ w5 L9 R    }& I* Q; U# [, v/ \0 g& [$ d
    else if (typeid(*wp) == typeid(NXOpen::Part))9 ~: g/ Y3 D, |' c+ L
    {! `+ P9 M: y) A4 z* Y7 j" W
        print("Part");
6 C/ p& P# T% g# k  E    }
: v; R% G4 e) m. y* j    else
0 f6 J9 Q+ F5 @& w4 v5 [7 X" \, q        print("Something else");$ u6 l6 l8 s+ C5 G( A

$ w* Z4 o2 ^; k9 m& v& [3 k# z}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了