diff --git a/src/main/java/shape/BorderDecorator.java b/src/main/java/shape/BorderDecorator.java index b0555f9492c225f443159f24d03b3a61f048bd14..e866d99a02617c0ee82d98e10600bd62fc02d8ca 100644 --- a/src/main/java/shape/BorderDecorator.java +++ b/src/main/java/shape/BorderDecorator.java @@ -1,4 +1,31 @@ package shape; -public class BorderDecorator { +import javafx.scene.canvas.GraphicsContext; +import javafx.geometry.Point2D; + +import javafx.scene.paint.Color; + +import javax.swing.border.Border; + + +public class BorderDecorator extends Decorator{ + private double radius; + + public BorderDecorator(Shape decoratedShape, double radius){ + super(decoratedShape); + this.radius=radius; + } + + + @Override + protected void drawDecoration(GraphicsContext graphicsContext) { + for (int i=0 ; i<decoratedShape.pointsCount();i++){ + Point2D point = decoratedShape.point(i); + graphicsContext.strokeOval(point.getX()-radius,point.getY()-radius,radius*2,radius*2); + } + } + public void draw(GraphicsContext graphicsContext){ + decoratedShape.draw(graphicsContext); + drawDecoration(graphicsContext); + } }