PLM之家PLMHome-工业软件与AI结合践行者

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x

* J5 y/ X+ m! }5 q循环查找所有打开零件的特征并输出特征列表
2 }  ^: |1 M" k( f

  1. # g2 q: ^- k! s8 j
  2. <p>static void do_UGopen_api(void): `' e! |" g% @$ \
  3. {: `+ D1 ?8 d* n5 \
  4. // create block 1, `  q( [( J: [7 @! s
  5. double coner[3] = {0,0,0};4 \/ q1 b7 w% l# s$ `: G/ P
  6. char *edges[3] = {"l=100","w=100","h=20"};9 n5 [/ x, m0 t1 V! @% q9 r, z
  7. tag_t blk_tag;% w+ B! ~( V9 u
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    . P3 t, _+ b5 S' d: V) s1 l& I: z1 i& ^
  9. // create a hole' y* o/ f* D+ Q' I
  10. double dir[3] = {0,0,1};$ C( ~; p. O2 ^. S+ T/ ]
  11. double coner1[3] = {50,50,0};
    1 ~# A# D# L8 [% i: _& j
  12. tag_t cyl_tag;3 i# f! R5 g# h# _2 o7 V4 M
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);( V: }$ i+ s0 ], W3 `- h. G) N9 R
  14. tag_t part;
    . b2 T: B) k' y/ A. }1 ]2 O
  15. char msg[132],msg1[132];
    5 k) Q% i/ R) M' G
  16. char part_fspec[MAX_FSPEC_SIZE+1];! q! h, ~. L. r* @& T
  17. int num = UF_PART_ask_num_parts();
    . r3 ~8 `8 |1 M  T
  18. sprintf(msg,"the part num is %d",num);
    : s$ m$ a/ R- i' Y
  19. uc1601(msg,1);
    7 n' `9 x' c/ l9 X
  20. for(int num_part=0;num_part<num;num_part++): ^5 P5 P; \% l9 t
  21. {
    $ ?. _  n) ^/ Y) \0 h
  22.   part = UF_PART_ask_nth_part(num_part);
    ' j+ d8 e& f3 t9 G& g
  23.   UF_PART_ask_part_name(part,part_fspec);
      \0 N$ A1 Y3 U6 N, c5 G; k9 f3 x
  24.   uc1601(part_fspec,1);- B& ^  \- T  L$ n& E5 A
  25.   int count = 0;
    7 H. w- S  C' I  k5 p. m" }( t1 z
  26.   int type = UF_feature_type;
    - Q2 X) }  F; A8 K
  27.   tag_t feature = NULL_TAG;
    8 a# I" H5 G% s& f* Z
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    7 e6 D/ a9 W" B$ P
  29.   char *name;. I- m( ~1 }# k8 V* F8 c% r0 k
  30.   while(feature!= NULL_TAG)3 U3 P. j9 T( D6 a% Z
  31.   { $ c8 M6 F! C8 w- q1 A* c3 E3 h  A
  32.     count++;
    & `! v8 A# P- p* A/ C- n, W; y! ^
  33.     UF_MODL_ask_feat_display_name(feature,&name);* y( t  h$ F' W8 W7 ^2 [5 N0 Z
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);& p" |, V' P4 q
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    * X1 L, V5 ?  x
  36.     uc1601(msg1,1);
    7 N- U& O5 `, U! t$ S
  37.   }    Z5 E! ?, D9 w' _' P
  38.   / ?* ~/ d- K" S  n; q/ \. @4 H
  39. }
    . ~5 c* X7 R/ _7 D" i! a' z
  40.   8 [9 z- \" e7 Z; c: ^( @
  41. }</p>
复制代码
: ]& s9 I4 l" }% c% R0 d
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了