Пытаюсь по координатам замкнутой полилинии создать вайпаут. В результате получаю странное перевёрнуто-смещённое отображение последнего.
Вот тестовый код:
AcDbPolyline* TmpPolyline = new AcDbPolyline(3);
TmpPolyline->addVertexAt(0, AcGePoint2d::kOrigin);
TmpPolyline->addVertexAt(1, AcGePoint2d(0.0, 50.0));
TmpPolyline->addVertexAt(2, AcGePoint2d(70.0, 0.0));
TmpPolyline->setNormal(AcGeVector3d::kZAxis);
TmpPolyline->setClosed(Adesk::kTrue);
TmpPolyline->setColorIndex(1);
AddEntityToBtr(ModelSpaceId, TmpPolyline);
Acad::ErrorStatus es = AcDbWipeout::createImageDefinition();
if (es == Acad::eOk)
{
AcDbWipeout *TmpWipe = new AcDbWipeout();
TmpWipe->setDatabaseDefaults();
AcGePoint2dArray VertexArray;
VertexArray.setLogicalLength(TmpPolyline->numVerts());
for (int i = 0; i < TmpPolyline->numVerts(); i++)
{
AcGePoint2d TmpPt;
TmpPolyline->getPointAt(i, TmpPt);
VertexArray.setAt(i, TmpPt);
}
VertexArray.append(VertexArray.at(0));
if (TmpWipe->setClipBoundary(AcDbRasterImage::kPoly, VertexArray) == Acad::eOk)
{
TmpWipe->setColorIndex(2);
AddEntityToBtr(ModelSpaceId, TmpWipe);
}
}
else
{
OutputDebugStringA((boost::format("\nError: <%d>") % es).str().c_str());
}
На выходе имеем такую картину:
Как с этим бороться? Как сориентировать?