diff --git a/src/main/java/shape/Rectangle.java b/src/main/java/shape/Rectangle.java index b0e90627b6345f22ac31ab8bf5fb40f81e4d4f66..34b41f8320caad6badd8642783e220b96411ec4f 100644 --- a/src/main/java/shape/Rectangle.java +++ b/src/main/java/shape/Rectangle.java @@ -4,24 +4,36 @@ import javafx.geometry.Point2D; import javafx.scene.canvas.GraphicsContext; import javafx.scene.paint.Color; -public class Rectangle implements Shape{ - Color color; - Rectangle(Color color, Point2D point0, Point2D point1){ +public class Rectangle implements Shape { + private Color color; + private Point2D point0, point1; + + public Rectangle(Color color, Point2D point0, Point2D point1) { this.color = color; + this.point0 = point0; + this.point1 = point1; } @Override public int pointsCount() { - return 0; + return 2; // Un rectangle a 2 points (deux coins opposés) } @Override public Point2D point(int index) { - return null; + if (index == 0) { + return point0; + } else if (index == 1) { + return point1; + } + throw new IndexOutOfBoundsException("Rectangle has only 2 points."); } @Override public void draw(GraphicsContext context) { - + context.setStroke(color); + context.strokeRect(point0.getX(), point0.getY(), + point1.getX() - point0.getX(), + point1.getY() - point0.getY()); } }