void RS_ActionDrawEllipseAxis::trigger() { RS_PreviewActionInterface::trigger(); RS_Ellipse* ellipse = new RS_Ellipse{container, {pPoints->center, pPoints->m_vMajorP, pPoints->ratio, pPoints->angle1, pPoints->angle2, false} }; if (pPoints->ratio > 1.){ ellipse->switchMajorMinor(); } ellipse->setLayerToActive(); ellipse->setPenToActive(); container->addEntity(ellipse); // upd. undo list: if (document) { document->startUndoCycle(); document->addUndoable(ellipse); document->endUndoCycle(); } RS_Vector rz = graphicView->getRelativeZero(); graphicView->redraw(RS2::RedrawDrawing); graphicView->moveRelativeZero(rz); drawSnapper(); setStatus(SetCenter); RS_DEBUG->print("RS_ActionDrawEllipseAxis::trigger():" " entity added: %d", ellipse->getId()); }
void RS_ActionDrawEllipseAxis::trigger() { RS_PreviewActionInterface::trigger(); RS_EllipseData ellipseData(center, major, ratio, angle1, angle2, false); RS_Ellipse* ellipse = new RS_Ellipse(container, ellipseData); ellipse->setLayerToActive(); ellipse->setPenToActive(); container->addEntity(ellipse); // upd. undo list: if (document!=NULL) { document->startUndoCycle(); document->addUndoable(ellipse); document->endUndoCycle(); } RS_Vector rz = graphicView->getRelativeZero(); graphicView->redraw(RS2::RedrawDrawing); graphicView->moveRelativeZero(rz); drawSnapper(); setStatus(SetCenter); RS_DEBUG->print("RS_ActionDrawEllipseAxis::trigger():" " entity added: %d", ellipse->getId()); }
void RS_ActionDrawEllipseFociPoint::trigger() { RS_PreviewActionInterface::trigger(); RS_EllipseData ed(center, major*d, sqrt(d*d-c*c)/d, 0., 0.,false); RS_Ellipse* ellipse = new RS_Ellipse(container, ed); ellipse->setLayerToActive(); ellipse->setPenToActive(); container->addEntity(ellipse); // upd. undo list: if (document!=NULL) { document->startUndoCycle(); document->addUndoable(ellipse); document->endUndoCycle(); } // RS_Vector rz = graphicView->getRelativeZero(); graphicView->moveRelativeZero(ellipse->getCenter()); graphicView->redraw(RS2::RedrawDrawing); drawSnapper(); setStatus(SetFocus1); RS_DEBUG->print("RS_ActionDrawEllipseFociPoint::trigger():" " entity added: %d", ellipse->getId()); }