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

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

  [复制链接]

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

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

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组7 @& A) N/ P' T: g: o' x2 v+ ?! }/ C
程序如下,在使用到' V& f1 ]$ H& ^8 M" G8 g9 ]+ n
+ F1 V& z! @) J- w% X2 ?; \
int UF_OBJ_cycle_objs_in_part4 F9 q- d& h+ E5 t+ K
(
: V0 x/ v0 p3 Z3 i* ~2 w+ f# N+ ctag_t part_tag,
$ E7 Y  J# l$ B8 _1 N8 E$ N# yint type,
; F9 Z) @+ L* z$ Ctag_t * object
. x$ T. _7 V6 |( |# w( _! V0 r% A$ x' N# e0 s: g/ h( G
)
8 {4 x+ D0 I+ J. }# R+ k6 o$ l$ U  R1 P% j) y1 V/ e! F
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组
: Q3 b3 h& J% a# v
3 T! t( ~. [" w' W2 f- Z
  1. num_parts=UF_PART_ask_num_parts();
    + \: R, a; U+ K+ u: W5 r+ `
  2. for (curr_part=0;curr_part<num_parts;curr_part++)
    ) V% X# L7 g( y! i3 P8 E4 R
  3. {
    3 l) W+ V  ?/ J" X, d: P) @
  4.   part=UF_PART_ask_nth_part(curr_part);
    ( m& s$ b( C4 |# `1 m3 B
  5.   type=UF_solid_type;. B; L0 h1 ?5 q5 s6 Y
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);$ c6 F! V1 a! i& \
  7.   while(feature!=NULL_TAG)* B6 W7 {. I, a5 T, A
  8.   {
    - Z- |& A5 C- d9 }
  9.    UF_MODL_ask_body_type(feature,&type1);  |) w0 O8 X7 m2 K* o/ v' L
  10.     if(type1=UF_MODL_SOLID_BODY )9 q5 f/ M. Z% h$ i
  11.      {
    , c) R, U# u* S0 h+ }
  12.       solid_body[i]=feature;) y* \7 f& p# J% i& Q
  13.       type1=0;  N  ~: z. J( P0 o0 }: y  ~* |
  14.       i++;; r# n9 F- e) }6 {; W0 G
  15.         }
    4 h8 G4 D4 X7 l9 _5 _& V1 J
  16.    count_1++;
      p) [1 ~5 w7 {! r% e
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ; K* y$ p' @; i# Q  p, x/ f
  18.   }* J0 Q6 Q/ u/ r
  19.   i=0;
    8 s* K: o( m8 @+ Y7 }
  20. }
复制代码
' ?7 p0 O/ X. X9 M: M5 C

, u& r7 i* z+ {$ J

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 ),  这里是  ==  吧5 M+ O# m  |) C( m
% R6 x- s1 d, Q1 J
我没有具体看你的代码 至少这里有问题吧3 K6 o( U5 I' j. l) S5 G9 E

0 Z' I. x3 G, l4 @' _) B! s$ w' p你直接用 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
$ v& N1 }# A8 Y" H2 r% ?7 X4 dif(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧4 Q6 S# y- t" N3 p
0 q; t% c' ^* u/ C  j
我没有具体看你的代码 至少这里有问题吧
3 |  A, W6 Q: n9 s
就是这个原因,太粗心了,居然没看出来,现在可以了,3Q- r6 v- T1 ?9 j3 A( T
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二次开发专题模块培训报名开始啦

    我知道了