package state; import shape.Circle; public class StateCircle1 implements DrawerState{ private Circle circle; public StateCircle1(Circle circle) { this.circle = circle; } @Override public void mousePressed(DrawerContext context, double x, double y) {} @Override public void mouseReleased(DrawerContext context, double x, double y) { circle.setFinished(true); context.paint(context.getDrawer().getGraphicsContext2D()); context.setState(new StateCircle0()); } @Override public void mouseMoved(DrawerContext context, double x, double y) { double radius = Math.sqrt(Math.pow(x - circle.getX(), 2) + Math.pow(y - circle.getY(), 2)); circle.setDimensions(circle.getX(), circle.getY(), radius*2, radius*2); context.paint(context.getDrawer().getGraphicsContext2D()); } @Override public void paint(DrawerContext context) { } }