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

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

[复制链接]

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

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

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型
4 M/ n6 u0 x; ]! T8 h8 y* }4 z! K, i# a. T* A, L3 R
一个很好的方法是通过typeid去判断对应的类,直接方便。
  Y8 X% L& C! R另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型  S* Y7 W/ j! I
[mw_shl_code=cpp,true]void MyClass::do_it()
& [3 h. \* l6 e& {* {4 `; h  ?{
- ^* {) H2 q/ [. B+ y    BasePart* wp = theSession->Parts()->BaseWork();
7 X" L3 W) K5 \3 }6 R6 }1 i9 k* V: B8 q4 ]; t+ c4 C
    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))
6 a2 r- C# i. a7 G1 U% H9 q7 Z    {) K. s: u& y% X: ^' Z% i
        print("SimPart");
; C( \9 I# ?/ J# V    }
: h, D8 ~4 I  M( v, m    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))4 k. H9 u- c8 ^3 B; z
    {" a" e; K+ e. ~" s, R0 s( U) {, M
        print("FemPart");- o( G* n3 a6 ^0 N0 u: ~
    }* R% q! a0 ?, w, {8 x6 Q# i" i/ _
    else if (typeid(*wp) == typeid(NXOpen::Part))
3 k0 w8 h5 H! u: x. W    {6 C5 }& G% h+ }( k4 b
        print("Part");+ D; c- v- |2 z4 U' H0 o
    }
) p' ]5 I& _! I) b% |% y: d+ F7 x% _    else% a# [5 ^( f  ]4 K2 @* \
        print("Something else");
$ z, S/ v7 u: ?
5 T0 u- i" N/ R* x}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了