From 21ecc66813b57bc5588bf90b00e03ecb766a7957 Mon Sep 17 00:00:00 2001 From: douaa <douaa.BENHILA@etu.univ-amu.fr> Date: Thu, 3 Oct 2024 22:50:49 +0200 Subject: [PATCH] add class CenterDecorator and add method draw decoration --- src/main/java/shape/CenterDecorator.java | 30 ++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 src/main/java/shape/CenterDecorator.java diff --git a/src/main/java/shape/CenterDecorator.java b/src/main/java/shape/CenterDecorator.java new file mode 100644 index 0000000..4dd21ad --- /dev/null +++ b/src/main/java/shape/CenterDecorator.java @@ -0,0 +1,30 @@ +package shape; + +import javafx.scene.canvas.GraphicsContext; +import javafx.scene.paint.Color; +import javafx.geometry.Point2D; +import shape.Shape; + +public class CenterDecorator extends Decorator{ + private double radius; + + public CenterDecorator(Shape decoratedShape, double radius){ + super(decoratedShape); + this.radius=radius; + } + + @Override + protected void drawDecoration(GraphicsContext graphicsContext) { + graphicsContext.setStroke(Color.RED); // Définir la couleur de la décoration + + // Calculer le centre de la forme décorée + Point2D center = point(0); + + // Dessiner un cercle autour du centre + graphicsContext.fillOval(center.getX() - radius, center.getY() - radius, radius * 2, radius * 2); + } + public void draw(GraphicsContext graphicsContext) { + super.draw(graphicsContext); + drawDecoration(graphicsContext); + } +} -- GitLab