马上注册,结交更多同行朋友,交流,分享,学习。
您需要 登录 才可以下载或查看,没有帐号?注册
x
小弟想在装配体中对两个零件进行布尔运算,使用UF_ASSEM_create_assembly_cut()这个函数,不过一直出
现内存冲突,参数中的body occurrences是指part occurrences么,为什么我用part occurrence 代入一直
不对呢,下面是这个部分的代码,希望大侠们能指导一下小弟,谢谢。
//获得毛坯的occ
temp_tag = UF_PART_ask_part_tag(target_sInstanceName);
if(temp_tag != NULL_TAG)
{
UF_ASSEM_ask_occs_of_part (tPrt_ASM, temp_tag, &part_occs );
i = 0;
while(part_occs != NULL_TAG)
{
UF_ASSEM_ask_component_data(part_occs, part_n, refset_name,
instance_name, origin, csys_matrix, transform);
if(strcmp(strlwr(instance_name),strlwr
(semifinished_face_gear_sInstanceName)) ==0 ) break;
i++;
}
if(part_occs != NULL_TAG)
tPrtOcc_target= part_occs;
else
tPrtOcc_target = NULL_TAG;
UF_free(part_occs);
}
else
tPrtOcc_target = NULL_TAG;
//获得刀具的occ
temp_tag = UF_PART_ask_part_tag(tool_sInstanceName);
if(temp_tag != NULL_TAG)
{
UF_ASSEM_ask_occs_of_part (tPrt_ASM, temp_tag, &part_occs );
i = 0;
while(part_occs != NULL_TAG)
{
UF_ASSEM_ask_component_data(part_occs, part_n, refset_name,
instance_name, origin, csys_matrix, transform);
if(strcmp(strlwr(instance_name),strlwr(straight_gear_sInstanceName))
==0 ) break;
i++;
}
if(part_occs != NULL_TAG)
tPrtOcc_tool = part_occs;
else
tPrtOcc_tool = NULL_TAG;
UF_free(part_occs);
}
else
tPrtOcc_tool = NULL_TAG;
...
//布尔切运算
UF_CALL(UF_ASSEM_create_assembly_cut( tPrt_ASM,blank_tool_bodies,1,&
tPrtOcc_target,1,&tPrtOcc_tool ,&acut_tag)); |