PLM之家PLMHome-工业软件与AI结合践行者

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

  [复制链接]

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

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

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组3 j( d$ ~9 {1 k% x2 R. |5 H
程序如下,在使用到
- |( w, ]- F$ V: g* G 0 C# f; W: ^, `" w
int UF_OBJ_cycle_objs_in_part
, u* g' F( K2 b  e6 V* l(
% ]! ^0 o2 u. r! C! m7 W( Ptag_t part_tag, ( q% e3 H3 T- q6 Q( Z4 v! d
int type, - Y0 J$ T2 g  E3 M$ N
tag_t * object
, M+ ?; Q6 j% k! {2 C7 j' q. K8 ^7 Y; }
)- D5 [2 P: ~% C) d2 O+ a- C4 H

0 C2 y* _3 @4 q  i
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组4 T* r! g- e1 T7 h- M6 W

! t$ f1 b1 [8 Q
  1. num_parts=UF_PART_ask_num_parts();
    ! M9 ~1 W9 f2 h; \
  2. for (curr_part=0;curr_part<num_parts;curr_part++)8 [% ^0 ^7 c6 e. [6 v0 J# t
  3. {
    ; `( y% T# h' @) p2 Q) W: ^# y
  4.   part=UF_PART_ask_nth_part(curr_part);0 Z0 B" c3 t: i, U: \
  5.   type=UF_solid_type;+ @" l1 R1 a( n* T  s; X- O
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ' y8 e/ N$ v* I
  7.   while(feature!=NULL_TAG)
    ' o6 v; N0 w! w( x8 N7 T
  8.   {$ P" d5 ~- @8 Z3 n
  9.    UF_MODL_ask_body_type(feature,&type1);
    4 J% \2 F: z; W- P
  10.     if(type1=UF_MODL_SOLID_BODY )4 M6 {; Q3 f. g4 V9 e
  11.      {$ u5 f$ f2 _6 Z* |; O
  12.       solid_body[i]=feature;. I& ~6 H1 L# _
  13.       type1=0;2 I' S0 T! [  H- d7 M
  14.       i++;
    / H9 R/ {& u4 H9 T
  15.         }2 N2 P" J% n% l7 |: v5 F8 \) N$ k
  16.    count_1++;& b/ ?$ t! p7 E# g
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);
    ' p. X& _' h! Y: @3 T- e
  18.   }" p; _: i# L9 C9 W- s/ b# ]
  19.   i=0;
    8 s$ e. Z( g+ ]; \
  20. }
复制代码

6 M2 r4 L9 [' v- ~5 w4 ?: g4 r) X

: u$ y/ `9 D- j8 w' J1 c; ?5 {8 A* f) s

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 H$ q3 |3 S" ?/ r( O% e/ [) p
' f9 p- f8 |' N9 p5 R
我没有具体看你的代码 至少这里有问题吧0 ?, W3 U- C  L: m7 w. ^- T" f) T
( c) g' T3 [6 t4 w
你直接用 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, Z+ s3 e! Q4 L. M( u
if(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧1 j. l9 _: [/ V& ^' }( f
: p: L) P$ p0 L$ h4 A) T- f
我没有具体看你的代码 至少这里有问题吧
% @6 |; f) @5 j4 ^& C+ i
就是这个原因,太粗心了,居然没看出来,现在可以了,3Q
+ k  _* ?% _# w' N' MNXOpen还不太会,等你上课后再试试
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了