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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
* H& ^/ ~5 F! a: ?
循环查找所有打开零件的特征并输出特征列表
3 Y! p3 S6 t! }- t4 {

  1. 5 Y( Z0 z& q" k
  2. <p>static void do_UGopen_api(void)
    2 R2 ]3 V3 r' G( r) a$ G
  3. {
    $ m: i# u. H5 y& Y  ~+ g- S
  4. // create block 1
    8 |0 g$ E3 o/ q- H% Q
  5. double coner[3] = {0,0,0};+ n2 ?0 L6 Z# [" f$ K2 E& [5 R
  6. char *edges[3] = {"l=100","w=100","h=20"};& v3 z4 i: T0 F, S3 ^' N3 o
  7. tag_t blk_tag;$ q( q7 M4 A* y( }5 q: Q" Y
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    - A1 j) Y/ U7 Y* C
  9. // create a hole
    ( a& Z- g' [2 J7 @
  10. double dir[3] = {0,0,1};
    $ P$ }: e. L) z) l7 O3 E4 f- b
  11. double coner1[3] = {50,50,0};9 Z7 |# w( j' Z0 p# Z. x3 x: [" z
  12. tag_t cyl_tag;
    2 I. B* n5 ~4 F6 U! V
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);  f( K+ e" ?' T2 {( k& W
  14. tag_t part;
    % \3 g' s% x  D( D9 T8 o
  15. char msg[132],msg1[132];
    $ T8 y2 j( L# b3 Z# V/ w
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    + W3 f8 f+ Y* ~' `  j! S
  17. int num = UF_PART_ask_num_parts();
    . O  x) H6 O$ C3 [1 a
  18. sprintf(msg,"the part num is %d",num);% F+ _( y8 s$ [2 v
  19. uc1601(msg,1);& T  ?5 S2 x: b! f8 \& X1 B8 \+ C& ?
  20. for(int num_part=0;num_part<num;num_part++)
    & D; L* Q" e" A: u$ |, E1 {" j
  21. {8 x6 g8 Y; s; H
  22.   part = UF_PART_ask_nth_part(num_part);: l7 V1 P( Q9 ]7 a" Y
  23.   UF_PART_ask_part_name(part,part_fspec);
      g% R6 M7 i7 F6 d
  24.   uc1601(part_fspec,1);4 h  S( e  n( N+ g
  25.   int count = 0;1 @1 U8 r% l8 C/ D" ]$ K
  26.   int type = UF_feature_type;
    0 n0 \" f! E5 C5 a# Q
  27.   tag_t feature = NULL_TAG;2 J; B5 Z. w& o; }5 b5 |3 ^$ d% D3 `
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);# o  L( i2 E. x9 a
  29.   char *name;
    ( s! k) A" o/ T4 z8 {
  30.   while(feature!= NULL_TAG)5 R1 b: S9 s- U
  31.   {
      Z& z/ @! i* |1 q# D
  32.     count++;
    - n) O; f/ p& q) ~4 p1 i& r
  33.     UF_MODL_ask_feat_display_name(feature,&name);1 x7 z3 l( Y0 ?, b. B/ }
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);" Z/ g$ Z+ C* f- r4 ~/ _
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    ! X( K: U: W# f. ]5 ~9 O
  36.     uc1601(msg1,1);
    ) r2 F& E! ^5 C. v
  37.   }  
    7 |6 o9 a0 [/ s. _  J" o
  38.   
    4 w8 N' G% y: L: v
  39. }
    2 Y* q: q! C& q. ]
  40.   9 G9 {6 g% [" R4 x: w% U
  41. }</p>
复制代码
- B! \# b! B/ E. k, W
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了