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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
( R9 M# V! q; v6 d( `4 b0 t
循环查找所有打开零件的特征并输出特征列表
4 g$ d" L4 j# z+ v  z- ]1 r

  1. . R% W7 A  }6 y  A
  2. <p>static void do_UGopen_api(void)
    ! z, I: Z, b9 X! j$ V& O/ j0 O; }$ e
  3. {
    5 y$ `2 L: M' y, o
  4. // create block 1) `" V8 U) B& ?0 M, \' h
  5. double coner[3] = {0,0,0};
    ; T) J( w: C4 Z- I" H+ g0 x
  6. char *edges[3] = {"l=100","w=100","h=20"};7 p. z, C4 Y9 s( M3 z; v$ p
  7. tag_t blk_tag;6 m8 p7 ]' `; s7 G/ [
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);# f. v: c* a& k1 E
  9. // create a hole
    ! o3 J; h9 s* }. L: s# Q; ^
  10. double dir[3] = {0,0,1};# W! n0 ]  J) q5 R4 V. b: S
  11. double coner1[3] = {50,50,0};
    / u, v& |( t" ~* ]2 Z* ]
  12. tag_t cyl_tag;
    - E" K" s6 ~! W+ a
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    $ Q3 P" F: z; J" I0 E+ t! h
  14. tag_t part;# Q# T1 d% p/ }' ]/ D$ n* a
  15. char msg[132],msg1[132];
    ; z# {+ G3 s/ m* q: M! e2 S
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    / D+ \0 [5 F3 G5 u
  17. int num = UF_PART_ask_num_parts();) e* o5 b) ^. K4 @0 _# d
  18. sprintf(msg,"the part num is %d",num);
    7 _& ?* `1 a2 E8 U! F
  19. uc1601(msg,1);
    2 y4 p2 N" }; B  h
  20. for(int num_part=0;num_part<num;num_part++)% C% o4 G7 j! v; h8 O& |+ g" ^
  21. {9 G+ M2 ^0 r0 c2 ~6 q
  22.   part = UF_PART_ask_nth_part(num_part);) k) E$ p3 ^" G& D1 g
  23.   UF_PART_ask_part_name(part,part_fspec);; j, A7 v- n/ W# d+ k" _
  24.   uc1601(part_fspec,1);
    $ }2 y# x  G! Q
  25.   int count = 0;
    . I+ B7 D9 E7 C' O0 g
  26.   int type = UF_feature_type;
    1 \" Y: Q. n/ e0 O# c! l  J- o
  27.   tag_t feature = NULL_TAG;" E$ A. F% q9 E5 p6 o  g% @
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);" c' v7 b) P) |! W. M
  29.   char *name;
    " E/ y  A" f; x3 a
  30.   while(feature!= NULL_TAG)
    4 U" _0 t, j; }. j. a& e6 X: `
  31.   {
    9 p- W8 _; I5 c# M
  32.     count++;; N; j6 ?: ^- k; d( H1 w
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    - `  D4 U' |; ?$ x
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);0 U2 E2 I& k) z# W$ Q+ J
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    " Q+ ?! h$ y0 r( m
  36.     uc1601(msg1,1);1 `, N9 c, y3 y! v( L0 ^3 d$ a) s
  37.   }  
    ) j" o7 B1 @3 |! Y
  38.   
    3 b. ?# L7 [, K5 H' n
  39. }% m% _2 P5 m1 P3 A$ u3 h
  40.   
    % T& v! s( f( G8 t$ j# G$ D9 q1 |! @1 [
  41. }</p>
复制代码

& e3 C  X) Z& f' b9 @& _7 J
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了