TP-programmation-orientee-o.../TP06/Geometrique.java
2023-06-20 21:02:09 +02:00

56 lines
1.4 KiB
Java
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import java.awt.Color;
/** Point modélise un point géométrique dans un plan équipé d'un
* repère cartésien. Un point peut être affiché et translaté.
* Sa distance par rapport à un autre point peut être obtenue.
* Le point peut être dessiné sur un afficheur.
*
* @author Xavier Crégut <Prénom.Nom@enseeiht.fr>
*/
abstract public class Geometrique {
//@ private invariant getCouleur() != null;
//@ private invariant getCouleur() == couleur; // invariant de liaison
private Color couleur; // couleur du point
/** Construire un point à partir de son abscisse et de son ordonnée.
*/
public Geometrique(Color couleur) {
this.couleur = couleur;
}
/** Afficher sur le terminal les caractéristiques de lobjet. */
abstract public void afficher();
/**
* Dessiner lobjet.
* @param afficheur Ecran sur lequel on dessine
* */
abstract public void dessiner(afficheur.Afficheur afficheur);
/**
* Translater lobjet géométrique.
* @param dx déplacement en X
* @param dy déplacement en Y
*/
abstract public void translater(double dx, double dy);
// Gestion de la couleur
/** Obtenir la couleur du point.
* @return la couleur du point
*/
//@ pure
public Color getCouleur() {
return this.couleur;
}
/** Changer la couleur du point.
* @param nouvelleCouleur nouvelle couleur
*/
public void setCouleur(Color nouvelleCouleur) {
this.couleur = nouvelleCouleur;
}
}