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

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

[复制链接]

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

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

admin 楼主

2014-11-4 20:48:40

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

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

x

4 s; L7 Z/ V& D- L- R$ w* @* y  NNX二次开发源码分享:报告当前工作部件的所有属性# L4 j; @; H8 ^6 L. a# i
主要是用过workPart->GetUserAttributes()获取属性信息;9 ^9 Q. s) q' ^( b. j4 _5 S* x
  1. void MyClass::do_it()' z7 R5 O: S. J
  2. {
    " M- F9 U9 Y/ K% |
  3.     stringstream out;
    ) z2 Q! O3 h' E4 }
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();
    * ]# T! @& C5 I) ^0 ?+ b
  5.     out.str(""); out.clear();
    1 d% v& I! A: j" f/ Z6 ~
  6.     out << "\nAttributes found: " << infos.size() << endl;
    # p! i8 S# D6 x2 n5 I7 V/ c2 V
  7.     print(out.str().c_str());
    , L) F3 B2 w! z9 c" Y

  8. : O5 ~) A1 g  ?" g  z; G
  9.     for (unsigned int ii=0; ii<infos.size(); ii++)
    0 K- Z8 S* y6 u2 ^" G& x( M$ F
  10.     {
    $ q# T+ W0 S# E* }# J/ \# S: s
  11.         out.str(""); out.clear();" O" t( V* s& n  b3 W( [1 g
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;
    2 G# V- i* U& g; K& J" @9 I* O
  13. 6 F5 }/ V- i1 I* |
  14.         out << " Array: " << infos[ii].Array << endl;
    - {8 J0 {. K$ y( O5 |/ d
  15.         if( infos[ii].Category.GetText() ): M# Z5 G$ b' ?* A8 W$ S0 b) s
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;+ b5 s' g( e1 m; k
  17.         else0 S% P$ U2 [3 Y8 s' \+ f0 m8 f9 A0 t
  18.             out << " Category: NULL"  << endl;
    7 [0 P' n2 W+ q1 C  U
  19.         out << " Inherited: " << infos[ii].Inherited << endl;' H4 o) P: t9 Y
  20.         out << " Locked: " << infos[ii].Locked << endl;
    * c7 x& a6 i  J9 @: ~$ _# @  }( Q
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;( X) m1 z" P8 c- Q8 [- z( r6 _
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;6 D% g4 G0 d; ]( ^
  23.         out << " Required: " << infos[ii].Required << endl;3 ~- B2 [  M$ K. N
  24.         out << " Type: " << infos[ii].Type << endl;( `# ^: Q- c# _$ |$ p. b1 O
  25.         out << " Unset: " << infos[ii].Unset << endl;% A7 s; i3 p. I! J) `
  26. , d* Z# Z4 \" j( D8 @, i
  27.         swiTCh ( infos[ii].Type )% F1 M+ Y$ Y7 c4 S6 ^- ]2 v7 z  w3 ~) R
  28.         {
    - C% d1 ?& V: c9 q) n* C$ k
  29.         case NXObject::AttributeTypeInvalid:! S% \' S' E" C! ^$ o2 {" L2 W# }
  30.             out << " Type is invalid." << endl;
    5 ^( p# D% c# p: M; v6 z. q0 N$ P5 t: G
  31.             break;
    3 k8 n3 A+ w# \! J% V+ Y' |$ c
  32.         case NXObject::AttributeTypeBoolean:
    ) B  I  Y7 c9 X& d. n4 j  d! P
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;
    7 L, r& `' P& X2 _- A; w
  34.             break;
    % G/ a* \" M# b" O" X
  35.         case NXObject::AttributeTypeInteger:
    0 `% ]% n+ g9 }& u
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;
    1 y& Z& R0 r/ y! s" v
  37.             break;
    ; T2 p6 K0 t9 [/ \2 x" n
  38.         case NXObject::AttributeTypeReal:; {% x& w5 T5 X0 e( P! ^, O
  39.             out << "RealValue: " << infos[ii].RealValue << endl;
    ' I6 s5 x. N0 F6 f) `: {
  40.             break;
    $ b2 u  Q- Y" m6 O1 t" m! S
  41.         case NXObject::AttributeTypeString:2 j, D3 D* F; h+ U2 L( }! Q, p
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;
    ; b5 C$ g! \( {  b
  43.             break;
    ) n( r" ^1 z/ F
  44.         case NXObject::AttributeTypeTime:
    0 Y* Q1 B% H8 k, _* q4 B& ?
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;$ m( c( G; x: a) x# k+ n+ z4 z
  46.             break;
    ) n% s/ m3 X$ S2 _$ ?
  47.         }
    & v2 s- d4 `- b) s' G  S$ |

  48. $ {7 G5 t2 d; ^- ]$ z" g
  49.         print(out.str().c_str());# X. k$ [$ S4 T- N2 \7 [* E
  50.     }2 u: V/ |- ]8 t' f

  51. * _/ F" o  K" W
  52. }
    . A9 r( Y2 t8 L( d+ {# D
复制代码
, D9 d6 }9 f; `, o2 H

% E. x/ q8 T. P3 R3 V$ ^$ B, Q
, H# K1 e/ I$ W6 l5 }6 e6 l9 l3 \
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了