PLM之家PLMHome-工业软件践行者

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

[复制链接]

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

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

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

x
3 S& r' i, L! ?' E5 M! n7 f
循环查找所有打开零件的特征并输出特征列表. m" b+ ?/ G! ^1 L8 a
  1. 4 B/ x: ^4 `$ ^  c6 m+ J7 L5 Q7 f/ M
  2. <p>static void do_UGopen_api(void): C/ _0 z6 h2 V0 B
  3. {
    + q; R+ C& X" ]- _- Q- h4 T
  4. // create block 1/ X4 C8 l" |# V2 u9 V% z
  5. double coner[3] = {0,0,0};$ K6 |9 f2 z! W. L
  6. char *edges[3] = {"l=100","w=100","h=20"};( e" r6 R! B$ l/ p1 L
  7. tag_t blk_tag;
    1 j8 q9 {8 k7 b  F. P' {
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);6 B: l8 y& x; f
  9. // create a hole$ A% \0 K$ ~( z; C
  10. double dir[3] = {0,0,1};( z5 n/ U- M' w' r0 }  S7 V+ Y, ~4 f
  11. double coner1[3] = {50,50,0};. W6 R2 _6 w2 G  P$ {& g( S
  12. tag_t cyl_tag;
    ; M7 `& D/ v* M1 d- k
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);" h7 `* @1 @( I6 Z; V  A  S+ Y
  14. tag_t part;
    1 X( C$ e* g; I+ d! [4 R
  15. char msg[132],msg1[132];
    ; p* a& N% d, U. @- p
  16. char part_fspec[MAX_FSPEC_SIZE+1];, B+ U) v( F+ L: R) B
  17. int num = UF_PART_ask_num_parts();1 Y& h' J& z2 |* T: \9 |. k0 z
  18. sprintf(msg,"the part num is %d",num);6 z/ E; j6 G- r! V" F
  19. uc1601(msg,1);4 u3 W3 S5 q( y( G0 {# T  m/ Z
  20. for(int num_part=0;num_part<num;num_part++)
    , q/ D( H6 ]2 V  s9 G
  21. {* o. \& }+ T% ]
  22.   part = UF_PART_ask_nth_part(num_part);
    3 a4 S7 U9 Q3 b2 k0 w$ B' t
  23.   UF_PART_ask_part_name(part,part_fspec);
    2 r. G9 O# j6 W( T6 @# z5 ~- O
  24.   uc1601(part_fspec,1);
    . Q6 v3 S; D6 i/ R
  25.   int count = 0;+ l5 Y, ?0 f2 s
  26.   int type = UF_feature_type;
    ) A, {0 ~+ M5 J% K4 u" _
  27.   tag_t feature = NULL_TAG;
    , h# g* p: |( n; i  _+ u5 Y9 z
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);+ P! S) T6 L6 Z# [
  29.   char *name;9 \3 v# S" }! O! [( ~
  30.   while(feature!= NULL_TAG)
    ; o5 u" o7 ]; K- h6 x1 }6 M* X
  31.   { ) |! l( G8 j" [' t( f# [( j$ U" o/ X
  32.     count++;, D  K1 {2 j/ e5 v  ~( r# N
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    6 e! B& z3 V7 s! r: b
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);" e% U8 m2 \9 B5 v) R8 a
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);
    / O. }6 ]; V# a2 E0 S
  36.     uc1601(msg1,1);) S4 q9 @* k) i" U
  37.   }  
    1 F4 Z4 u: }( s' U
  38.   / m% l& `  E7 U
  39. }! {6 H) N8 o! Z5 x: B- P" B
  40.   4 Y2 k; ~2 j5 P! `6 m; N1 c
  41. }</p>
复制代码
, T% s% s" B- ^$ j' k, z5 l5 ~
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了