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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
5 Y& g7 L' f( _& w1 g: a1 @
循环查找所有打开零件的特征并输出特征列表
* N# L) G/ k. z$ i9 T. H

  1. : C$ u' L/ k9 A; {& j( f) w2 M
  2. <p>static void do_UGopen_api(void)# _0 }0 b* g3 {$ n6 s
  3. {
      G3 c5 Z/ F# \! f) h$ b% g- D
  4. // create block 1' `4 f) Q1 E% {2 C0 R4 ?/ D
  5. double coner[3] = {0,0,0};
    ) l; x( j; e; N3 I5 L+ x
  6. char *edges[3] = {"l=100","w=100","h=20"};! }6 d% j+ N% z. ]& I6 r6 s
  7. tag_t blk_tag;  q8 Y% X6 @7 N3 G/ T  }
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);# @; q3 s5 n: _- b7 n
  9. // create a hole! s" e8 ^: o5 L# {
  10. double dir[3] = {0,0,1};
    $ A; Y9 Z/ y4 }! ]% H
  11. double coner1[3] = {50,50,0};
    3 r2 g. `: N  U/ g, G- W4 c% u# @
  12. tag_t cyl_tag;! y8 o8 y- S  f  y
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);3 v" }7 z& O9 f' b! A
  14. tag_t part;
    $ ~* ^9 E, ?9 P! D
  15. char msg[132],msg1[132];$ o4 a) d1 ?% ^9 w+ t  E, k
  16. char part_fspec[MAX_FSPEC_SIZE+1];+ y" W: S" j5 t9 [7 ?; C/ F
  17. int num = UF_PART_ask_num_parts();( j* H: A$ E( N7 H9 C7 g4 \
  18. sprintf(msg,"the part num is %d",num);- J* X# E3 L, j' H; m
  19. uc1601(msg,1);6 w, l5 ~; a( C/ q1 K
  20. for(int num_part=0;num_part<num;num_part++)( m& {' g. w2 \/ `/ p
  21. {
    # c- S+ d: x0 g5 \, S! A3 d
  22.   part = UF_PART_ask_nth_part(num_part);- D% u1 M# d+ W0 s3 S6 e$ s
  23.   UF_PART_ask_part_name(part,part_fspec);9 |9 Q( r" E5 w3 R
  24.   uc1601(part_fspec,1);$ i. V4 U, w/ m* N8 p3 v5 I
  25.   int count = 0;" V2 n$ f( j' C, N7 U
  26.   int type = UF_feature_type;& O  y4 P! Y  ?
  27.   tag_t feature = NULL_TAG;
    - y/ k) ?9 l( {* l
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    , q( H7 m: m6 ~# o) z  a8 u$ D
  29.   char *name;: p0 h  n1 k  S
  30.   while(feature!= NULL_TAG)
    * W1 Q1 |+ T) |6 _
  31.   {
    3 \' l7 K0 W2 f7 ]8 d2 ]# H& X
  32.     count++;
    ' o" a' Q! j' ]! W( p4 g8 Q/ U
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    ; ]) {$ B6 n/ x/ B) T8 w$ k
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    " ]- c1 Z' a$ r) X& [
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);. D) ~& e0 H' E/ ~: b( O; q' S
  36.     uc1601(msg1,1);+ a9 H$ p: c6 L! {
  37.   }  
    9 S5 A  _/ |) p, ~0 h) x6 ]! j
  38.   
    6 S) D! F* Q/ V% U, u4 P
  39. }
    . x% e& p7 x  S6 d3 I: N
  40.   $ u; v  |: u8 k
  41. }</p>
复制代码
( F( ^4 y2 \9 A9 v+ N8 g
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了