//创建一个头 MSElementDescr* pCellElmDscr = NULL; MSElement cellElement; mdlCell_create(&cellElement, NULL, NULL, FALSE); mdlElmdscr_new(&pCellElmDscr, NULL, &cellElement); EditElementHandle My_eeh; RotMatrix rotM; mdlView_getStandard(&rotM, StandardView::Top); NormalCellHeaderHandler::CreateCellElement(My_eeh, L"Fence", pointP, rotM, mdlModelRef_getActive()->Is3d(), *mdlModelRef_getActive()); while() { //创建一个参数化ceLL ---> eeh ......... MSElementDescrP chainDscrP; chainDscrP = eeh.ExtractElementDescr(); mdlElmdscr_appendDscr(pCellElmDscr,chainDscrP); } My_eeh.SetElementDescr(pCellElmDscr, true, false, My_eeh.GetModelRef()); My_eeh.AddToModel(); mdlElmdscr_freeAll(&pCellElmDscr);
老师 我用如上代码逻辑将多个参数化模型合成一个单元(我是按照线的路径放置单元的)
之后在模型中看不到我放置整合单元,而且选中线段比较小范围的时候只显示选中线,选中稍微更大的范围就会选中线和单元(如下图),说明单元放置进去了 ,但是看不到。
(每个参数化单元的坐标都在线段上,途中线段是自定义的)
参数化单元无论后台的工作原理(每个参数化单元都需要一个隐藏的模型来支撑)还是前台的使用以及编程都和普通单元完全不同。不能用普通单元的编程方法来操作参数化单元。放置参数化单元的代码请搜索以前的帖子。