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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x

+ a4 g! z' X+ v& O循环查找所有打开零件的特征并输出特征列表( R: s* k- _9 z
  1. / X& a; P& i/ a5 [7 ]7 V
  2. <p>static void do_UGopen_api(void)2 G% y- {) c& Q# W' X- ~2 j
  3. {
    $ j6 i; }' m1 ~; A9 p7 ^
  4. // create block 1
    7 |( H+ i8 ^- K* m
  5. double coner[3] = {0,0,0};
    9 r1 q: N/ [/ a) j1 y) v9 V
  6. char *edges[3] = {"l=100","w=100","h=20"};
      a8 V/ S; B$ f+ `
  7. tag_t blk_tag;1 @' U. Y6 B: D
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);" H% f6 V  o) R# \
  9. // create a hole0 y$ |* z0 X# [+ A0 ]  @2 F. `
  10. double dir[3] = {0,0,1};
    6 M7 U; ?- a! q% S# @! w
  11. double coner1[3] = {50,50,0};
      S- }" k( ?( f0 U/ N
  12. tag_t cyl_tag;
    0 g! I  W1 `2 e) H( y  j/ [2 k
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    ( b9 U4 J2 {2 g" ]0 A5 ]% Y# [5 L
  14. tag_t part;
    8 ]) ]9 M- @3 S' |0 @$ D, j* t
  15. char msg[132],msg1[132];
    ! W5 e7 C3 f$ ?: }7 x/ n6 z1 w
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    9 p  y0 i% W* y9 W2 m2 Q+ W5 W
  17. int num = UF_PART_ask_num_parts();. @: b" G1 H% \8 J7 h% w  a9 s# p
  18. sprintf(msg,"the part num is %d",num);
    ! b9 Z% B+ V3 p9 S
  19. uc1601(msg,1);
    - u' q* n* |2 i( [# l7 H3 h0 E; `
  20. for(int num_part=0;num_part<num;num_part++)9 B" u! f3 g; a' O; O# l0 j
  21. {  L. c* f- M: N6 E
  22.   part = UF_PART_ask_nth_part(num_part);
    ' W5 k; H' I- t8 q
  23.   UF_PART_ask_part_name(part,part_fspec);
    & @8 b& {# x& d  _9 p
  24.   uc1601(part_fspec,1);4 P  }6 ^3 t: H/ V& p8 o9 _1 m5 `
  25.   int count = 0;. `# B) y7 w# x! S# O) g, q
  26.   int type = UF_feature_type;7 b3 M/ u( l, ^4 W
  27.   tag_t feature = NULL_TAG;
    $ |" C, ?3 |8 }, g4 T, j, y- ?
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ( d* k; @$ z/ R1 t) C5 c
  29.   char *name;
    - V) H; n8 H6 P2 j) r/ y. d
  30.   while(feature!= NULL_TAG)0 x) G. d# L$ T9 C
  31.   {
    1 e7 o! f2 G2 e; E( l
  32.     count++;
    : R$ S" ?% R& _; n9 x$ S9 ?
  33.     UF_MODL_ask_feat_display_name(feature,&name);9 D- M" d2 }# `( w% w+ \0 U
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);2 s+ |% {& C5 p
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);; k& g# I( G1 u: V4 f
  36.     uc1601(msg1,1);7 c* q; ~* G) s: E* \& T4 y
  37.   }  
    % y- }4 D6 w3 U' a  @3 j$ _
  38.   , }  c- I, I, u% j0 v' Z
  39. }
    - Q$ W  T9 w8 k# {; c
  40.   
    * o2 J' A! }) E3 m; G1 v
  41. }</p>
复制代码
% N, p2 H6 u* j. {" }( ~! W
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了