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

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

  [复制链接]

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

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

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组, R2 X; s9 I: y
程序如下,在使用到( i- x/ |) W2 Z6 \
/ o6 U$ k' h+ @5 ]
int UF_OBJ_cycle_objs_in_part! D2 s/ O( Y! [* |
(2 p. |# c- ?! G4 L1 Z( V
tag_t part_tag,
" G. y# D# R& \: E  E! z* }7 ]% _' uint type,
2 U* w# a& j5 l4 T) Gtag_t * object
! q" |. y7 U( @& N# j
* w+ R. M1 P5 p; I) m% g)1 ?. T: l, b$ }( Y
) V' b3 l# ]; j9 j4 z( ~3 m
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组6 h" a& a& N0 W& v- F2 m7 \

& k' D- m# t3 l9 r* \, u; n( C1 m
  1. num_parts=UF_PART_ask_num_parts();
      @) D) d% r" u- v/ T3 t
  2. for (curr_part=0;curr_part<num_parts;curr_part++)# q0 b* W2 V4 r7 S  S# Q% J& P2 I
  3. {1 c( p- T4 y0 x' j, i5 t
  4.   part=UF_PART_ask_nth_part(curr_part);0 B3 j0 `8 P- ^" h/ N# A
  5.   type=UF_solid_type;: g' n0 m4 {. S3 F5 \2 h
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);3 ^. {+ w# V/ ^, X2 Z
  7.   while(feature!=NULL_TAG)
    ; d3 @. y4 I8 }, L5 h4 x7 E6 G/ m" ~
  8.   {
    : j) U4 |- z$ h# s5 t; G+ q1 i
  9.    UF_MODL_ask_body_type(feature,&type1);7 I. p( z+ U% x2 v! ^7 t! J  Z! B
  10.     if(type1=UF_MODL_SOLID_BODY )' E* C0 b/ {7 u9 f5 S
  11.      {- I2 V: o# @6 s( Y  P
  12.       solid_body[i]=feature;
    0 O. w4 L. Z  P& q8 C
  13.       type1=0;# D6 ~  o! `: c/ P4 b$ K
  14.       i++;$ N4 [) ^/ W- y# v) M& }) M" L
  15.         }
    & k: s- A( G, e, ?1 {7 h! Z
  16.    count_1++;
    9 F- B; k' K$ \, ?" I6 y
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);
    : w8 `! g' a# o4 k+ y! a
  18.   }2 [( p" {( n% f$ j9 m6 P* n+ N
  19.   i=0;
    ! s3 B5 R" k( t* A" B3 S' o4 E
  20. }
复制代码
+ b& L7 U, A! W9 j
4 Z) f9 N7 T! b# \# 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 ),  这里是  ==  吧8 r" C, i2 E% h' N* W  p& \2 d2 U

  W& N$ X- G% {* [9 r# J/ y3 Q8 }+ r我没有具体看你的代码 至少这里有问题吧. C. `" V9 i2 w4 G. @( C0 O6 A
; I; P. m1 O: S& c/ W, p0 q" Y5 B0 a
你直接用 NXOpen 的  bodycollection去找 比你这个方便多了
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

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

airintheair 板凳

2015-4-14 10:34:38

admin 发表于 2015-4-14 09:44' M* J$ P$ A7 C1 G/ @5 p
if(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧. j# l, V3 m0 O, H1 s& a6 ~5 ^

, w- I! ^- p0 v: i5 p0 z% j% |我没有具体看你的代码 至少这里有问题吧
* t$ z- n+ i7 X, g6 w) h/ {! T
就是这个原因,太粗心了,居然没看出来,现在可以了,3Q
, A3 v& _$ u4 B- x/ N5 D7 bNXOpen还不太会,等你上课后再试试
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了