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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x

3 V. \5 G3 `5 o% D循环查找所有打开零件的特征并输出特征列表' j; ^. e5 c! H8 K9 t1 G- {

  1. - ^, s" J) J9 [, E2 u( B
  2. <p>static void do_UGopen_api(void)* @3 ]  E" N. `/ ~, J; f
  3. {+ a. V1 B$ }, d; _" V! z' a8 w: `/ \
  4. // create block 1
    ( [/ H& z; m0 [5 f  p( p. @
  5. double coner[3] = {0,0,0};
    & p# u, V! _0 b1 B$ L/ q
  6. char *edges[3] = {"l=100","w=100","h=20"};4 G4 C5 L& n$ x* g& M
  7. tag_t blk_tag;
    7 H9 ~+ ?$ h  [1 q: U$ C
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);; k/ {9 t" m) J! l
  9. // create a hole2 r/ H- d8 h3 E( h1 z
  10. double dir[3] = {0,0,1};
    ! M' {& v9 ?6 J: d5 _: G9 t( T0 d
  11. double coner1[3] = {50,50,0};: x% `2 }" M( [3 F, I+ I
  12. tag_t cyl_tag;
    ; U: y* a/ @9 p* O4 J' m% m
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    2 B* |0 L/ c' i! W! p: l' v
  14. tag_t part;( `8 S( ]8 |  B$ X! {7 m
  15. char msg[132],msg1[132];! Z# X% ^2 g8 Y. f' n
  16. char part_fspec[MAX_FSPEC_SIZE+1];! n2 v) Z, b- B
  17. int num = UF_PART_ask_num_parts();4 ?# i! V. q& N+ I
  18. sprintf(msg,"the part num is %d",num);/ l+ r) R0 ?. w1 u
  19. uc1601(msg,1);4 |  y7 `1 }* j8 r9 y& N% `
  20. for(int num_part=0;num_part<num;num_part++)
    9 j& H8 B! K5 G+ k' f
  21. {
    ! [1 y6 T8 L- P* J: z
  22.   part = UF_PART_ask_nth_part(num_part);2 f  a: {' I  \4 W, h) w
  23.   UF_PART_ask_part_name(part,part_fspec);
    $ q$ a2 P4 V7 {, S
  24.   uc1601(part_fspec,1);
    . z& g! A1 H9 x9 \8 I' W
  25.   int count = 0;3 e# P# r" r7 D0 g
  26.   int type = UF_feature_type;
    2 l# q; q0 S6 }' H# x% ?+ q
  27.   tag_t feature = NULL_TAG;
    ' g6 Y9 w; k1 b: a  ^- s; d
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    8 E$ T8 S/ P+ [, s* y
  29.   char *name;
    ! j6 k; |; x6 Q4 f8 K; L0 m
  30.   while(feature!= NULL_TAG)  _/ v+ ^% H1 ?% H
  31.   {
    - U  J" X9 K+ u% X- u/ r- L* R6 w
  32.     count++;! `9 d6 [% [" H* j* Z
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    ' _; N/ s: `. j$ H: P$ U
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    $ D$ n' ~* \6 a% \7 q! R
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);3 h- c( \/ f1 m+ d/ T( W" z5 H; B$ B
  36.     uc1601(msg1,1);% |4 }7 n& z/ S( n" ]1 [6 A; p; {
  37.   }  
    9 ^! X) N' F  b) i; S$ ^8 Z
  38.   1 `& M% }0 w8 X- P* T$ L' e& O) O
  39. }
    - [3 d' T$ |# t6 f. r* f
  40.   - _+ W1 ^( f: U
  41. }</p>
复制代码

( ~- z) w0 ?; J" n  F6 h6 S3 B
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了