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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
7 L* I: c+ h: k$ G. d. K
循环查找所有打开零件的特征并输出特征列表
2 h% n/ _0 z* p7 g: i- m
  1. 4 a; s/ A9 b( ^( y2 b7 }; g  `: i
  2. <p>static void do_UGopen_api(void)
    ) `, z! _/ x! B( n
  3. {4 o4 C. Z9 a& L  P4 ^
  4. // create block 13 e: p0 g, K5 N' k
  5. double coner[3] = {0,0,0};
    $ r8 `; }. ^" }0 ?. _" f- M  w
  6. char *edges[3] = {"l=100","w=100","h=20"};
    . s' Q* U- f6 M, Z$ K
  7. tag_t blk_tag;
    ! Z. k4 z) r, U# D- |, H3 ^
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);4 g7 O% J4 S9 [# v
  9. // create a hole
    5 I; j1 R# H) U1 n5 P0 L- B+ E
  10. double dir[3] = {0,0,1};" H2 D2 H$ L: h6 n! z& ^9 H% T# _* I
  11. double coner1[3] = {50,50,0};4 d# h% K2 B$ g* o/ N! L5 ?
  12. tag_t cyl_tag;
    . s9 |* M6 ]& K: `, f; J/ h3 |6 v
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);* E% x$ |  t- D" c" ^2 v% k
  14. tag_t part;
    0 c; \2 d/ c: }  p, V
  15. char msg[132],msg1[132];# R4 W, `7 N! G# @
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    # A# ]/ f0 m/ P. X$ |; n
  17. int num = UF_PART_ask_num_parts();
    + f7 L; H0 G1 G8 P
  18. sprintf(msg,"the part num is %d",num);! V5 z$ k5 j$ t& f% a; |
  19. uc1601(msg,1);
    2 u3 t2 H6 @1 G# R! S  j
  20. for(int num_part=0;num_part<num;num_part++)7 D0 I4 ]- V4 Y. w- ^
  21. {
      c0 ], @7 ]/ u8 r! O9 _- [
  22.   part = UF_PART_ask_nth_part(num_part);
    / A( A4 N  V$ h: @  ^" f5 u
  23.   UF_PART_ask_part_name(part,part_fspec);7 x" G' B% y- d' l
  24.   uc1601(part_fspec,1);
    - u1 p) e2 x; M2 ?- H3 v$ |
  25.   int count = 0;
    * v( @. d* I2 P0 U1 ]3 i
  26.   int type = UF_feature_type;
    * L- M4 L5 u6 l0 w: f
  27.   tag_t feature = NULL_TAG;; V9 K; [! @) N) `/ I2 W! O- n
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    5 b! X) ~" D% L2 ?* L" `+ L
  29.   char *name;
    0 L- b$ m7 Y% X5 w% b# s2 }
  30.   while(feature!= NULL_TAG)
    6 ]+ b+ k; v- U1 ]8 `  [% y
  31.   { : {5 i. h' b* E9 T3 k7 x; E3 W& m6 o
  32.     count++;
      {7 L1 S& G) u4 @' X
  33.     UF_MODL_ask_feat_display_name(feature,&name);( k) F1 e& i  {, E, h; y9 _8 v
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    2 `8 Y# w! s+ C8 X) L1 l
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    % |( B; g9 x6 a: l7 g5 w1 m/ G
  36.     uc1601(msg1,1);
    - f% ~- F+ p( X9 @& v8 B
  37.   }  - H- a2 b! ~$ V( N& L) A# o$ e
  38.   3 o  D! Y2 c! p! J. X
  39. }
    + m3 O" n5 x* k% U. {8 e2 Y8 `2 Z
  40.   
    ; U# f7 L. g1 ^1 s
  41. }</p>
复制代码

" y3 S  V( q, c1 e$ Y6 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二次开发专题模块培训报名开始啦

    我知道了