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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x
# s% A: {5 M; E: t, z+ A" G
循环查找所有打开零件的特征并输出特征列表
( w3 M: g5 L) b8 p5 s. a

  1. - i. Y/ m% w% o4 Q4 ^! r6 J3 X
  2. <p>static void do_UGopen_api(void)
    4 K/ _5 D9 {( _8 D
  3. {" T, E- J; P2 u0 P6 v+ {
  4. // create block 1; B3 W# ^6 x0 L8 L# B% K7 w) C
  5. double coner[3] = {0,0,0};' U( Z: |; C5 h# x- |6 K
  6. char *edges[3] = {"l=100","w=100","h=20"};7 K1 [5 r* ~6 ^6 A
  7. tag_t blk_tag;
    ( h) D/ v/ c$ |7 l$ y* R
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);% [* o& R% M/ T2 I
  9. // create a hole
    % E8 @3 ]1 q% ~3 b7 r4 m' X) a
  10. double dir[3] = {0,0,1};
    * v3 b2 H2 u+ c0 V
  11. double coner1[3] = {50,50,0};
    , b) ^4 X3 P2 [
  12. tag_t cyl_tag;9 `* s9 Q1 ~" v5 d4 z* w
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);
    / F% [8 w+ s2 `, F5 s$ z, u
  14. tag_t part;' F* b( y* W% |
  15. char msg[132],msg1[132];
    " F6 @* R6 W, C$ D
  16. char part_fspec[MAX_FSPEC_SIZE+1];
    7 M% [8 s6 u6 n, v
  17. int num = UF_PART_ask_num_parts();* W- \, C2 W* y% o
  18. sprintf(msg,"the part num is %d",num);# l- L  b; M' E  Y
  19. uc1601(msg,1);& z' f1 q. E1 U! N, V
  20. for(int num_part=0;num_part<num;num_part++)9 ?& o" ]: T7 A& R* r
  21. {1 b" e, i4 F6 N2 C" L5 J! |
  22.   part = UF_PART_ask_nth_part(num_part);
    + Q/ [- `2 y0 O7 ~. W4 J
  23.   UF_PART_ask_part_name(part,part_fspec);- H& C4 q. j3 Q3 l
  24.   uc1601(part_fspec,1);0 o+ n1 G/ ^* t- K% d9 Q
  25.   int count = 0;
    : R2 h$ C# S& r4 o& p% u
  26.   int type = UF_feature_type;- X: w$ H) T& {
  27.   tag_t feature = NULL_TAG;+ a% K; L3 {. _4 x+ X
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ! F" {" \; ?" l8 {8 O7 g* U0 k
  29.   char *name;
    . g  _6 S$ v. K
  30.   while(feature!= NULL_TAG)- {' r( T1 `9 r+ \' Z
  31.   {
    7 a) G8 V8 V, j' W# b& U, _8 N, @
  32.     count++;
    8 V( w  B# j8 [: r$ b
  33.     UF_MODL_ask_feat_display_name(feature,&name);0 K# k: c! L- }& |, ]3 X
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ! |! H. N+ }# H
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    1 v+ r" x$ P( ]: j* [5 W
  36.     uc1601(msg1,1);
    . d# z; f# B7 [4 K/ q; [
  37.   }  
    ! U3 B! c/ R( A! C1 h. w
  38.   ) s& Z0 M  ?- g, G1 s' A
  39. }* h) [; s. n9 k) t0 u1 J
  40.   
    - N& z* |5 C1 i3 [4 a
  41. }</p>
复制代码
; A' V% V: t. h9 ~7 B4 B7 I- j
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了