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

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

[复制链接]

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

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

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型
5 q1 M# l+ a6 I, J( s, E8 _  A
/ _7 X( ]) g4 f# E一个很好的方法是通过typeid去判断对应的类,直接方便。; I! H  ?9 l- u. `1 `! ^8 |
另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型
& r: \. x/ @( B( ?9 v- I7 ^[mw_shl_code=cpp,true]void MyClass::do_it()/ ~  `, K2 k4 J3 D) z1 G. Z
{
, V3 [2 ^0 u7 s  G5 m4 B- f/ e    BasePart* wp = theSession->Parts()->BaseWork();4 G. Z: q2 |- c0 o! n; y3 t

* g" R- v  V: |8 `# a9 v$ U9 S    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))
# ]. Z0 g3 X; c" R7 m- P& X: K    {! a( x. }5 U" s  R$ s8 F9 k6 Y! e
        print("SimPart");
/ q' o# {6 E/ V8 N5 K. t- k  X    }; P" ~( f, z0 K* @& z8 ~7 b
    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart)); `) ~  e5 D& o( G
    {6 a- |% f6 c& \8 z/ U8 u
        print("FemPart");
/ W. ]7 r, W! E3 s, h4 D* c    }$ z; J& g( [3 N. L8 v; E
    else if (typeid(*wp) == typeid(NXOpen::Part))
. c5 ?& @7 K& L- c# P: D: k    {* o! t5 `1 T& J9 f' I
        print("Part");
, N& N4 y# N( A& `! D6 q- n    }6 [2 [4 h1 x9 z4 r' Y
    else" X2 |5 o6 F) Z2 D
        print("Something else");
% m; q0 }. F3 M8 u. z( @* n, `0 e3 N; p: y7 e9 r* m6 h
}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了