// -------------------------------------------------- // APPLETELLIPSE2 : UTILISATION DE L'OBJET "ELLIPSE" // -------------------------------------------------- import java.applet.*; import java.awt.*; // L'applet principale public class AppletEllipse2 extends Applet { // Déclaration des objets Ellipse2 e1, e2; // Initialisation de l'applet public void init() { // Initialisation des ellipses e1 = new Ellipse2(100, 50, 75, 20); e2 = new Ellipse2(150, 70); // Couleur de fond de l'applet setBackground(Color.black); } // Tracé de l'applet public void paint(Graphics g) { // Déplacer la 1ère ellipse (pourquoi pas ?!) e1.deplacer(10, 15); // Tracer la 1ère ellipse avec fond transparent g.setColor(Color.white); e1.tracerEllipse(g); // Tracer la 2nde ellipse avec fond opaque g.setColor(Color.orange); e2.remplirEllipse(g); } } // L'objet a utiliser class Ellipse2 extends Object { int x, y; // Coordonnées du centre de l'ellipse int largeur, hauteur; // Dimensions de l'ellipse // Constructeur de l'objet public Ellipse2(int xx, int yy, int ll, int hh) { x = xx; y = yy; largeur = ll; hauteur = hh; } // Autre constructeur public Ellipse2(int xx, int yy) { x = xx; y = yy; largeur = 50; hauteur = 20; } // Méthode pour déplacer l'ellipse public void deplacer(int dx, int dy) { x += dx; y += dy; } // Méthode pour tracer l'ellipse avec un fond transparent public void tracerEllipse(Graphics g) { g.drawOval(x - largeur/2, y - hauteur/2, largeur, hauteur); } public void remplirEllipse(Graphics g) { g.fillOval(x - largeur/2, y - hauteur/2, largeur, hauteur); } }