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

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

[复制链接]

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

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

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型
" b7 e) {3 ~# X" ?; ~
& L; X. w- h6 S( C一个很好的方法是通过typeid去判断对应的类,直接方便。5 s  Q+ [: S  }- ~6 q
另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型
2 {+ L6 e; q7 u: v- N8 v# }[mw_shl_code=cpp,true]void MyClass::do_it()
1 R& b/ {. a: K8 U( d% r; `) Z{( z, \* C& _" p  m% x
    BasePart* wp = theSession->Parts()->BaseWork();( [8 `# L1 i/ s# j7 M

! @' t% O0 d3 [$ C" j4 A    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))
; q! `3 O8 R" z! d' u6 j. z    {4 l/ x  q* a1 d/ R! n' z/ F
        print("SimPart");
& L; C9 `) N8 D    }/ Q$ A5 f) q* y$ v
    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))
- a2 A  c+ J3 J! V/ Y! B- b8 y& ^    {
% |  J3 h( R0 Q( |( A$ B        print("FemPart");+ ], G8 m4 M! |+ i1 a2 m& n7 T
    }& J/ w- B9 ~* d9 j: `% O1 O
    else if (typeid(*wp) == typeid(NXOpen::Part))+ E( p% i* i$ i0 b
    {! v( X1 E1 t4 W  L* D
        print("Part");1 P$ e7 n) y4 Y3 G; ?* P* x
    }
8 j, n$ V6 A1 ^0 I% Q$ s; _9 Y% a    else
( U* ~+ V# z  p        print("Something else");- `" G  K2 ^& v4 e
' ~5 ~6 H4 R2 f. X1 d0 p" D- l% s
}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了