airintheair 发表于 2015-4-14 09:19:35

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

功能是想遍历整个装配,然后获得所有实体的tag_t的数组
程序如下,在使用到

int UF_OBJ_cycle_objs_in_part
(
tag_t part_tag,
int type,
tag_t * object

)

这个函数时,type选择了UF_solid_type,却找到了含57个子项的数组,但如果选择UF_solid_body_subtype,却无法找到子项,求助下,这边这个type选择什么能找到我所需要的solid body的tag_t数组

num_parts=UF_PART_ask_num_parts();
for (curr_part=0;curr_part<num_parts;curr_part++)
{
part=UF_PART_ask_nth_part(curr_part);
type=UF_solid_type;
   UF_OBJ_cycle_objs_in_part(part,type,&feature);
while(feature!=NULL_TAG)
{
   UF_MODL_ask_body_type(feature,&type1);
    if(type1=UF_MODL_SOLID_BODY )
   {
      solid_body=feature;
      type1=0;
      i++;
      }
   count_1++;
   UF_OBJ_cycle_objs_in_part(part,type,&feature);
}
i=0;
}

admin 发表于 2015-4-14 09:44:58

if(type1=UF_MODL_SOLID_BODY ),这里是==吧

我没有具体看你的代码 至少这里有问题吧

你直接用 NXOpen 的bodycollection去找 比你这个方便多了

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

admin 发表于 2015-4-14 09:44
if(type1=UF_MODL_SOLID_BODY ),这里是==吧

我没有具体看你的代码 至少这里有问题吧


就是这个原因,{:3_58:}太粗心了,居然没看出来,现在可以了,3Q
NXOpen还不太会,等你上课后再试试{:3_48:}
页: [1]
查看完整版本: 遍历整个装配,获取所有实体的数组