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

[二次开发源码] 循环查找所有打开零件的特征并输出特征列表

[复制链接]

2013-11-26 15:12:52 3309 0

admin 发表于 2013-11-26 15:12:52 |阅读模式

admin 楼主

2013-11-26 15:12:52

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

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

x
' V0 e$ [) G* d3 G- U1 ~4 s
循环查找所有打开零件的特征并输出特征列表
8 ~0 U3 q4 O" u
  1. 6 W& ~6 [" m" P$ W) f# p+ ^
  2. <p>static void do_UGopen_api(void)
    : X& c  O0 ^9 b; T( E1 `! c: n
  3. {+ ^2 d+ A# n! `
  4. // create block 1
    4 B. }9 g4 v- {, L2 j
  5. double coner[3] = {0,0,0};6 E' X# j( ^9 T8 M
  6. char *edges[3] = {"l=100","w=100","h=20"};: j# Y  z  j! n/ M, a' c
  7. tag_t blk_tag;
    ' K: D# N, n5 P, F: k; j  j( y
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    ! P9 i3 z: e, d9 v% ?, w
  9. // create a hole
    5 Z& s  d! w/ ]3 d
  10. double dir[3] = {0,0,1};2 K' d% |) Q7 i+ p$ C! \8 \
  11. double coner1[3] = {50,50,0};
    6 P4 e4 y8 H  I2 Q! w
  12. tag_t cyl_tag;: e# d# U5 q+ w. C3 _' |/ l% l1 k
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);  x: L- C0 a; H' j( N
  14. tag_t part;4 \/ b: y5 B" w' c$ r
  15. char msg[132],msg1[132];2 p! U, C+ {7 Y( Q
  16. char part_fspec[MAX_FSPEC_SIZE+1];1 Z' ^$ M2 p! O" A$ }
  17. int num = UF_PART_ask_num_parts();
    , @0 d- h3 M( k1 _
  18. sprintf(msg,"the part num is %d",num);
    1 W" I  D- M% c# e2 `8 R
  19. uc1601(msg,1);
      B' }) B0 D2 X0 r+ ~# O
  20. for(int num_part=0;num_part<num;num_part++)
    5 w  z! }' z* `$ Q, m# w
  21. {4 @7 Z& e0 e% r# K
  22.   part = UF_PART_ask_nth_part(num_part);
      ^' o( m: p* R. X* `% [' z
  23.   UF_PART_ask_part_name(part,part_fspec);8 W  w2 R4 l) s+ A
  24.   uc1601(part_fspec,1);7 d9 `9 j. O6 L% R
  25.   int count = 0;
    ' d* ^( u3 O( b
  26.   int type = UF_feature_type;  ]+ u+ x& b/ V
  27.   tag_t feature = NULL_TAG;
    " d- k  c* Z+ j- S' M4 B- z" E: o1 y
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);6 H: o5 l4 e! ~+ ~, g
  29.   char *name;
    6 X* M5 c7 n' l4 U
  30.   while(feature!= NULL_TAG): X* o( S5 @6 N! A9 f6 ]
  31.   { / Y  P, G3 G2 l% J1 [
  32.     count++;  _9 Y4 W' ]) w
  33.     UF_MODL_ask_feat_display_name(feature,&name);  B2 i9 U% F& [% u  c7 M
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    2 j9 B! o# @* N  O; N; t
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);# w, V4 M1 h8 H! K% V
  36.     uc1601(msg1,1);9 x$ K4 G3 P7 ^; b
  37.   }  , F! u# N2 c9 Y# ]. |
  38.   1 T( w1 S& n* U5 M; @
  39. }
    - a2 u9 m' q) E9 s! D. }" R  l( u
  40.   + ?7 H0 ?) `4 T3 i" O  b
  41. }</p>
复制代码

2 C' S3 `  G8 k# y: k
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了