use of net.sf.latexdraw.model.api.shape.Ellipse in project latexdraw by arnobl.
the class TestCanvasCreation method testDrawEllipse.
@Test
public void testDrawEllipse() {
final Point2D pos = point(canvas).atOffset(-10d, -200d).query();
Cmds.of(CmdFXVoid.of(() -> editing.setCurrentChoice(EditionChoice.ELLIPSE)), () -> drag(pos, MouseButton.PRIMARY).dropBy(100d, 200d)).execute();
assertEquals(1, drawing.size());
assertTrue(drawing.getShapeAt(0).orElseThrow() instanceof Ellipse);
assertEquals(100d, drawing.getShapeAt(0).orElseThrow().getWidth(), 0.00001d);
assertEquals(200d, drawing.getShapeAt(0).orElseThrow().getHeight(), 0.00001d);
assertEquals(-Canvas.getMargins() + canvas.screenToLocal(pos).getX(), drawing.getShapeAt(0).orElseThrow().getTopLeftPoint().getX(), 0.00001d);
assertEquals(-Canvas.getMargins() + canvas.screenToLocal(pos).getY(), drawing.getShapeAt(0).orElseThrow().getTopLeftPoint().getY(), 0.00001d);
}
use of net.sf.latexdraw.model.api.shape.Ellipse in project latexdraw by arnobl.
the class TestViewEllipse method createModel.
@Override
protected Ellipse createModel() {
final Ellipse rec = ShapeFactory.INST.createEllipse();
rec.setWidth(10d);
rec.setHeight(20d);
rec.setX(100d);
rec.setY(200d);
return rec;
}
use of net.sf.latexdraw.model.api.shape.Ellipse in project latexdraw by arnobl.
the class ModifyShapePropertyTest method commonCanDoFixture.
@Override
protected void commonCanDoFixture() {
shapes = ShapeFactory.INST.createGroup();
final Grid grid = ShapeFactory.INST.createGrid(ShapeFactory.INST.createPoint());
final Axes axes = ShapeFactory.INST.createAxes(ShapeFactory.INST.createPoint());
final Dot dot = ShapeFactory.INST.createDot(ShapeFactory.INST.createPoint());
final Circle circle = ShapeFactory.INST.createCircle();
final Ellipse ell = ShapeFactory.INST.createEllipse();
final Text txt = ShapeFactory.INST.createText();
final BezierCurve bc = ShapeFactory.INST.createBezierCurve(Collections.emptyList());
final Polyline pl = ShapeFactory.INST.createPolyline(Collections.emptyList());
final Polygon pg = ShapeFactory.INST.createPolygon(Collections.emptyList());
final Triangle tr = ShapeFactory.INST.createTriangle();
final Rhombus rh = ShapeFactory.INST.createRhombus();
final Rectangle r1 = ShapeFactory.INST.createRectangle();
final Plot plot = ShapeFactory.INST.createPlot(ShapeFactory.INST.createPoint(), 0d, 1d, "x", false);
final CircleArc carc = ShapeFactory.INST.createCircleArc();
final Square sq = ShapeFactory.INST.createSquare();
final Freehand fh = ShapeFactory.INST.createFreeHand(Collections.emptyList());
r1.setLineStyle(LineStyle.DASHED);
r1.setBordersPosition(BorderPos.INTO);
r1.setFillingStyle(FillingStyle.PLAIN);
r1.setThickness(2.3);
r1.setHasDbleBord(true);
r1.setLineArc(0.2);
r1.setDbleBordSep(1.3);
r1.setHatchingsAngle(0.33);
r1.setHatchingsSep(9.1);
r1.setHatchingsWidth(12.11);
r1.setShadowAngle(0.1);
r1.setGradMidPt(0.66);
r1.setHatchingsCol(DviPsColors.CYAN);
r1.setLineColour(DviPsColors.NAVYBLUE);
r1.setShadowSize(87.2);
r1.setFillingCol(DviPsColors.CARNATIONPINK);
r1.setShadowCol(DviPsColors.CORNFLOWERBLUE);
r1.setDashSepBlack(1.2);
r1.setDashSepWhite(2.1);
r1.setDotSep(23.1);
r1.setGradAngle(1.3);
r1.setDbleBordCol(DviPsColors.RED);
r1.setGradColEnd(DviPsColors.BITTERSWEET);
r1.setGradColStart(DviPsColors.FORESTGREEN);
r1.setShowPts(true);
final Rectangle r2 = ShapeFactory.INST.createRectangle();
r2.setLineStyle(LineStyle.SOLID);
r2.setBordersPosition(BorderPos.MID);
r2.setFillingStyle(FillingStyle.HLINES);
r2.setThickness(6.3);
r2.setHasShadow(true);
r2.setLineArc(0.33);
r2.setDbleBordSep(2.3);
r2.setHatchingsAngle(-0.53);
r2.setHatchingsSep(1.1);
r2.setHatchingsWidth(2.11);
r2.setShadowAngle(-0.1);
r2.setGradMidPt(0.31);
r2.setHatchingsCol(DviPsColors.APRICOT);
r2.setLineColour(DviPsColors.YELLOW);
r2.setShadowSize(8.1);
r2.setFillingCol(DviPsColors.CERULEAN);
r2.setShadowCol(DviPsColors.DARKORCHID);
r1.setDashSepBlack(11.2);
r1.setDashSepWhite(21.1);
r1.setDotSep(231.1);
r1.setGradAngle(11.3);
r1.setDbleBordCol(DviPsColors.ROYALBLUE);
r1.setGradColEnd(DviPsColors.CADETBLUE);
r1.setGradColStart(DviPsColors.OLIVE);
dot.setDotStyle(DotStyle.DIAMOND);
txt.copy(r1);
ell.copy(r1);
circle.copy(r2);
dot.copy(r2);
bc.copy(r2);
pl.copy(r1);
pg.copy(r2);
tr.copy(r1);
rh.copy(r2);
plot.copy(r1);
carc.copy(r2);
sq.copy(r1);
fh.copy(r2);
sq.setFillingStyle(FillingStyle.GRAD);
shapes.addShape(r1);
shapes.addShape(txt);
shapes.addShape(grid);
shapes.addShape(pl);
shapes.addShape(pg);
shapes.addShape(r2);
shapes.addShape(axes);
shapes.addShape(ell);
shapes.addShape(circle);
shapes.addShape(tr);
shapes.addShape(rh);
shapes.addShape(dot);
shapes.addShape(bc);
shapes.addShape(plot);
shapes.addShape(carc);
shapes.addShape(sq);
shapes.addShape(fh);
}
use of net.sf.latexdraw.model.api.shape.Ellipse in project latexdraw by arnobl.
the class TestParsingPsellipse method testUnit.
@Test
public void testUnit() {
parser("\\psset{unit=4}\\psellipse(2,3cm)(2cm,5cm)");
final Ellipse ell = getShapeAt(0);
assertEquals(4d * 2d * Shape.PPC - 2d * Shape.PPC, ell.getX(), 0.0001);
assertEquals(-3d * Shape.PPC + 5d * Shape.PPC, ell.getY(), 0.0001);
assertEquals(2d * 2d * Shape.PPC, ell.getWidth(), 0.0001);
assertEquals(2d * 5d * Shape.PPC, ell.getHeight(), 0.0001);
}
use of net.sf.latexdraw.model.api.shape.Ellipse in project latexdraw by arnobl.
the class TestParsingPsellipse method testCoordinatesMm.
@Test
public void testCoordinatesMm() {
parser("\\psellipse(0,0)(350mm,200mm)");
final Ellipse ell = getShapeAt(0);
assertEquals(-35d * Shape.PPC, ell.getPosition().getX(), 0.001);
assertEquals(-20d * Shape.PPC * -1d, ell.getPosition().getY(), 0.001);
assertEquals(35d * Shape.PPC * 2d, ell.getWidth(), 0.001);
assertEquals(20d * Shape.PPC * 2d, ell.getHeight(), 0.001);
}
Aggregations