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

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

  [复制链接]

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

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

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组% x! Y/ q6 r! P. R# z8 e
程序如下,在使用到
- f. ~0 o5 C" U3 Y* N2 ~ 8 o% I: H7 b6 M* Q# V2 J9 J! \
int UF_OBJ_cycle_objs_in_part
) L" d  ]% T! c& _3 b$ X- o5 j% r( @(
& r7 F, \. z: D, Btag_t part_tag,
- T! B: j2 U: J0 \int type,
1 b+ p. c0 U( i) ztag_t * object
5 j, B; f% E2 M* |$ Q1 F: M% M* I! T
)" u) D% T, [! e6 m2 E: r" F
; m" D, F- w0 @* C+ h; ~& {3 B+ y/ j
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组
/ X; @6 N' K  x
6 M0 A$ O* A$ p/ S" k! T
  1. num_parts=UF_PART_ask_num_parts();
    3 N( O6 S7 D( ]2 U3 [+ `4 c( s* z3 k
  2. for (curr_part=0;curr_part<num_parts;curr_part++)
    2 n: {$ S$ @4 V2 x. s& R& W
  3. {
    8 {1 g* b8 P! y6 k9 Z
  4.   part=UF_PART_ask_nth_part(curr_part);0 V% o' t1 s9 f) k, u
  5.   type=UF_solid_type;/ [1 s  B3 a/ x3 F/ {7 ^% h
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);  |' Y: }2 W( b& Y: x" V
  7.   while(feature!=NULL_TAG)
    ) [9 L3 ^. e- \2 G
  8.   {6 ~& u) w- ]0 d
  9.    UF_MODL_ask_body_type(feature,&type1);
    ! Q' }) _$ y) `2 U2 g
  10.     if(type1=UF_MODL_SOLID_BODY )
    + T1 `" |* @) r- v  T
  11.      {
    4 ]: t  q, {' [8 r2 E- H3 h; t: m& ~) y
  12.       solid_body[i]=feature;/ I  m& P" D3 X  S
  13.       type1=0;/ P% M. `9 j; R, f. i  w- y
  14.       i++;
    ; s) p* W% q  F' ?
  15.         }2 ^0 J9 r' K' M1 \6 H5 e& Q
  16.    count_1++;
    / p( \+ j5 \' T
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);# @7 ]7 {( s( X8 L% }
  18.   }  m  S! I; i/ V2 ~) \
  19.   i=0;
    / h. a" ~8 t* u5 k
  20. }
复制代码
6 n& r7 l, M1 D0 |
4 ]+ w) Y6 D/ |

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 ),  这里是  ==  吧
* I! C4 N/ I) X5 l( x; g8 n2 e/ j: Y9 T/ R; p
我没有具体看你的代码 至少这里有问题吧! o* }* T  R. T0 z  @8 y( S

& i& E+ y1 S+ u! N0 h# d6 N" p0 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
, \& s0 V: U7 p! Hif(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧% L( b& |+ J5 b4 b! k) D. |
" k0 b! w. A5 K- K
我没有具体看你的代码 至少这里有问题吧
; {3 B# R/ }* R
就是这个原因,太粗心了,居然没看出来,现在可以了,3Q  m+ M! ]( u: `) p- s% K- o- I8 }
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二次开发专题模块培训报名开始啦

    我知道了