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

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

[复制链接]

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

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

admin 楼主

2014-11-4 20:48:40

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

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

x
* B$ D) L+ z, |! r3 P3 V; m# l# l
NX二次开发源码分享:报告当前工作部件的所有属性  i4 G9 {, c6 Q
主要是用过workPart->GetUserAttributes()获取属性信息;
# G: L0 b- o1 \
  1. void MyClass::do_it()
    ; u" L- z( B9 Q- L5 W
  2. {/ J, L1 f* U% W0 O' p3 s+ P
  3.     stringstream out;
    $ v' D1 L% K2 ~6 v5 b. d
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();
    : ^; `/ J0 J) T8 ^
  5.     out.str(""); out.clear();
    & K! D9 u9 n/ v3 ]) R
  6.     out << "\nAttributes found: " << infos.size() << endl;
    2 }1 j3 F4 ]- t  _
  7.     print(out.str().c_str());
    ! b2 r- ?# n) W0 n$ R4 o
  8. ( _2 A9 S, z2 o. h; }  k
  9.     for (unsigned int ii=0; ii<infos.size(); ii++). x; `4 y2 v: B4 m# K. E* F  Q9 s
  10.     {  i! x9 w/ f% s- |4 k
  11.         out.str(""); out.clear();
    9 B4 G: P; m+ M& X
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;, ~9 }" E$ P& Z% W. k
  13.   w1 ^% y* ]6 B" ~# @6 P+ z
  14.         out << " Array: " << infos[ii].Array << endl;
    7 J/ W: B+ `# S' K6 D% C+ w
  15.         if( infos[ii].Category.GetText() )
    ' p, [0 v7 e& p- J. T
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;
    : c3 s- L" Y/ O0 |- D
  17.         else) G' Z' V7 `5 W# t, @; X7 {" y
  18.             out << " Category: NULL"  << endl;0 R: I( T6 T7 [3 x
  19.         out << " Inherited: " << infos[ii].Inherited << endl;
    0 N6 H6 \" F# U' L8 t
  20.         out << " Locked: " << infos[ii].Locked << endl;! a6 s& k: }8 z+ C% ~
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;
    5 c& I, k1 S: A4 v! D
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;
    ) k/ R& V4 p6 c: U! x
  23.         out << " Required: " << infos[ii].Required << endl;
    9 J, w8 G6 I& W  b" s* Y4 p
  24.         out << " Type: " << infos[ii].Type << endl;* I+ i8 {: |5 @# S! J# A- F7 B
  25.         out << " Unset: " << infos[ii].Unset << endl;8 g# |9 N- Q7 w) @. G  y
  26.   ~. D( N' ]2 n1 _  L- }
  27.         swiTCh ( infos[ii].Type )+ }# |' r/ S& e6 W  S
  28.         {+ ^! i" x1 B0 x( c* b2 `! W! y: J
  29.         case NXObject::AttributeTypeInvalid:
    * G* L  F! c, p* x2 U, f
  30.             out << " Type is invalid." << endl;& R- t! S' n' V& e
  31.             break;2 B' c9 R. [  I; R
  32.         case NXObject::AttributeTypeBoolean:) u8 g( F* T6 U8 x. m/ D
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;3 d; O9 o& S; t/ _  {: q2 s0 I
  34.             break;$ v: R* C" \5 ~$ h5 X& d1 \
  35.         case NXObject::AttributeTypeInteger:
    ; ^8 Y8 m. G4 ]/ i
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;( a# ^; D. G8 P7 q% k* v! U% p
  37.             break;" i+ O# }6 I/ g! q
  38.         case NXObject::AttributeTypeReal:6 f* `' K( _# L5 I5 U$ K! s% l2 Q
  39.             out << "RealValue: " << infos[ii].RealValue << endl;
    , v9 c: A! C1 U* C: }% A- ?" D% o
  40.             break;3 D0 G2 @& [# R: V% a
  41.         case NXObject::AttributeTypeString:& I  D" _. G9 ^+ T- v4 J; ]& N
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;
    2 @9 w* U' P0 T" s: o
  43.             break;
    3 H9 y7 p7 m! P! L! R
  44.         case NXObject::AttributeTypeTime:+ |* L6 B0 e. ]! S. _1 l
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;
    ( a1 P2 r. |  e" Q1 r
  46.             break;
    1 G8 @0 v  T" U
  47.         }# ?! P6 `6 j; _8 `+ B; L

  48. 6 D3 `7 V2 L1 y9 a
  49.         print(out.str().c_str());; N" y* e# c, e
  50.     }0 D/ }, b/ a2 G- a/ a; a9 A( M
  51. 9 Y( B) F% G+ T& m6 G& c
  52. }
    ; o' Y. r" y  ^- T2 c: P% m, b
复制代码
- v+ `6 j' Z- y8 ?
  `5 D5 V7 _5 P$ ~. F9 C, i

6 I* u- _7 ?+ d) I
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了