Newer
Older
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);