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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x

1 r% S6 K& _' w+ Y+ x; V循环查找所有打开零件的特征并输出特征列表8 l" \$ P" [6 u, M1 m7 a$ c7 e- r% \
  1. 4 E, l9 t9 \5 j) ]( u6 W& V
  2. <p>static void do_UGopen_api(void); e, m+ w! O5 R3 `: T/ A
  3. {
    ' P& y4 i2 U/ B" i5 F2 U4 p' d. E
  4. // create block 1
    3 w4 \) ~* f: P0 J. z) Z, t
  5. double coner[3] = {0,0,0};3 [; \& T6 l. T8 K
  6. char *edges[3] = {"l=100","w=100","h=20"};8 Z  u7 A! ?; W
  7. tag_t blk_tag;
    6 R! l# m& @$ K" k$ F5 W0 ~
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    . k; t5 z2 y. b! k
  9. // create a hole$ W" P( ]9 j4 ], C9 s
  10. double dir[3] = {0,0,1};9 G0 `+ i6 r! z* B$ _* J
  11. double coner1[3] = {50,50,0};
    - k3 B% e% D! E/ D5 ?3 {/ o; w
  12. tag_t cyl_tag;
    $ Y+ [4 c/ r- ^# Y
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    3 C" Q* b, k. ]+ \- z
  14. tag_t part;0 G" R4 {  z% ^
  15. char msg[132],msg1[132];
    3 m# K( k+ F! U6 i) M
  16. char part_fspec[MAX_FSPEC_SIZE+1];+ m6 C  p$ V' P# g: @6 D
  17. int num = UF_PART_ask_num_parts();
    5 _' N9 Y1 x! B8 f4 `  Z
  18. sprintf(msg,"the part num is %d",num);
    ( O9 E: F& f3 c5 b% Z4 W9 F* G
  19. uc1601(msg,1);) k8 v- `0 H/ H1 ]* E- w6 s0 N
  20. for(int num_part=0;num_part<num;num_part++)$ [; c1 f0 w( o) m1 L# k4 n8 {
  21. {
    0 x' k5 ]* b  a
  22.   part = UF_PART_ask_nth_part(num_part);
    ! b2 s" W3 m% B7 g
  23.   UF_PART_ask_part_name(part,part_fspec);1 Y6 O  {* _* u; M1 m: _
  24.   uc1601(part_fspec,1);6 D0 H- d$ q  s4 ]. z1 \
  25.   int count = 0;
    ' n9 E3 m( s9 `. C
  26.   int type = UF_feature_type;. e0 L# l8 |2 ~6 ~4 Y
  27.   tag_t feature = NULL_TAG;
    6 n, ?" e$ z# j9 V, A7 j3 F& F
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    8 ~: h7 w1 L3 P8 a& p; t. g; |
  29.   char *name;1 g  |' T9 r; O
  30.   while(feature!= NULL_TAG)
    3 t) p/ F3 t! e5 {' Y" {/ q( y
  31.   { 3 _" P, h8 l. }! }  j% A
  32.     count++;) U6 K. Z" ^3 E+ d4 u: ]
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    ! W) ], @+ j( Q% R. `& w) J; ^
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);) c) w5 {, e+ W9 J8 @
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);/ w1 c$ P/ j5 A# y. }5 q' O; F, {' p
  36.     uc1601(msg1,1);
    2 W4 ?4 u5 ]* F' v
  37.   }  1 b$ U4 _7 r2 N7 I
  38.   
    ; t0 P. |) @' g$ T- n
  39. }+ R! e# Y; K/ D0 U/ _8 \6 M% C
  40.   4 o% ?8 r& G% R5 K/ c
  41. }</p>
复制代码

) K+ M. @4 R2 N7 j( P4 A7 v
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了