UF删除实体或者部件事例属性UF_ATTR_delete_all
void SEModifyAttX::delAtt() //删除实体或者部件事例属性
{
try
{
//获取UI界面的属性
//获取选择对象TAG
PropertyList *blockxuanzhePros = bodySelect0->GetProperties();
std::vector<NXOpen::TaggedObject*> theblockxuanzhe = blockxuanzhePros->GetTaggedObjectVector("SelectedObjects");
delete blockxuanzhePros;
blockxuanzhePros = NULL;
UF_initialize();
for (int i = 0; i < theblockxuanzhe.size(); i++)
{
tag_t bodyTAG = theblockxuanzhe[i]->Tag();
if (UF_ASSEM_is_occurrence(bodyTAG))//判断是否为部件事例标识(occurrence)
{
UF_ATTR_delete_all(bodyTAG, UF_ATTR_any); //删除部件事例标识
bodyTAG = UF_ASSEM_ask_prototype_of_occ(bodyTAG); //覆写TAG
UF_ATTR_delete_all(bodyTAG, UF_ATTR_any); //删除对象事例标识
}
else
{
UF_ATTR_delete_all(bodyTAG, UF_ATTR_any); //删除对象事例标识
}
}
UF_MODL_update();
theDialog->PerformApply();
UF_terminate();
}
catch (exception& ex)
{
//---- Enter your exception handling code here -----
SEModifyAttX::theUI->NXMessageBox()->Show("删除实体或者部件事例属性", NXOpen::NXMessageBox::DialogTypeError, ex.what());
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构