PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

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

admin 楼主

2014-11-4 20:48:40

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

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

x
1 N6 ~. v# I$ B
NX二次开发源码分享:报告当前工作部件的所有属性
+ `* j$ \, m! @( o. C) v3 z# Y主要是用过workPart->GetUserAttributes()获取属性信息;
$ I# @2 `  s' V7 U, }% `
  1. void MyClass::do_it()
    . j$ S" y$ O$ H) {; z
  2. {3 C1 K% F+ y  M) e, e5 z# f' c" H6 _" q
  3.     stringstream out;
    , s( q  F8 L0 B3 q( D, {
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();1 _' l4 y* F; L0 W4 {  i
  5.     out.str(""); out.clear();- z# M8 h: _0 q: }
  6.     out << "\nAttributes found: " << infos.size() << endl;; x) M0 X; m4 c" J& B( r
  7.     print(out.str().c_str());
    1 j. M& r; [$ ?7 O2 \9 t6 ~
  8. 5 F  |# `" S3 W' W3 y5 ?8 V3 B
  9.     for (unsigned int ii=0; ii<infos.size(); ii++)
    , P- h7 a% j' c( K6 }
  10.     {
    . ~1 {$ @3 F- ]/ h0 }0 K9 @
  11.         out.str(""); out.clear();8 M' H: l) k: }# b; j; V5 c, I
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;" ]+ {" G- s% a0 {) _/ |
  13.   T+ `) R2 C1 s3 K7 E' Y
  14.         out << " Array: " << infos[ii].Array << endl;
    ! s' F! t+ F- S  ~
  15.         if( infos[ii].Category.GetText() )
    # l8 Z& {$ b( g1 w! @
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;
    , p, u, ]2 N1 j( Q
  17.         else. A2 E  f* s0 Y/ ^" j: _3 i; R
  18.             out << " Category: NULL"  << endl;
    2 J" p' c: V- I0 d* m8 P
  19.         out << " Inherited: " << infos[ii].Inherited << endl;
    " c+ n$ y4 M% H
  20.         out << " Locked: " << infos[ii].Locked << endl;
    + i$ [! v* x/ @9 k
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;% x$ N9 Y. r+ ~4 {1 d! _+ F
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;
    . f! Z+ g' f" g# w- B* R+ S
  23.         out << " Required: " << infos[ii].Required << endl;, K/ V% b' c; I: a* f9 ^
  24.         out << " Type: " << infos[ii].Type << endl;' w" f. P8 z' S7 ?- P
  25.         out << " Unset: " << infos[ii].Unset << endl;
    2 j% U: Y, ]8 Y- L0 c$ n, q
  26. # {* H7 ?2 s9 c7 o+ s) v5 V- I
  27.         swiTCh ( infos[ii].Type )
    3 _$ @4 F$ F; I* D
  28.         {. Q& E9 X& l# J* v# z8 w; |4 x+ X
  29.         case NXObject::AttributeTypeInvalid:
    ) \$ T& _# L7 I# J! K9 y5 K) Z
  30.             out << " Type is invalid." << endl;% o! S5 J- I* i+ `+ E$ l1 m' L
  31.             break;
    " x! O1 m% \; P( l; j" }' `1 B! z9 W" s2 B
  32.         case NXObject::AttributeTypeBoolean:
    ' m# k3 w' n% ]
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;
    9 d  q1 i% G5 G- i
  34.             break;1 A4 t) O. m7 J1 ^7 h
  35.         case NXObject::AttributeTypeInteger:
    $ o1 D" {& N; a. d- l: e) r) h
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;
    * ^  `) }, L/ C
  37.             break;, P8 }6 A$ ^& J; N4 f
  38.         case NXObject::AttributeTypeReal:
    3 y9 A+ W5 H. V, _5 A( o
  39.             out << "RealValue: " << infos[ii].RealValue << endl;" l+ \" L0 C) l- ]+ h
  40.             break;- e( G, _* [) C+ k3 ?" ~+ `9 P6 e
  41.         case NXObject::AttributeTypeString:6 u  Y! q0 v8 M' |
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;
    6 l/ K6 {" p0 T7 R' i) Q
  43.             break;$ c4 ~! m2 C2 C" a9 A. U/ ?
  44.         case NXObject::AttributeTypeTime:
    ; e7 m! T* |5 A. F+ P( i& A9 g
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;
      _3 a( h' Z" ^
  46.             break;
    1 ]1 K: b' W* `1 [% b, x, {
  47.         }
      W, p5 t$ I8 c  t/ z, ?" N. E
  48. . M3 S3 t% j) w: Z$ ?2 F# Y
  49.         print(out.str().c_str());
    + K5 u4 I2 q# l9 _% G3 K
  50.     }
    1 f* b7 E$ Y4 ^

  51. 3 k& B- M" Y, L. j% Y
  52. }
    1 h; F; j; U  R! `; p" p' w# Z' V
复制代码

# k$ D5 v" p8 w% X" T6 N
7 V* n( l/ Q3 P2 O; w' G/ @! o: S+ Q! Y$ T) |, o% o
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了