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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
* p. I4 C% `4 U
循环查找所有打开零件的特征并输出特征列表7 N  W7 ]% c. G/ K( Q
  1.   @3 {5 [0 R7 f, w! U
  2. <p>static void do_UGopen_api(void)8 L! h- X( v7 Q+ t/ T
  3. {
    & u7 a; l/ z* ^, _- m
  4. // create block 1
    5 r3 s0 Z5 C! m7 d
  5. double coner[3] = {0,0,0};) r+ H" L" V! d" {* y
  6. char *edges[3] = {"l=100","w=100","h=20"};
    . a* C6 ~2 g( J: W* t
  7. tag_t blk_tag;- z; o1 `! A9 ]" l( v; P1 L( g
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    " N4 t& E3 Z5 U( B
  9. // create a hole
    ' s& H- f: I6 z. S
  10. double dir[3] = {0,0,1};
    - C1 J0 x$ h' Q" {" d$ H2 X, J7 P
  11. double coner1[3] = {50,50,0};
    8 f# U: j  P5 y: t9 K
  12. tag_t cyl_tag;% v+ R0 L" O3 N: g
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);7 @+ P5 D8 ?% S7 ?
  14. tag_t part;4 T9 h9 x+ d: b' k3 X6 l8 |
  15. char msg[132],msg1[132];
    1 t# e' f" Q+ @2 ^
  16. char part_fspec[MAX_FSPEC_SIZE+1];3 W" R$ w$ U3 X  J! \6 e. E
  17. int num = UF_PART_ask_num_parts();
    * l: S1 M$ d# _5 `4 U8 h
  18. sprintf(msg,"the part num is %d",num);
    4 T; a! M7 `& i$ s1 ^3 [* t8 b
  19. uc1601(msg,1);4 c* f" o0 T0 k  ~/ t# W  e
  20. for(int num_part=0;num_part<num;num_part++), [9 _' W4 p& D9 W4 j3 i$ j
  21. {: N* L& s$ D" `2 T6 c" c: l# N% Y. n
  22.   part = UF_PART_ask_nth_part(num_part);3 @2 x1 U- t* u  C' ^8 ~
  23.   UF_PART_ask_part_name(part,part_fspec);
    / U2 B0 c: @% E
  24.   uc1601(part_fspec,1);& e( u+ \3 }. a* X, B' }
  25.   int count = 0;
    ' s, N2 H8 p# S. r2 B
  26.   int type = UF_feature_type;% U. O0 K$ p6 p9 o' F! _
  27.   tag_t feature = NULL_TAG;; d" t# F6 h. g2 h: a" N6 i3 L: C
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);5 z# B0 h3 c0 c% I( E8 M, x: K
  29.   char *name;
    + y" x9 z; H  Z% z
  30.   while(feature!= NULL_TAG)
    1 P6 A2 ~9 E5 W. L/ w0 b: O
  31.   {
    ' ^/ f2 Y- H( o
  32.     count++;
    6 c& c' A- H" p8 P3 g: c: F- [
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    ( w+ ?0 W3 T7 c( \7 y1 g7 [9 P% h
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    % B4 X# a8 p4 M8 e2 L9 I
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);5 w6 r6 D3 y2 i4 ^5 @6 j  [$ ~
  36.     uc1601(msg1,1);
    0 k. {+ d% z4 ?' d8 h/ i
  37.   }  
    6 ]( _0 d& F+ Z/ o& j) [
  38.   
    3 u% X! F" |2 K/ S- s. W. b. t. J7 s
  39. }2 a+ C: n( m7 T( {: q
  40.   
    + l$ b4 h. i- B8 b* K
  41. }</p>
复制代码

- [2 M- ~* u& L$ F
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了