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

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

  [复制链接]

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

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

airintheair 楼主

2015-4-14 09:19:35

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

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

x
功能是想遍历整个装配,然后获得所有实体的tag_t的数组9 s% i0 A. S* ?$ F/ g$ {8 a
程序如下,在使用到
6 Z& o; }( H% t4 P, R6 y ! u& W) |: v/ l* ~2 X" Q( G
int UF_OBJ_cycle_objs_in_part/ f# Z, Y( J/ N0 }
(
& T$ F: W$ L& F+ Z/ M3 M7 ]tag_t part_tag,
# b: I' O1 c' E1 z0 m4 z# U- ]5 Pint type,
, l. c$ P! D8 x8 H5 utag_t * object
! Z8 p6 Y4 \9 e8 r
! s/ W1 r( J( D)
6 N$ b: }; t. C* A+ W/ j% v! J1 m  [1 J& F0 ?; ]& M% r* }! R1 e5 p
这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组
" [- ~% L% q" r1 o- ?* r/ }
3 Y5 E  A3 I$ }% h. F
  1. num_parts=UF_PART_ask_num_parts();
    8 V/ t. e' K. a( I9 ^& R
  2. for (curr_part=0;curr_part<num_parts;curr_part++)
    2 D4 B' E( D" c' V' H. u
  3. {: ~) |; e0 U# N/ Y5 r. h( T
  4.   part=UF_PART_ask_nth_part(curr_part);/ C- d! {: b: F
  5.   type=UF_solid_type;
    8 h6 `( Y8 Q  ?. D4 k6 L4 n
  6.      UF_OBJ_cycle_objs_in_part(part,type,&feature);* i) ^& B# O. L
  7.   while(feature!=NULL_TAG)+ d, R. v$ I( M# q1 \* b$ I- p+ h
  8.   {6 f- k# f. A! R0 T% l( X
  9.    UF_MODL_ask_body_type(feature,&type1);5 _1 J2 J* e/ U
  10.     if(type1=UF_MODL_SOLID_BODY )
    / r7 A$ @- p' U6 {9 [
  11.      {
    ( l3 O, ]$ [1 {% X2 K2 E
  12.       solid_body[i]=feature;6 _/ C: H4 v4 f0 ?, y
  13.       type1=0;
    * p- v5 q, p3 e8 G  ?1 a" \$ G0 S
  14.       i++;
    - b" ~) z0 O2 z" b3 m! v
  15.         }& \; W# X1 M! p) p" R
  16.    count_1++;
    7 Y8 l. T/ f! s
  17.    UF_OBJ_cycle_objs_in_part(part,type,&feature);9 d1 w4 J. K0 L3 i  v1 u
  18.   }
    2 I% r, P: k8 E' y9 ?8 o1 ^. |
  19.   i=0;* d  U" L2 J* y. N) P% p, ]; l/ g
  20. }
复制代码

/ `, S1 r" H5 N$ J5 C/ Y

1 p% Q+ E/ _6 N+ s# v7 Q

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 ),  这里是  ==  吧
/ Z# v; `( Z' |8 l+ Q
9 l1 c+ @+ o+ J( R  |我没有具体看你的代码 至少这里有问题吧
7 ?, `. W2 }! M. s2 h6 s! U
" c8 M( V# Q5 j' f) q6 y你直接用 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; A* |4 z% y' D1 j4 }- |2 b
if(type1=UF_MODL_SOLID_BODY ),  这里是  ==  吧
4 W0 E$ \9 M6 ~: L  a1 m( U  o% l4 ~4 g6 ]/ S
我没有具体看你的代码 至少这里有问题吧

& |/ [% q! m0 D: g# S就是这个原因,太粗心了,居然没看出来,现在可以了,3Q
7 n# e2 j2 ]/ ~0 k0 q/ RNXOpen还不太会,等你上课后再试试
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了