// // Balle composée d'un cercle, d'une vitesse et du fait qu'elle est visible ou non // import java.awt.Graphics2D; import java.awt.geom.Rectangle2D; import java.awt.geom.Ellipse2D; class Balle { private double xInit,yInit,dx,dy,diametre; private boolean visible; private Ellipse2D.Double surface; Balle(double x, double y, double diametre){ this.diametre=diametre; this.xInit=x; this.yInit=y; surface = new Ellipse2D.Double(0,0,diametre,diametre); init(); } public void init(){ allerA(xInit,yInit); montrer(); dx=1;dy=1; } public double getX(){ return surface.getX(); } public double getDx(){ return dx; } public double getY(){ return surface.getY(); } public double getDy(){ return dy; } public double getDiametre(){ return diametre; } public void allerA(double x, double y){ surface.setFrame(x,y,diametre,diametre); } public void setDx(double dx){ this.dx=dx; } public void setDy(double dy){ this.dy=dy; } public void cacher(){ visible=false; } public void montrer(){ visible=true; } public void afficher(Graphics2D g2D){ if(visible) g2D.fill(surface); } public boolean intersects(Rectangle2D rect){ return surface.intersects(rect); } }