环境:Win7 x64 , NX12
场景描述:




如上图所示:部件 _model1 ,_model2 都有组件 _model3 ,然后将 _model3 ->"在窗口中打开"。
然后求在窗口中打开父项中的值。
代码:
tag_t displayTag = UF_PART_ask_display_part(); tag_t* fathersID = NULL; int count = UF_ASSEM_where_is_part_used(displayTag, &fathersID); std::vector<std::pair<tag_t, std::string>> fathersIdName; for (int i = 0; i < count; ++i) { tag_t tmpFather = fathersID[i]; char name[133] = { 0 }; UF_OBJ_ask_name(tmpFather, name); fathersIdName.push_back(std::pair<tag_t, std::string>(tmpFather, std::string(name))); } UF_free(fathersID);结果: fathersIdName的值如下图所示

这里父项顺序可能和所在部件打开顺序有关,如果部件打开顺序是_model1,_model2,则父项是_model2,_model1......
这个顺序和 NX 显示父项的顺序不一样 !!!
限制条件:部件和组件必须都打开,如果只打开组件,无法获取父项!
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删