PLM之家PLMHome-国产软件践行者

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
5 O+ a) m& ^" }
循环查找所有打开零件的特征并输出特征列表# c1 m- N  y) z/ a9 N

  1. 2 d: K# L" B/ d8 V( N
  2. <p>static void do_UGopen_api(void)0 w$ R& y7 f/ C3 F5 M
  3. {
    . \! d& c/ V& E# v2 a
  4. // create block 1
    + w, S/ Y8 x* S
  5. double coner[3] = {0,0,0};8 a- ?0 ^3 X& R! N' Q, p1 D/ c
  6. char *edges[3] = {"l=100","w=100","h=20"};8 b( C5 C1 l' B. I9 ]
  7. tag_t blk_tag;/ R/ V& o% \  m4 [9 g( H
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);) o- i; O% r9 r2 o4 T
  9. // create a hole
    2 G0 `  _1 p! ]: {" e
  10. double dir[3] = {0,0,1};, a- {: i3 _( `, s# M
  11. double coner1[3] = {50,50,0};
    9 u# n5 X; Z0 `" k8 p# h! a1 R
  12. tag_t cyl_tag;" k6 k0 y% S8 C% K
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    4 w- O" L# B- j: r2 K3 k
  14. tag_t part;
    1 o* `" [) e9 D* J
  15. char msg[132],msg1[132];6 _- F# P& I3 b  D( V- T' Z
  16. char part_fspec[MAX_FSPEC_SIZE+1];7 _' y3 m1 H/ I6 O! q/ Z9 ?; O) i
  17. int num = UF_PART_ask_num_parts();6 r2 @7 f: W, J, k4 P3 k
  18. sprintf(msg,"the part num is %d",num);9 q# X% |  @& X; _
  19. uc1601(msg,1);" m6 n: R- Z7 g7 S/ C) }
  20. for(int num_part=0;num_part<num;num_part++): F; m; ?) a* t* r  r- z/ x4 u
  21. {
    ; a- g+ P" m* G3 H" h$ k/ i
  22.   part = UF_PART_ask_nth_part(num_part);  r8 h2 z: s( B2 s$ {
  23.   UF_PART_ask_part_name(part,part_fspec);
    / ]7 A1 e1 t* o! G9 \. ]
  24.   uc1601(part_fspec,1);
    5 ^, p1 Q( `4 C; j3 _/ [, `% }
  25.   int count = 0;( }% S! C& O. C* f/ ?
  26.   int type = UF_feature_type;' e  z9 x; T% |# A% {+ `+ b7 k* ?% U
  27.   tag_t feature = NULL_TAG;& {  r, Y0 n: \- U+ t
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);. J  \* d) O  B! G
  29.   char *name;* z9 }# D9 Z- e" H9 A
  30.   while(feature!= NULL_TAG), H2 o& E) C- i# K# Y; t/ a- n
  31.   {
    ; g' x& y- o. s9 [% a% y
  32.     count++;
    - Q, {) U& N4 W! Q& |4 k. @
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    / j& [' l1 O4 |# v/ F4 z# y
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);  Z; {1 S+ @5 E/ }! c* P
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);1 S  P$ B1 L( V; \; v. [& P# Q
  36.     uc1601(msg1,1);
    * W  ~( o9 J4 a( V  V
  37.   }  
    3 y+ v1 T/ V0 _1 F. L6 m8 Z
  38.   
    " u% I3 O5 \( j2 ]0 V' c2 e$ V
  39. }1 y1 @% ]$ ~  l/ a
  40.   
      Q4 u. ~, V. `4 C( o$ g
  41. }</p>
复制代码
8 G( u' Y& i5 `& d/ k9 ^
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了