[每日一码] AcDbPolyline::getSplitCurves() 在某些时候仅仅增加顶点而不是拆分曲线
AcGePoint3d projpt;if ((es = pBoundary->getClosestPointTo(sp, projpt)) != Acad::eOk)
return es;
AcGePoint3d projpt2;
if ((es = pBoundary->getClosestPointTo(pt2, projpt2)) != Acad::eOk)
return es;
double dist1;
double dist2;
es = pBoundary->getDistAtPoint(projpt, dist1);
es = pBoundary->getDistAtPoint(projpt2, dist2);
if (dist1 < dist2)
{
// first point is closer to the start point
pts.append(projpt);
pts.append(projpt2);
}
else{
//second point is closer to the start point
pts.append(projpt2);
pts.append(projpt);
}
if ((es = pBoundary->getSplitCurves(pts, ents)) != Acad::eOk)
return es;
...
页:
[1]