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

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

[复制链接]

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

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

admin 楼主

2013-11-26 15:12:52

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

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

x

' \5 S  k: `  n  k/ M1 V循环查找所有打开零件的特征并输出特征列表
$ m( `, P7 T# v$ u" A) A9 {5 C$ G

  1. + Y  X! T9 y3 V" {
  2. <p>static void do_UGopen_api(void)
    5 l" f  F' j# ]; F+ E
  3. {
    ' C6 d! e7 s$ U2 L3 ]
  4. // create block 1
    / j7 J6 f9 B* Z
  5. double coner[3] = {0,0,0};  l1 T) D+ V4 F* ^  Y* Q- V+ A
  6. char *edges[3] = {"l=100","w=100","h=20"};) V& t" \) X7 Q; I# S
  7. tag_t blk_tag;4 `7 {" o0 T5 x4 w9 A8 q
  8. UF_MODL_create_block1(UF_NULLSIGN,coner,edges,&blk_tag);
    ) p) v3 C. A; X- d, d, t' r; j
  9. // create a hole
    , J4 r) S8 @- l! r/ |2 p
  10. double dir[3] = {0,0,1};& k7 o7 O2 C5 ^
  11. double coner1[3] = {50,50,0};% U& H0 D# L) p! W+ X/ m# q
  12. tag_t cyl_tag;
    - O7 a! R& `6 F! c0 ~2 c' I5 j- q
  13. UF_MODL_create_cyl1(UF_NEGATIVE,coner1,"h","20",dir,&cyl_tag);; K2 C  g* y! o! B
  14. tag_t part;0 {* i  ~5 y( t. U
  15. char msg[132],msg1[132];
    8 a$ ^& L& W0 Z- M# g
  16. char part_fspec[MAX_FSPEC_SIZE+1];0 _0 F6 O5 T* w3 f4 v, [
  17. int num = UF_PART_ask_num_parts();/ W: n5 I- @/ s/ m
  18. sprintf(msg,"the part num is %d",num);: u: p8 y( N- z0 t  h6 X- k
  19. uc1601(msg,1);
    " m6 Q# k5 l3 j
  20. for(int num_part=0;num_part<num;num_part++)) P9 b% g7 o9 x; V0 h. q$ i
  21. {
    ) x+ k& i7 U" b
  22.   part = UF_PART_ask_nth_part(num_part);
    # B2 \: ]1 d, S& E% P! K  o
  23.   UF_PART_ask_part_name(part,part_fspec);/ [9 ?0 |4 r! }* \
  24.   uc1601(part_fspec,1);
    5 a( p# {: F* F: u/ h5 n- ~
  25.   int count = 0;* f7 n( ^; k$ j4 O! ~
  26.   int type = UF_feature_type;
    ( D# [9 k2 z8 r9 Z& P- o; j' B
  27.   tag_t feature = NULL_TAG;9 m7 `1 c* E) d3 u. Y
  28.   UF_OBJ_cycle_objs_in_part(part,type,&feature);
    4 N5 k  d2 ~2 o
  29.   char *name;
    7 g* R4 `+ ^* M: d; I( ^+ X: {: {
  30.   while(feature!= NULL_TAG)
    / J8 w/ u) X* @  Q
  31.   {
    ' |  A2 @" t  {! c+ t5 c& }
  32.     count++;* V1 Q! Q4 @/ y2 I
  33.     UF_MODL_ask_feat_display_name(feature,&name);
    ( Q) s1 o; G* d3 T( I/ u6 {/ w: h0 |. M
  34.     UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ' H0 y% Y. D  \; E6 F  u9 s/ ^$ k/ X
  35.     sprintf(msg1,"the cyle result is the %d feature : %s",count,name);( `$ U. j3 s) R
  36.     uc1601(msg1,1);
    . X' w) n* s2 Z+ B8 T7 M5 r
  37.   }  
    ( c2 o  G, |6 C8 L  c9 l( M
  38.   
    ! |. u  S" O: [* f" x/ `) ~
  39. }
    " s! h- Y/ }/ e  M+ M
  40.   8 v& c! Y+ |0 F
  41. }</p>
复制代码

4 ^" Y2 T5 G4 G- z
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了