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

[求助] 遍历整个装配,获取所有实体的数组

  [复制链接]

2015-4-14 10:34:38 3881 2

airintheair 发表于 2015-4-14 09:19:35 |阅读模式

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组+ ?/ ^3 S9 s* }* n' D
程序如下,在使用到' R& ]8 |7 t; q+ p  ?, `  ^' a  V
( g0 A' y* x& S' K
int UF_OBJ_cycle_objs_in_part" D, J5 l4 `& B9 Q* [
(
7 s9 O6 X: O, ftag_t part_tag,
0 q  Y; A: X- G2 H0 `% u/ ]int type,
9 ?" S& W3 J8 l2 S5 E6 ^2 Itag_t * object
+ A* {% f* I9 @( n% R+ A/ T) H4 }) z- E' F; U9 g) Z
)
2 c3 h( f) `% @* R' o, e
( a8 n! }- a2 T+ k" W% _. j6 t
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组
7 u2 H7 Q( D9 |! R3 F. r# L 6 d. K( u! W7 J& J% u% x
  1. num_parts=UF_PART_ask_num_parts();
    " J1 K9 P& e: H  b
  2. for (curr_part=0;curr_part<num_parts;curr_part++)7 C; j) \' o9 z3 Y* G7 {" W5 V
  3. {
    % \* M" s- z& ^! R2 N5 f/ `" b( g
  4.   part=UF_PART_ask_nth_part(curr_part);" g7 _  W6 s" \" k0 [* d; N4 T
  5.   type=UF_solid_type;
    , e8 {7 v0 o# x, L& V- |4 n
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ( l6 @3 x8 F. A
  7.   while(feature!=NULL_TAG)2 e8 e6 H; g, @
  8.   {& @5 s* B! A: p1 T  C
  9.    UF_MODL_ask_body_type(feature,&type1);# e# P9 L) G6 _. N' S+ I
  10.     if(type1=UF_MODL_SOLID_BODY )/ ?5 D6 `2 m( `3 v0 c
  11.      {6 h/ c. f; x- m. L; F
  12.       solid_body[i]=feature;
    2 i6 u1 t# t" }+ P2 `
  13.       type1=0;
    + Z+ A* T, ?2 [  t
  14.       i++;; V+ a) c& t; _& ?  ~
  15.         }) R. e( [# e3 w; s' e
  16.    count_1++;
    ( b3 _* r% M% c  \1 ]  b# Q0 @
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);
    + E# U. d4 D5 j/ d1 \9 s) A
  18.   }0 z5 T6 Q* `9 k  S+ V! p1 L8 d  m
  19.   i=0;) V0 T# j, v' r, q  }
  20. }
复制代码
6 [( P8 x& l7 ?6 U, v, w

$ b/ n% t; F3 s' e2 Y  l5 e

UG中含有的体

UG中含有的体
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复2

admin 发表于 2015-4-14 09:44:58

admin 沙发

2015-4-14 09:44:58

if(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧. d( O* {7 _5 X. x4 _

+ I+ o0 y" _% I6 b/ I! ~我没有具体看你的代码 至少这里有问题吧; x: Y: e, E: x

4 i- Q9 j, ]4 n+ H9 I你直接用 NXOpen 的  bodycollection去找 比你这个方便多了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

airintheair 发表于 2015-4-14 10:34:38

airintheair 板凳

2015-4-14 10:34:38

admin 发表于 2015-4-14 09:44
3 c: E6 l, d5 ?, j, N  f9 Yif(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧
/ m1 P; Z: S+ n6 l0 H6 ]$ @' Z9 h$ p8 T) s5 G% n) j
我没有具体看你的代码 至少这里有问题吧
0 Q. w9 e" y1 M5 H" \: p
就是这个原因,太粗心了,居然没看出来,现在可以了,3Q2 V" t: z' [( m4 _0 `5 I7 z# q0 k
NXOpen还不太会,等你上课后再试试
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了