PLM之家PLMHome-工业软件与AI结合践行者

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

[复制链接]

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

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

mildcat 楼主

2018-12-15 10:53:15

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

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

x
NX二次开发源码分享:判断当前工作部件是否为CAE的类型. G- j+ o2 F, e/ a  l3 `

4 _* w( ?( x9 }  g* l一个很好的方法是通过typeid去判断对应的类,直接方便。3 v1 _# M, @; h: n2 b2 @
另一个方法其实就是转换,使用dynamic_cast 如果转换成功,也能说明是对应的类型
4 U9 }3 q; Q/ h- y$ _1 d[mw_shl_code=cpp,true]void MyClass::do_it()
2 j: B% t! n3 K{$ H, m! H; s- S1 v( a
    BasePart* wp = theSession->Parts()->BaseWork();1 J' H9 p( w1 C
5 r1 r5 \( W  n& \) w% t: P; Y) B, h
    if (typeid(*wp) == typeid(NXOpen::CAE::SimPart))& P4 V& m  I$ \8 o' X6 I; W
    {
2 ]  w6 Q/ ~; ~9 A+ s; M        print("SimPart");
  v% z# c- f7 v  c' ^2 o; R; O    }
( v' [5 P& R7 x" H  C    else if (typeid(*wp) == typeid(NXOpen::CAE::FemPart))7 e. `% _# f! e; v% a, \& n
    {. i' v/ Y5 ?" F! A1 k
        print("FemPart");4 T* T2 e, l& c$ Q- k( r8 T
    }- o) O$ Q+ K5 N% E5 s- v9 j3 B  C  ^" I
    else if (typeid(*wp) == typeid(NXOpen::Part))
  k$ P; Q$ m- R& D) i    {1 M4 w; `+ S( H" f# P
        print("Part");
& o4 r2 c7 E. F) Q8 k    }/ N# K; v% C8 k
    else) Z  g+ b! g" B* R- o: H
        print("Something else");+ h5 x  F* b: b. B" z

9 S6 W0 n8 t; \! }* L}[/mw_shl_code]
该会员没有填写今日想说内容.
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了