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

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

  [复制链接]

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

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

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组
( q; F# o  o$ ]. O5 `0 K1 Z8 P程序如下,在使用到
5 I( ]8 T% `9 _: e# K' a2 g0 Q/ E
) Z. i; B3 O. a6 V4 q& S; Jint UF_OBJ_cycle_objs_in_part
% V) s  i. c2 i! @+ q+ I(* ~  U: C- {3 D+ M
tag_t part_tag, / ?- j. q' ?- w9 Y% w: N. A/ m; K
int type,
) v5 h& n" ?. ]5 ztag_t * object   |4 T# E+ H+ f3 _

" Q. x) D3 y4 R" ^)7 Z2 R3 n  _3 L! G# r

) G' U3 Q- U! D, ?
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组
5 N3 ]3 n" m4 m8 s! H& z) F
- J* N5 _: f# j, @+ P8 k; s
  1. num_parts=UF_PART_ask_num_parts();4 {3 O4 a4 r/ L$ A
  2. for (curr_part=0;curr_part<num_parts;curr_part++)
    9 f2 G5 C$ R$ C7 m
  3. {+ l$ J% ^) q9 j: G4 h8 [
  4.   part=UF_PART_ask_nth_part(curr_part);# o% D% K7 S* u" |$ L8 a
  5.   type=UF_solid_type;
    & w" e2 o# c8 l! b% S& ]' j
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);
    , W" w# C7 j! t% K1 e1 s; I: F
  7.   while(feature!=NULL_TAG)
    3 B) E8 C' w3 b5 g( b
  8.   {
    2 h1 Y' |: p) C  O
  9.    UF_MODL_ask_body_type(feature,&type1);0 E) c) u' t' ?* L
  10.     if(type1=UF_MODL_SOLID_BODY )
    + M1 M- G4 Q+ D5 Z
  11.      {
    + M' q; b, ^0 y" v
  12.       solid_body[i]=feature;4 A- C5 F7 u+ `4 ]1 ^+ V
  13.       type1=0;/ a7 k4 o5 H6 C- H9 K
  14.       i++;# `4 K: c0 B% x1 V3 ~& |6 z
  15.         }  ^+ k6 o! s- x
  16.    count_1++;! C2 X# q- L; b; H5 Q
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);
    : H+ ~/ M% T: d& ~2 b
  18.   }
    - [8 |' a! }3 U, U: L
  19.   i=0;
    ( f# g- P& d1 \! M4 |; ^9 c, E8 H9 t8 o1 j
  20. }
复制代码
- f! Y3 J1 J: j& z( u

- V1 t2 J1 W+ ^, O

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 ),  这里是  ==  吧# b: D$ _$ ~+ H1 R
) l( Z9 _* G7 ~5 E0 o; u1 u; V& m
我没有具体看你的代码 至少这里有问题吧' X+ H/ M0 ]5 Y. b
- Z% q0 N' B( N' k6 A
你直接用 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
  x+ `' ]# k* ^2 T: ]if(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧
5 U- L' b6 x3 A) {% S
  h8 U7 o$ c6 ^/ D5 i) a  _我没有具体看你的代码 至少这里有问题吧
  M: Q' X; `2 L+ o
就是这个原因,太粗心了,居然没看出来,现在可以了,3Q
) W  O( ~! ^0 xNXOpen还不太会,等你上课后再试试
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了