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

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

[复制链接]

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

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

admin 楼主

2014-11-4 20:48:40

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

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

x

4 S* {+ j  q7 y1 [NX二次开发源码分享:报告当前工作部件的所有属性+ }0 I/ o# B* u3 @$ @1 _
主要是用过workPart->GetUserAttributes()获取属性信息;: A' S* ~0 l. ^
  1. void MyClass::do_it()
    ; }  J3 ?6 N' ~& P9 T$ l, J; I: V
  2. {
    & }6 i+ C8 N1 `. T: l  P
  3.     stringstream out;, d* ]1 U% R1 y
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();
    - L& ]  q& X# e3 x4 p' b
  5.     out.str(""); out.clear();
    5 p8 p. m; s! d4 G0 A
  6.     out << "\nAttributes found: " << infos.size() << endl;% G4 `0 v; Y$ q, p: s8 \
  7.     print(out.str().c_str());
    0 D1 L( E* H/ {6 U' |% y" w

  8. 9 ^; o+ W7 o( l6 Z2 Q
  9.     for (unsigned int ii=0; ii<infos.size(); ii++)/ }# J9 A. d# Q  N' T5 ?$ P
  10.     {
    & t4 @: b& `1 h4 M8 Q9 J8 u
  11.         out.str(""); out.clear();
    7 c  x" M; Z; I+ F0 _5 Y, x
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;0 |7 p) g$ A9 Z/ f9 W, Q/ Q! X

  13. 2 H5 E- B3 p3 D* D
  14.         out << " Array: " << infos[ii].Array << endl;
    , @- L' l. i# R! Z6 O1 E, \: m1 }- h
  15.         if( infos[ii].Category.GetText() )* k$ z$ s: I8 g- n9 H0 d6 [
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;
    % S+ R  _% K( p
  17.         else: |: c8 I5 Y, V2 n
  18.             out << " Category: NULL"  << endl;8 m$ o/ K" k) ]4 E
  19.         out << " Inherited: " << infos[ii].Inherited << endl;
    3 C5 R( [1 {0 Q/ b
  20.         out << " Locked: " << infos[ii].Locked << endl;
      C) q% I3 G4 ?3 ~
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;; e' e* g0 K  A- Z& S8 i5 ?4 l2 B
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;* i, f9 F+ g* f% g. Y! m
  23.         out << " Required: " << infos[ii].Required << endl;0 t7 p; W' F7 d+ R
  24.         out << " Type: " << infos[ii].Type << endl;
      N& U$ _3 o. a4 _0 p! d* J. e
  25.         out << " Unset: " << infos[ii].Unset << endl;* J* j7 M4 W8 ]( [8 D9 U7 Q2 s0 ?

  26. & J+ g! M2 `0 e3 o# F3 D% ]
  27.         swiTCh ( infos[ii].Type )
    9 |- ~9 e& }% K* D6 U# o! ^' w
  28.         {
    ( v5 h: T* K2 I# ?& t) [% _
  29.         case NXObject::AttributeTypeInvalid:
    ( n' h1 R; n( a4 o4 W
  30.             out << " Type is invalid." << endl;2 s: ~  {8 [8 i. l0 y
  31.             break;
    7 ^  P, v8 Y  {9 {- \
  32.         case NXObject::AttributeTypeBoolean:
    9 S( ?% ]: o/ E; ^* u
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;# y1 {" W) F7 Q: ^
  34.             break;
    ( S3 D* G% Q% {6 x! f% S+ e
  35.         case NXObject::AttributeTypeInteger:( B+ K( f0 d' A" V3 a9 G
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;. @8 Z/ P. }% p; ?5 `
  37.             break;, `$ H# w$ d9 z' V) H/ D  ]
  38.         case NXObject::AttributeTypeReal:
    2 _0 o7 v; |8 t' ^, D
  39.             out << "RealValue: " << infos[ii].RealValue << endl;. |/ j4 x: t% K1 I6 [6 O5 B
  40.             break;: l; e- p2 C4 [, |2 B* O
  41.         case NXObject::AttributeTypeString:  N: I0 b. n! s( e6 X0 \. S/ X, W: o
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;" s6 C2 x! E- H) q( D8 n5 Y, e! |5 `5 B' j
  43.             break;
    . \: L/ j; j9 j
  44.         case NXObject::AttributeTypeTime:
    ' l) W  a+ n: r3 H. G
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;8 s* ]) [8 n, R  V3 y7 C
  46.             break;
    7 ?  L0 g! R; ]; u, c6 t
  47.         }
      A5 m5 l/ x. B

  48. ( O* j  }5 V: Y6 r( _3 w
  49.         print(out.str().c_str());9 E# O* ~! }' }. }4 y
  50.     }0 w3 B! u* i$ X6 R3 G3 J4 }7 H

  51. 6 p7 D* v; a' p  ^9 S. t
  52. }; L  P* a' ^2 K% ?  @- K, a
复制代码
" V7 u7 C% b" R& }

% V& Y7 d5 k7 w' S
# R0 t3 X6 s5 p$ E
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ 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二次开发专题模块培训报名开始啦

    我知道了