本文整理汇总了C++中NURBSSet::DeleteObjects方法的典型用法代码示例。如果您正苦于以下问题:C++ NURBSSet::DeleteObjects方法的具体用法?C++ NURBSSet::DeleteObjects怎么用?C++ NURBSSet::DeleteObjects使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NURBSSet
的用法示例。
在下文中一共展示了NURBSSet::DeleteObjects方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: xPack
//.........这里部分代码省略.........
Object *obj = CreateNURBSObject(mpIp, &nset, mat);
INode *node = mpIp->CreateObjectNode(obj);
node->SetName(GetString(IDS_TEST_OBJECT));
NURBSSet addNset;
// build a point surface
int addptSurf = AddTestPointSurface(addNset);
// add an iso curve to the previously created CV Surface
NURBSId id = nset.GetNURBSObject(cvSurf)->GetId();
int addIsoCrv = AddTestIsoCurve(addNset, id);
AddNURBSObjects(obj, mpIp, &addNset);
// now test some changing functionality
// Let's change the name of the CVSurface
NURBSObject* nObj = nset.GetNURBSObject(cvSurf);
nObj->SetName(_T("New CVSurf Name")); // testing only, no need to localize
// now let's change the position of one of the points in the point curve
NURBSPointCurve* ptCrvObj = (NURBSPointCurve*)nset.GetNURBSObject(ptCrv);
ptCrvObj->GetPoint(0)->SetPosition(0, Point3(10, 160, 0)); // moved from 0,150,0
// now let's change the position and weight of one of the CVs
// in the CV Surface
NURBSCVSurface* cvSurfObj = (NURBSCVSurface*)nset.GetNURBSObject(cvSurf);
cvSurfObj->GetCV(0, 0)->SetPosition(0, Point3(-150.0, -100.0, 20.0)); // moved from 0,0,0
cvSurfObj->GetCV(0, 0)->SetWeight(0, 2.0); // from 1.0
// now let's do a transform of a curve.
NURBSIdTab xfmTab;
NURBSId nid = nset.GetNURBSObject(jc1)->GetId();
xfmTab.Append(1, &nid);
Matrix3 xfmMat;
xfmMat = TransMatrix(Point3(10, 10, -10));
SetXFormPacket xPack(xfmMat);
NURBSResult res = Transform(obj, xfmTab, xPack, xfmMat, 0);
// Now let's Join two curves
NURBSId jc1id = nset.GetNURBSObject(jc1)->GetId(),
jc2id = nset.GetNURBSObject(jc2)->GetId();
JoinCurves(obj, jc1id, jc2id, FALSE, TRUE, 20.0, 1.0f, 1.0f, 0);
// Now let's Join two surfaces
NURBSId js1id = nset.GetNURBSObject(js1)->GetId(),
js2id = nset.GetNURBSObject(js2)->GetId();
JoinSurfaces(obj, js1id, js2id, 1, 0, 20.0, 1.0f, 1.0f, 0);
// Break a Curve
NURBSId bcid = nset.GetNURBSObject(bc)->GetId();
BreakCurve(obj, bcid, .5, 0);
// Break a Surface
NURBSId bsid = nset.GetNURBSObject(bs)->GetId();
BreakSurface(obj, bsid, TRUE, .5, 0);
mpIp->RedrawViews(mpIp->GetTime());
nset.DeleteObjects();
addNset.DeleteObjects();
// now do a detach
NURBSSet detset;
Matrix3 detmat;
detmat.IdentityMatrix();
// build a cv curve
int detcvCrv = MakeTestCVCurve(detset, detmat);
// now a point curve
int detptCrv = MakeTestPointCurve(detset, detmat);
// Blend the two curves
int detblendCrv = MakeTestBlendCurve(detset, detcvCrv, detptCrv);
Object *detobj = CreateNURBSObject(mpIp, &detset, detmat);
INode *detnode = mpIp->CreateObjectNode(detobj);
detnode->SetName("Detach From");
BOOL copy = TRUE;
BOOL relational = TRUE;
NURBSIdList detlist;
NURBSId oid = detset.GetNURBSObject(detblendCrv)->GetId();
detlist.Append(1, &oid);
DetachObjects(GetCOREInterface()->GetTime(), detnode, detobj,
detlist, "Detach Test", copy, relational);
mpIp->RedrawViews(mpIp->GetTime());
}