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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
: e. a  m3 X3 P3 t$ }
循环查找所有打开零件的特征并输出特征列表
/ w2 J0 [  w9 ?9 j' f/ y8 K
  1. % H! v& ]% j3 Q+ T2 b  X6 |
  2. <p>static void do_UGopen_api(void)
    : u# U" f4 c( J& P0 E, M
  3. {
    8 h- M# p) a5 v# W7 t
  4. // create block 1& p2 p: h, o! p& k4 ~! @& m* H7 y
  5. double coner[3] = {0,0,0};
    0 A3 \& G2 y9 d" H& P
  6. char *edges[3] = {"l=100","w=100","h=20"};8 c# ~& n  w& {/ V9 n( ]4 U$ W
  7. tag_t blk_tag;1 C' F* Y; ^0 q: z1 L
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);. e- L0 v7 j9 @
  9. // create a hole
    7 C6 u, Y0 b8 g8 _9 J% l
  10. double dir[3] = {0,0,1};
      A+ P1 n$ {# r. Q* U
  11. double coner1[3] = {50,50,0};: u0 u) B6 d4 o! }
  12. tag_t cyl_tag;
    4 T0 }4 u7 G" T4 D2 @4 n% A
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
      ~+ ^% s9 z. }; a
  14. tag_t part;
      ?5 d4 y2 |  h; Q' X2 }& [
  15. char msg[132],msg1[132];
    7 i$ W. ?0 {$ n! O+ N
  16. char part_fspec[MAX_FSPEC_SIZE+1];& }! J! F# X2 |! I; h' |6 s- ^
  17. int num = UF_PART_ask_num_parts();
    + ^, ~8 @! [: C* K5 b
  18. sprintf(msg,"the part num is %d",num);1 @3 U5 ~+ B: G/ v
  19. uc1601(msg,1);
    : N/ }: L1 v! Y4 x5 w
  20. for(int num_part=0;num_part<num;num_part++)
    5 h9 v8 ~7 O3 r, R, ^' h8 U/ u
  21. {! H* N6 s  N& c9 q$ T( ]: M
  22.   part = UF_PART_ask_nth_part(num_part);' ~: `1 F" k% p
  23.   UF_PART_ask_part_name(part,part_fspec);
    % O# O+ x: E& C# r
  24.   uc1601(part_fspec,1);/ H% m, f3 J* ?
  25.   int count = 0;% o8 ~3 j  F5 e* R- M" n/ \' h
  26.   int type = UF_feature_type;4 ~4 A9 M5 {  x
  27.   tag_t feature = NULL_TAG;; z( o. c7 }4 Z* A
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);  p* Z: Z6 z5 ^0 A7 h
  29.   char *name;2 [' B4 p; Q" g4 O
  30.   while(feature!= NULL_TAG)4 g) W- o& f/ l! ^2 W
  31.   { ! ^# B6 x( z9 Q; D
  32.     count++;0 V1 d- Y+ l1 [" I" X5 N
  33.     UF_MODL_ask_feat_display_name(feature,&name);) B& Q( ?, X4 C. ?: ?
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    $ j) ^* i' q- r. I) f7 c
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
      S: n( y6 x. s- g9 ~8 |6 O
  36.     uc1601(msg1,1);% u; n% c+ A, Z
  37.   }  
    4 \  b8 h# ~5 W( m
  38.   ) G/ ]( u$ W7 S) e# ?( Z% e/ R
  39. }: ?) b' ~$ B, F
  40.   " ?" \+ [% b. R* _
  41. }</p>
复制代码
6 x. C" ?' K9 Z# n+ T3 `
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了