查看: 3718|回复: 0

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

[复制链接]

2477

主题

1280

回帖

8万

积分

管理员

PLM之家站长

积分
82265
QQ
发表于 2013-11-26 15:12:52 | 显示全部楼层 |阅读模式

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

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

×
; r$ e( ]  t; y0 c7 W; f. ~, O) T
循环查找所有打开零件的特征并输出特征列表
9 O( K8 Q0 A* p1 T* Q

  1. ' {' e1 V. ~8 Q& w
  2. <p>static void do_UGopen_api(void)
    % k% g# B7 W% a4 ~. y
  3. {
    / z7 s8 g( `3 g" ]7 Q2 G) `
  4. // create block 1
    + H9 x& R' t1 T* j8 [5 p# `
  5. double coner[3] = {0,0,0};
    3 ?3 e. D7 h" K, ?8 G
  6. char *edges[3] = {"l=100","w=100","h=20"};
    " A% a0 R1 x: M/ p( c; U0 w
  7. tag_t blk_tag;
    / N; q% ~9 ^* R0 I# x! e+ s
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    $ k6 T6 n) c8 n( n0 {" R; P$ ?
  9. // create a hole$ C6 V" _4 U& O" K4 K6 k* P3 I
  10. double dir[3] = {0,0,1};
    , v; M# G8 d( _4 o8 F
  11. double coner1[3] = {50,50,0};
    9 V2 k: \- E' g2 E) Q  G8 _3 K0 i
  12. tag_t cyl_tag;
    ( W% p! K3 L, R& G
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);  g# N4 L$ g" G4 l* ^6 H) V" T- }. @; [
  14. tag_t part;
    1 s& S9 ]  k/ w; M
  15. char msg[132],msg1[132];
    2 n  K5 H: }2 w7 h
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    : b, T! o4 s* g+ n8 h, R% v
  17. int num = UF_PART_ask_num_parts();
    - e2 L/ K8 L# M/ K; p2 g
  18. sprintf(msg,"the part num is %d",num);$ @( c3 G; s' C. V$ \- p
  19. uc1601(msg,1);
    - m1 q% S' |9 F! p4 j
  20. for(int num_part=0;num_part<num;num_part++)
    9 N( E- h- @4 J3 v& W# }5 l
  21. {4 V8 Y5 Y& M+ W  @, u
  22.   part = UF_PART_ask_nth_part(num_part);" G( c, Y) J- E* w& j4 N2 B: o
  23.   UF_PART_ask_part_name(part,part_fspec);" C- K& N6 r% ]
  24.   uc1601(part_fspec,1);
    ! M4 m! B5 t) g: F" h2 b, `* q
  25.   int count = 0;
    ! l1 _4 w' T7 I# P' d
  26.   int type = UF_feature_type;  T' q4 \7 ^8 k" [. }+ S( z
  27.   tag_t feature = NULL_TAG;9 g6 d# t6 g. o. R
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    " w8 ?6 x/ y% K- C6 L6 `  p
  29.   char *name;3 [) n  ?4 q2 K
  30.   while(feature!= NULL_TAG)- O% z) N. w: _! i- q0 S: O5 H
  31.   {
    # d! ^, a, ]0 v$ B
  32.     count++;
    4 x9 i) g! J) k  R! r
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    / k+ u0 U* S2 X2 W
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    1 j3 T6 C& N% ~( s0 C, Y* M
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);0 i4 I, t0 z( Q  L
  36.     uc1601(msg1,1);
    2 Y* h0 W6 t. }% s
  37.   }  0 n6 x, R4 N( h- [* b% I
  38.   8 O0 h5 {) h6 S
  39. }9 M* p( r0 v$ b# \" F8 J+ K  y
  40.   
    ' z( ^, ]6 ]: H: L
  41. }</p>
复制代码

6 }* F7 a! M1 e
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

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

本版积分规则

在本版发帖
关注公众号
QQ客服返回顶部