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

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

[复制链接]

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

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

admin 楼主

2014-11-4 20:48:40

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

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

x

% ?) |1 F4 K- k" ?" I2 `: ^& j# C' R" mNX二次开发源码分享:报告当前工作部件的所有属性
- i) [0 G0 I9 ?; e% X: V主要是用过workPart->GetUserAttributes()获取属性信息;
1 {. b' ~" f- B' d. u& J& J
  1. void MyClass::do_it()
    7 Z8 {5 y7 Q. O4 d- ?
  2. {; e2 w( D( B& p, ?% w/ l0 w& e
  3.     stringstream out;
    . ^6 ?: ], X" Z' U9 q8 a
  4.     std::vector<NXOpen::NXObject::AttributeInformation> infos = workPart->GetUserAttributes();
    9 A' W9 m7 O- [" d
  5.     out.str(""); out.clear();
    ! ^5 V; h) Z# E0 w
  6.     out << "\nAttributes found: " << infos.size() << endl;2 J5 q5 D2 x$ n2 ~; I/ N; N1 H7 M
  7.     print(out.str().c_str());
    8 R+ n1 D6 V. R- Y0 c0 _' l$ I# D

  8. 7 `' ]+ r* k1 ?* h
  9.     for (unsigned int ii=0; ii<infos.size(); ii++)- I3 L' d7 n8 N9 r2 Z; U- B
  10.     {$ m1 C3 h* v% X  z" s1 H
  11.         out.str(""); out.clear();5 C+ z) F- d- m' T9 w+ t* |; M+ ~
  12.         out << "\nAttribute: " << infos[ii].Title.GetText() << endl;
    2 k; e$ W! a- w4 b0 m! y( N
  13. ! ~' Q+ e  P$ K) b1 |3 U
  14.         out << " Array: " << infos[ii].Array << endl;1 Q0 S7 l2 t: a+ U
  15.         if( infos[ii].Category.GetText() )7 q; f6 k9 k3 S( D; z+ @' O2 C1 i
  16.             out << " Category: " << infos[ii].Category.GetText() << endl;* g* O0 C% Z4 C2 b6 Z
  17.         else  O. U5 _2 `. L0 |. T
  18.             out << " Category: NULL"  << endl;
    4 E4 N# b* v! D( m' i' u
  19.         out << " Inherited: " << infos[ii].Inherited << endl;
    7 e1 x+ M3 u0 U+ t3 f" S. F
  20.         out << " Locked: " << infos[ii].Locked << endl;! {  x+ j4 o5 V9 D! J  ^
  21.         out << " OwnedBySystem: " << infos[ii].OwnedBySystem << endl;
    0 U/ b% w4 h8 D! k* b! Y& i/ M
  22.         out << " PdmBased: " << infos[ii].PdmBased << endl;
    ) H8 S' c/ m3 V! E1 W! {; a/ K
  23.         out << " Required: " << infos[ii].Required << endl;
    & p. t6 P' D* U- Z; y, g6 Q
  24.         out << " Type: " << infos[ii].Type << endl;
    7 l2 o* J. f/ ]
  25.         out << " Unset: " << infos[ii].Unset << endl;
    / @5 {5 s/ w6 \

  26. ; g) r3 n2 R' n' [* N2 n
  27.         swiTCh ( infos[ii].Type )
    # c7 D0 ?* g5 [$ E. N
  28.         {7 q) x; l7 A+ P+ S8 z# E( ^9 u
  29.         case NXObject::AttributeTypeInvalid:9 G% e# t  |6 ^
  30.             out << " Type is invalid." << endl;
    4 e" c7 U* @' C+ ]1 s
  31.             break;
      p8 y; R- y& x  t3 N
  32.         case NXObject::AttributeTypeBoolean:
    $ M  |4 \' n4 V+ G9 \
  33.             out << " BooleanValue: " << infos[ii].BooleanValue << endl;0 h, x9 {4 C' \
  34.             break;
    ! N! d3 T" {( H! Q( W
  35.         case NXObject::AttributeTypeInteger:
    / q0 [/ R' `, W
  36.             out << " IntegerValue: " << infos[ii].IntegerValue << endl;2 ^: u1 A2 S) ?" E* Q
  37.             break;
    ' e" Z" z. C& l& @
  38.         case NXObject::AttributeTypeReal:4 ]# d: ^9 p3 }6 Z' R
  39.             out << "RealValue: " << infos[ii].RealValue << endl;0 u- }- X( p! J0 |6 B
  40.             break;
    ! z) A/ J% i; n4 z1 d7 q
  41.         case NXObject::AttributeTypeString:
    6 O1 Z2 _+ z! w  h6 i
  42.             out << " StringValue: " << infos[ii].StringValue.GetText() << endl;5 x3 ]: b! @0 ~- t5 R
  43.             break;% W% J+ O" A% Z# n) N
  44.         case NXObject::AttributeTypeTime:7 \4 _+ I0 `! r7 @6 T2 G
  45.             out << " TimeValue: " << infos[ii].TimeValue.GetText() << endl;
    ; J: Q' t# c5 a5 G
  46.             break;" }) V' o  c, [9 X0 t5 G' `
  47.         }
    4 f! P" L* I% U

  48. 7 L) f% E2 W3 L8 r5 W
  49.         print(out.str().c_str());( ]$ Y* Y0 [$ {, ~& x, Z( X
  50.     }" z- m/ j! E2 a1 t$ ^! @
  51. ' f$ O; e- B# _9 q% O
  52. }/ I5 H( ~5 ]9 X  V/ K$ ~
复制代码
) l& V! q1 g* N; Y

, p, l+ P! ?& J5 |& _9 {
- o: u9 H" n( a# I- X# M
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了