自学内容网 自学内容网

creo toolkit二次开发学习之获取父对象

从以前发布的两个文章可得,获取选择对象或引用对象后再获取组件路径Asmcomppath,由组件路径可获取父对象以及任意阶层模型对象,代码如下:

ProError test1()
{
ProError status; //接受错误码

ProSelection* sels = NULL; //ProSelection 结构数组指针,用于存放选择的模型
int n_sels; //选择集的数量
ProModelitem item; //模型项
status = ProSelect((char*)"prt_or_asm", 1, NULL, NULL, NULL, NULL, &sels, &n_sels); //选择模型
if (status != PRO_TK_NO_ERROR || sels == NULL) return PRO_TK_GENERAL_ERROR; //如果获取失败或没有选择,则返回错误码

ProAsmcomppath p_cmp_path; //组件路径
ProSelectionAsmcomppathGet(sels[0], &p_cmp_path); //从选择对象获取组件路径

int a = p_cmp_path.table_num; //获取标识符数量
ProUtilMessageDisplay(1, a); //输出标识符数量

//假设上面获取的数量为4,则修改标识符数量为3就是它的父对象
p_cmp_path.table_num = 3; //修改标识符数量
ProMdl model; //模型对象
status = ProAsmcomppathMdlGet(&p_cmp_path, &model); //获取组件路径的模型对象,即选择的模型对象
if (status != PRO_TK_NO_ERROR) return PRO_TK_GENERAL_ERROR; //如果获取失败,则返回错误码

return PRO_TK_NO_ERROR;
}


原文地址:https://blog.csdn.net/qq_21653855/article/details/143592365

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!