From 4ed94f697607d11d19c5106c02f6eea8913e1ccc Mon Sep 17 00:00:00 2001
From: a23022716 <celia.arezki.1@etu.univ-amu.fr>
Date: Fri, 27 Sep 2024 12:01:04 +0200
Subject: [PATCH] add of BorderDecorator class , it adds a border (a circle)
 around each point of the shape.

---
 src/main/java/shape/BorderDecorator.java | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 src/main/java/shape/BorderDecorator.java

diff --git a/src/main/java/shape/BorderDecorator.java b/src/main/java/shape/BorderDecorator.java
new file mode 100644
index 0000000..7d7703a
--- /dev/null
+++ b/src/main/java/shape/BorderDecorator.java
@@ -0,0 +1,23 @@
+package shape;
+import javafx.scene.canvas.GraphicsContext;
+import javafx.geometry.Point2D;
+import javafx.scene.paint.Color;
+
+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) {
+        graphicsContext.setStroke(Color.BLACK);
+        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);
+        }
+    }
+}
+
-- 
GitLab