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

[二次开发源码] NX二次开发源码分享:报告当前工作部件的所有属性

[复制链接]

2019-4-25 18:49:57 3943 1

admin 发表于 2014-11-4 20:48:40 |阅读模式

admin 楼主

2014-11-4 20:48:40

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

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

x

# G# f3 }1 B, `/ K% N2 A: INX二次开发源码分享:报告当前工作部件的所有属性' g5 @- J& f. S& \
主要是用过workPart->GetUserAttributes()获取属性信息;
* c0 A; A. }$ \* {1 b
  1. void MyClass::do_it()9 D+ z: p6 n1 n+ _6 a* ^) N
  2. {$ A+ l8 C# q9 @6 Y7 l
  3.     stringstream out;- [6 v* A$ I. L. R- N" r5 Y0 y( P- X
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();
    0 O1 y) ]- L- t
  5.     out.str(""); out.clear();
    3 X5 h7 c6 U4 R/ t
  6.     out << "\nAttributes found: " << infos.size() << endl;1 t9 Q9 x0 r. P. Q& k9 {- a. N
  7.     print(out.str().c_str());
    ' e4 L7 g, s1 s, A8 h6 ~/ v

  8. . X+ `. F3 p2 H* U! s# R) B
  9.     for (unsigned int ii=0; ii<infos.size(); ii++)4 C6 w: K8 I: T7 A9 l
  10.     {" z' v1 ?, j( ]1 N9 q
  11.         out.str(""); out.clear();
    8 S* a8 n' r: `" n/ p9 R& |2 D
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;, l3 n, a& Q/ C2 J3 \+ d0 D
  13. - [. }" q+ Y! x* @1 T- M6 M
  14.         out << " Array: " << infos[ii].Array << endl;9 Q: p0 L0 N5 ]7 C7 E; |* P! X% l
  15.         if( infos[ii].Category.GetText() )
    0 _# r% J. a4 m( j
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;
    ) V; }- W, c+ e& Z7 n& M' ^
  17.         else, r+ I( ]4 I& m& O( H4 q
  18.             out << " Category: NULL"  << endl;
    / |6 I, b* x8 v! x# [) J
  19.         out << " Inherited: " << infos[ii].Inherited << endl;1 J) D6 w$ l0 @# Q3 N9 f% A$ Z3 q
  20.         out << " Locked: " << infos[ii].Locked << endl;
    : \' J/ }% {( o/ p7 _- y5 a
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;8 a0 n+ P/ S) H( J. c/ |4 `, f
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;
      z9 I; Y) n9 b0 h% ?3 }
  23.         out << " Required: " << infos[ii].Required << endl;$ [* b. A5 P3 s5 e4 S4 t0 h
  24.         out << " Type: " << infos[ii].Type << endl;9 E; T6 E  l% L) Q0 N0 S4 P+ L
  25.         out << " Unset: " << infos[ii].Unset << endl;
    3 O' }; T5 U* W7 V  q# \, y3 W' j

  26. " f2 t. M. g) W& E2 }
  27.         swiTCh ( infos[ii].Type )
    6 {' i  u6 B! h& y. L7 W
  28.         {  E5 o4 {: j' ]9 d. Y; _$ K( Y
  29.         case NXObject::AttributeTypeInvalid:
    2 I1 Y: }- r7 T# O1 ]! @
  30.             out << " Type is invalid." << endl;
    9 H+ P9 \7 _! [& W4 J* n
  31.             break;
    3 t* a; T' B' o: p& w6 h( B0 I5 @
  32.         case NXObject::AttributeTypeBoolean:' w; x% S, R9 ^  b0 K" S
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;* H" p( m3 Y' c* T# N
  34.             break;
    . y5 T+ h$ B" V  b$ W
  35.         case NXObject::AttributeTypeInteger:
    ; `" ?  o: g; l1 F
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;& i' |; T; Q8 D8 E- f. E
  37.             break;
    0 N5 y" `( \/ k6 i
  38.         case NXObject::AttributeTypeReal:# c  ~0 g1 Y7 O6 V7 }
  39.             out << "RealValue: " << infos[ii].RealValue << endl;& U& d4 g0 _: }7 s  h8 A
  40.             break;
    * b9 @( V1 c: Y' P. v
  41.         case NXObject::AttributeTypeString:
    / [$ v; r$ F" l5 p0 z! o
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;2 k$ q. H8 u& e: R
  43.             break;
    / @- u: t/ e4 J3 `3 c
  44.         case NXObject::AttributeTypeTime:  C3 N, U: Z3 G- W
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;
    5 U2 ?) q4 v- l" x
  46.             break;
    , Z6 }- j! X0 Y8 m* u* ~
  47.         }" q# C5 K9 W7 Y( ?0 S

  48. . c5 k7 D) i- c! y# |/ J" w# g% s; ^% V
  49.         print(out.str().c_str());* x) L: k6 ^0 x% N) I: J  F
  50.     }
    8 l2 A) ]& R. B! P$ B" }
  51. 7 H0 m( K8 [9 N
  52. }
    4 I0 F3 ?8 H* E
复制代码
2 T: I7 x2 k2 E) ~: _
8 O# m7 H) M& z( D* z2 B  u
, ?. w- J7 |& i: F+ m' Q6 N! i4 Q& e
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复1

593232280 发表于 2019-4-25 18:49:57

593232280 沙发

2019-4-25 18:49:57

有用的,解决
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了