以创建一个矿泉水瓶组件为例,实现参数化设计,包括瓶身和瓶盖两部分,其中参数和关系在Creo中已经定义好了。代码如下:
//自定义函数
ProError action(ProParameter *parm, ProError status, ProAppData appdata)
{
vector<ProParameter>* pf = (vector<ProParameter>*)appdata;
pf->push_back(*parm);
return PRO_TK_NO_ERROR;
}
//按钮:打开瓶子装配模型
void CPart3DDlg::OnBnClickedBtnOpenPart0001()
{
// TODO: 在此添加控件通知处理程序代码
ProErr status;
ProMdl mdl;
ProFamilyName name;
//转换成宽字符
ProStringToWstring(name,"D:\\demo\\bottle_asm.asm");
//从磁盘中读取模型
status = ProMdlRetrieve(name,PRO_MDL_ASSEMBLY,&mdl);
if (status!=PRO_TK_NO_ERROR)
{
return;
}
//显示模型
ProMdlDisplay(mdl);
ProParamvalue proval;
ProModelitem item;
status=ProMdlToM