Skip to content
Snippets Groups Projects
AbstractShape.java 805 B
Newer Older
  • Learn to ignore specific revisions
  • TOUMERT Said's avatar
    TOUMERT Said committed
    package shape;
    
    
    BOUCHAL Stella's avatar
    BOUCHAL Stella committed
    import java.awt.*;
    import java.util.ArrayList;
    import java.util.List;
    import javafx.geometry.Point2D;
    import javafx.scene.canvas.GraphicsContext;
    
    public abstract class AbstractShape implements Shape {
        private List<Point2D>points;
    
        public AbstractShape(){
            points = new ArrayList<>();
        }
        public void addPoint(Point2D... points){
            for(Point2D point : points){
                this.points.add(point);
            }
        }
    
        public int pointsCount(){
            return points.size();
        }
    
        public Point2D getPoint(int index){
            if(index < 0 || index >= points.size()){
                throw new IndexOutOfBoundsException("index out of bounds");
            }
            return points.get(index);
        }
    
        public abstract void draw(GraphicsContext graphicsContent);
    
    
    
    
    TOUMERT Said's avatar
    TOUMERT Said committed
    }