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

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

[复制链接]

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

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

admin 楼主

2014-11-4 20:48:40

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

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

x
, s, u* b  V% ^5 B
NX二次开发源码分享:报告当前工作部件的所有属性
# w. c  o, P% O( W4 L/ m主要是用过workPart->GetUserAttributes()获取属性信息;
( N# W: |7 X5 E$ D, J
  1. void MyClass::do_it()
    9 @+ g! A+ C, K  R$ x) u. R
  2. {5 _" E: h: i- I& n" @9 w. A
  3.     stringstream out;
    ! t9 T3 c) K) b* `( p. `
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();
    - Y2 |$ j# V( B
  5.     out.str(""); out.clear();4 H8 l  T" I6 p0 v6 z
  6.     out << "\nAttributes found: " << infos.size() << endl;
    4 S8 S9 |# y" f2 Y2 J
  7.     print(out.str().c_str());+ s) T; P& Y2 Q( l* K

  8. 9 Z% n1 L' g1 Q) M
  9.     for (unsigned int ii=0; ii<infos.size(); ii++)
    5 K' s9 |# [* E# w5 \/ h
  10.     {
    2 b4 t% P' x  C: O6 }$ F# U" M, U
  11.         out.str(""); out.clear();' c# Z; i6 b* y. e9 t1 u$ b, n
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;1 x* ^0 w  h! S% X  @' Y! X8 I! i* u
  13. 7 \2 G2 k% t& ?8 @1 p; o1 e
  14.         out << " Array: " << infos[ii].Array << endl;
    ( n' v. a6 L) v* L/ v  f0 A9 G
  15.         if( infos[ii].Category.GetText() )
    4 |' x/ @  B. E4 z2 r( c
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;
    1 H  J" `6 G5 N  R& i- ~7 g. U+ M
  17.         else" J5 D7 Z0 _, d! V$ j$ {$ c# I9 j
  18.             out << " Category: NULL"  << endl;9 h/ ~& K' T% W. H
  19.         out << " Inherited: " << infos[ii].Inherited << endl;' P: ]" i$ b0 S: r1 [$ K
  20.         out << " Locked: " << infos[ii].Locked << endl;
    ' X# ~3 @$ X5 @& Y+ p% L0 T; h. _
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;
    . L5 |$ f8 E' w
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;
    - ?, d  w  ]5 ~! l1 U8 y+ H
  23.         out << " Required: " << infos[ii].Required << endl;
    4 m! E% Q: H: a7 x
  24.         out << " Type: " << infos[ii].Type << endl;
    5 a5 J  k9 z8 o' R& O" b
  25.         out << " Unset: " << infos[ii].Unset << endl;+ t$ h. D6 K  \" i) l! \
  26. ! R$ K6 w0 z! l" y+ ^5 ^
  27.         swiTCh ( infos[ii].Type )
    " A# o3 o  N0 j! a) {2 b* {
  28.         {
    6 L9 `5 I0 f' r& J
  29.         case NXObject::AttributeTypeInvalid:
    % k( H0 u5 S2 a* h
  30.             out << " Type is invalid." << endl;$ U2 m' X, v* e) I) X  n
  31.             break;
    ! w% W' p% c8 e
  32.         case NXObject::AttributeTypeBoolean:' E5 F0 Y$ h5 ~% V
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;
    ( @" s1 p" P  F* e
  34.             break;% L& i  d5 O- [/ R) A* L1 X
  35.         case NXObject::AttributeTypeInteger:0 I* K5 R( k" M# m* h- d
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;
    & [4 T& Z& m7 C. b) G3 {
  37.             break;% S2 ~  ?/ p+ c9 H0 P) m# u% `
  38.         case NXObject::AttributeTypeReal:
    3 n$ D4 z8 c% u" Z/ `
  39.             out << "RealValue: " << infos[ii].RealValue << endl;
    9 S* K" m- R9 N" N9 {% W
  40.             break;
    : ?2 S. f2 n3 W8 ^3 v: R
  41.         case NXObject::AttributeTypeString:
    $ W9 \5 p$ O! j3 X$ Q
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;: q( f& n6 Q+ y( H" c, k3 X. [% ^+ P
  43.             break;: i3 U7 m! j* N/ R
  44.         case NXObject::AttributeTypeTime:3 L+ S$ w: i9 W/ O9 H
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;3 @( `/ Y9 r) }- h& a4 r9 f, U
  46.             break;1 A* C3 K: x9 M: Y& G$ J$ O
  47.         }$ ~  N, L2 L( b. q2 T

  48. 2 u# r, m: T" J9 n, [. {, p9 f
  49.         print(out.str().c_str());
    0 J( H/ w: D: h/ I9 J' Z% s
  50.     }, p1 d+ O1 n1 ?# h; r
  51. : Y6 a' Q3 V7 G$ S: z9 T
  52. }
    " g/ F' L' h; C% O) G' m! Q
复制代码

: x$ @: k4 x5 T0 ?) i# x4 E. H# [4 h* b; U. N1 @  J1 r+ N; \
; A3 v8 r( Z. v5 Z* H5 v" C
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了