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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
  U" u  J# q/ C# p: A* C
循环查找所有打开零件的特征并输出特征列表
% _$ h% Q& z# `+ K* M2 H+ q% Y

  1. 0 y( g; ?5 ?# ?' P
  2. <p>static void do_UGopen_api(void)7 y, ]/ A7 h) t( t) `
  3. {& z1 g' D9 k5 M3 r
  4. // create block 15 A% l. J9 T; V" v" S' j
  5. double coner[3] = {0,0,0};" j+ p: r& z. B, y/ R* l0 O
  6. char *edges[3] = {"l=100","w=100","h=20"};
    7 L- ?) J: |* x" v
  7. tag_t blk_tag;
    7 y/ i9 g9 Q. h6 K2 _; _
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    4 J7 u  x# f( d! w$ l& b9 n
  9. // create a hole
    : O% |; K2 W5 d6 d! [- J) R
  10. double dir[3] = {0,0,1};
    1 z% m& z0 h! \
  11. double coner1[3] = {50,50,0};
    3 c" s5 i0 c1 ]! n  j/ F: G$ P0 B
  12. tag_t cyl_tag;4 h( N" t$ y0 m; R4 J  ^+ d( R% N
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);# u4 ^5 Q3 S9 j( V
  14. tag_t part;
      d5 {+ I* n/ u. y  O
  15. char msg[132],msg1[132];
    5 T4 T3 t* M1 q6 O/ S! e
  16. char part_fspec[MAX_FSPEC_SIZE+1];9 J9 R* }6 @& y6 ^
  17. int num = UF_PART_ask_num_parts();$ @* s1 C* C. K- D9 l
  18. sprintf(msg,"the part num is %d",num);
    % _6 a9 \+ J: t5 N' d9 a8 z4 j
  19. uc1601(msg,1);. r) q) V# }+ r- U8 \
  20. for(int num_part=0;num_part<num;num_part++)/ q2 @, a1 h+ S7 g( s
  21. {
    6 O& `+ ]  O  V6 t
  22.   part = UF_PART_ask_nth_part(num_part);
      o$ Y" L! L+ z" s5 v" V0 S  Z
  23.   UF_PART_ask_part_name(part,part_fspec);
    9 [$ S3 G  c& o( I
  24.   uc1601(part_fspec,1);2 C3 Q7 B- t* ~3 n0 f/ Z
  25.   int count = 0;9 G3 f; w5 a. ]5 J
  26.   int type = UF_feature_type;9 {8 R; j; N; C6 a, l) q
  27.   tag_t feature = NULL_TAG;
    ) |2 {0 R# ^' `) ?
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ; d0 u; [2 k0 o) l3 q
  29.   char *name;
    . v; j/ e4 V0 T  |. D3 v: ^
  30.   while(feature!= NULL_TAG)+ R) F, `6 [. s9 e, }' r& M5 p
  31.   { " G3 ~3 @( \1 x1 _7 O
  32.     count++;' }/ i: {' D; {9 @2 C& |. C1 x% Y& h
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    4 c! n* j% a) n+ O7 u
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ( `" s- x7 _$ h6 |
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    $ f9 F; t7 Q# V/ i& }5 C! a, b
  36.     uc1601(msg1,1);8 b3 o4 |. m' ?  m
  37.   }  6 {2 ?/ J( t3 N5 N
  38.     T, o% p% I/ |. Z' ]* {
  39. }+ a% ]2 N+ e' t) G" e5 h
  40.   1 t6 [2 t+ c# g: H3 |, o
  41. }</p>
复制代码
$ f* m- i3 o: _2 _! ~& G% h
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了