Search in sources :

Example 6 with Size

use of com.willwinder.ugs.nbp.designer.model.Size in project Universal-G-Code-Sender by winder.

the class CreateEllipseControl method createEntity.

private void createEntity() {
    double startX = Math.min(startPosition.getX(), endPosition.getX());
    double endX = Math.max(startPosition.getX(), endPosition.getX());
    double startY = Math.min(startPosition.getY(), endPosition.getY());
    double endY = Math.max(startPosition.getY(), endPosition.getY());
    Ellipse ellipse = new Ellipse(startX, startY);
    ellipse.setSize(new Size(endX - startX, endY - startY));
    AddAction addAction = new AddAction(controller, ellipse);
    addAction.actionPerformed(new ActionEvent(this, 0, ""));
    controller.addEntity(ellipse);
}
Also used : Ellipse(com.willwinder.ugs.nbp.designer.entities.cuttable.Ellipse) Size(com.willwinder.ugs.nbp.designer.model.Size) ActionEvent(java.awt.event.ActionEvent) AddAction(com.willwinder.ugs.nbp.designer.actions.AddAction)

Example 7 with Size

use of com.willwinder.ugs.nbp.designer.model.Size in project Universal-G-Code-Sender by winder.

the class AbstractEntity method setCenter.

@Override
public void setCenter(Point2D center) {
    Size size = getSize();
    setPosition(new Point2D.Double(center.getX() - (size.getWidth() / 2d), center.getY() - (size.getHeight() / 2d)));
}
Also used : Point2D(java.awt.geom.Point2D) Size(com.willwinder.ugs.nbp.designer.model.Size)

Example 8 with Size

use of com.willwinder.ugs.nbp.designer.model.Size in project Universal-G-Code-Sender by winder.

the class AbstractEntity method setWidth.

public void setWidth(double width) {
    Size size = getSize();
    setSize(new Size(width, size.getHeight()));
}
Also used : Size(com.willwinder.ugs.nbp.designer.model.Size)

Example 9 with Size

use of com.willwinder.ugs.nbp.designer.model.Size in project Universal-G-Code-Sender by winder.

the class AbstractEntity method setHeight.

public void setHeight(double height) {
    Size size = getSize();
    setSize(new Size(size.getWidth(), height));
}
Also used : Size(com.willwinder.ugs.nbp.designer.model.Size)

Example 10 with Size

use of com.willwinder.ugs.nbp.designer.model.Size in project Universal-G-Code-Sender by winder.

the class AbstractEntity method setSize.

@Override
public void setSize(Size size) {
    if (size.getWidth() < 0.1) {
        size = new Size(0.1, size.getHeight());
    }
    if (size.getHeight() < 0.1) {
        size = new Size(size.getWidth(), 0.1);
    }
    Size currentSize = getSize();
    scale(size.getWidth() / currentSize.getWidth(), size.getHeight() / currentSize.getHeight());
}
Also used : Size(com.willwinder.ugs.nbp.designer.model.Size)

Aggregations

Size (com.willwinder.ugs.nbp.designer.model.Size)23 Point2D (java.awt.geom.Point2D)10 Test (org.junit.Test)10 Rectangle (com.willwinder.ugs.nbp.designer.entities.cuttable.Rectangle)8 Ellipse (com.willwinder.ugs.nbp.designer.entities.cuttable.Ellipse)4 Design (com.willwinder.ugs.nbp.designer.model.Design)3 Entity (com.willwinder.ugs.nbp.designer.entities.Entity)2 Segment (com.willwinder.ugs.nbp.designer.io.gcode.path.Segment)2 SegmentType (com.willwinder.ugs.nbp.designer.io.gcode.path.SegmentType)2 Axis (com.willwinder.universalgcodesender.model.Axis)2 PartialPosition (com.willwinder.universalgcodesender.model.PartialPosition)2 List (java.util.List)2 Collectors (java.util.stream.Collectors)2 Assert (org.junit.Assert)2 AddAction (com.willwinder.ugs.nbp.designer.actions.AddAction)1 Cuttable (com.willwinder.ugs.nbp.designer.entities.cuttable.Cuttable)1 Group (com.willwinder.ugs.nbp.designer.entities.cuttable.Group)1 Text (com.willwinder.ugs.nbp.designer.entities.cuttable.Text)1 GcodePath (com.willwinder.ugs.nbp.designer.io.gcode.path.GcodePath)1 ActionEvent (java.awt.event.ActionEvent)1