PLM之家PLMHome-国产软件践行者

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
7 O- T+ ], i+ B! c* i- M; a/ g
循环查找所有打开零件的特征并输出特征列表. `# o0 D. L% g$ ?, ~9 M- F- k' v
  1. 9 g- I/ q4 E% \. i" L
  2. <p>static void do_UGopen_api(void)' P: G0 W) F3 B/ ?5 I
  3. {
    8 v7 B, ]3 z3 D5 H
  4. // create block 1! ~, ~" ^* g( F) k& [* {) I9 @
  5. double coner[3] = {0,0,0};
    ( B+ I8 R$ v( u# q1 O  o' V
  6. char *edges[3] = {"l=100","w=100","h=20"};2 Z) [9 W! U7 Y3 Z1 o( d. E
  7. tag_t blk_tag;
    : R- X/ X/ ?4 A9 W9 Z
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    1 D: `& s) J/ J/ l, P5 H
  9. // create a hole
    . b" J; ]5 `8 I; o' g9 ~
  10. double dir[3] = {0,0,1};) x) T& d4 J1 A* P9 [
  11. double coner1[3] = {50,50,0};
    : Z7 e% i4 y& c6 ^: ?& m
  12. tag_t cyl_tag;- x' G( y4 e- @/ U/ w8 I, y) j
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    % y& ~. g+ y2 C5 ^/ y& J# C4 n+ }
  14. tag_t part;
    4 P  ?& H9 i; r9 L% ^
  15. char msg[132],msg1[132];# H$ _4 G0 E4 `# G
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    & C' w+ J  k' K2 L% ?. P. }6 l
  17. int num = UF_PART_ask_num_parts();  G' P* g& y, [5 H% I3 A
  18. sprintf(msg,"the part num is %d",num);
    1 u. ]3 V/ x$ N4 I- ~# |
  19. uc1601(msg,1);
    7 E* M$ ~" C# b; O9 z0 q
  20. for(int num_part=0;num_part<num;num_part++); h; H) R+ @* U) t; W" F% q
  21. {
    5 m. g1 d' G  ~" G- d! R9 N7 c  U
  22.   part = UF_PART_ask_nth_part(num_part);- e* w" M* O# M( {) V
  23.   UF_PART_ask_part_name(part,part_fspec);. A7 q) M% f2 b6 D8 v
  24.   uc1601(part_fspec,1);6 ^" p# B& V+ \" Y
  25.   int count = 0;
    3 N" \5 A; X9 x6 b7 b& ~
  26.   int type = UF_feature_type;
    ( V" D9 ]- v2 O& S8 Q
  27.   tag_t feature = NULL_TAG;
    / ]  G8 T/ w2 G0 E) H  @4 X7 P
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);+ u( S* ]4 o, s0 e) T
  29.   char *name;' O" G8 ~" @4 \1 V% P
  30.   while(feature!= NULL_TAG)
    , g, c; f$ o, ?, j4 x
  31.   {
    % J/ m% r$ [- M& @
  32.     count++;0 i6 B' E- o' B' I+ A
  33.     UF_MODL_ask_feat_display_name(feature,&name);- _: n, q' r6 n* \, [. i# w
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    8 ^2 i+ @" `7 G  t, l# T
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);2 U! `: ^5 ~/ R& L2 Y6 a/ H
  36.     uc1601(msg1,1);! V* o: K- ^# H  g5 A3 s
  37.   }  3 m9 w0 r; C5 i* x3 b) e3 L% F
  38.   
    5 ]( O/ F$ ?# ^5 y$ t
  39. }
    # e5 c( v3 W5 _( H7 G7 f9 }
  40.   ! T. d6 E# j' _/ i5 A! D' M- Z0 {
  41. }</p>
复制代码
8 p! t  F" l; I, M: N3 n
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了