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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x

" q, N6 X8 x! v! ~循环查找所有打开零件的特征并输出特征列表
: _  U0 m, f/ P8 j& G2 x$ K' d( c
  1. ( P# l8 A# h" [$ P. \8 k6 j4 @
  2. <p>static void do_UGopen_api(void)
    ( x/ Q7 R. m6 I+ C: l5 C
  3. {
    ' X6 s: L" C; C
  4. // create block 1
    # F( a( v( G7 a
  5. double coner[3] = {0,0,0};
    ' X: {/ C7 g% P( X6 \- v3 a- H3 v- r
  6. char *edges[3] = {"l=100","w=100","h=20"};2 c1 S6 H8 Y% r9 P
  7. tag_t blk_tag;
    . o2 A- R4 G. b, O9 F
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    ; l$ R- h3 L0 W2 N1 u# ^; _- s/ ?
  9. // create a hole2 b6 {. b9 t% T2 R; K/ C" O! A
  10. double dir[3] = {0,0,1};- X. l/ R# ~# p. I: d" L
  11. double coner1[3] = {50,50,0};# d' x2 n' P& M7 \& e: n' l
  12. tag_t cyl_tag;
    : Z0 f8 y$ _6 @& x' z
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);$ h+ S( v* E( M2 ?+ Z
  14. tag_t part;
    + X% C4 Z- N. x/ V4 R" @
  15. char msg[132],msg1[132];- \. F& _- k0 @3 S- `0 E
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    % U5 Z1 l* {9 z4 U% {6 B7 {
  17. int num = UF_PART_ask_num_parts();
    0 N$ X4 U0 b% c& p- o
  18. sprintf(msg,"the part num is %d",num);
    1 q, m, u5 z7 r& d; [
  19. uc1601(msg,1);% _- A8 B# O4 t& m  p# z
  20. for(int num_part=0;num_part<num;num_part++)3 U$ ^) Q5 Q  O0 `
  21. {
    & u) _; O- c  p1 g( `; ~! N
  22.   part = UF_PART_ask_nth_part(num_part);
    4 ~1 l' A/ m0 o. P# ^; I
  23.   UF_PART_ask_part_name(part,part_fspec);
    ' A& B& G9 B: L( X2 }7 j3 b6 R* D4 M
  24.   uc1601(part_fspec,1);4 G7 j0 Z* Q7 S1 z3 u+ ~
  25.   int count = 0;3 H  \6 ^0 B( X+ {9 x
  26.   int type = UF_feature_type;
    ; X" C9 I# }6 @, Y+ i
  27.   tag_t feature = NULL_TAG;* ]4 d+ k1 Q, ?. ~3 M$ G3 @
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);8 i: {) @0 J& y/ G7 c
  29.   char *name;+ `; j$ _; }, n: R$ Z0 G+ C/ K
  30.   while(feature!= NULL_TAG)
    8 P: e5 C! r0 i9 L# u: V- i* s
  31.   { 5 ?& G5 v0 X" f5 |/ p
  32.     count++;  m* B& F4 D3 {0 [$ _0 V
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    , @6 w+ m! C1 ~  [2 D  y
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);3 E' ]% p' k. q8 v, b2 Z4 u6 d
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    1 r; ~. O0 t7 z! R2 U6 l
  36.     uc1601(msg1,1);
    5 G+ Y& J/ B8 V  \+ i5 a' B! D/ R
  37.   }  
    6 G4 Z8 H" K) g- B
  38.   1 R  u& G+ w5 L, h8 V1 G
  39. }& R% _; b$ e3 o3 w; s+ |
  40.   
    % T: a6 M! z  S' t
  41. }</p>
复制代码

  X' g/ H7 T- C! ^8 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二次开发专题模块培训报名开始啦

    我知道了