package tauglichkeitstester.figur;
import java.awt.*;
/**
* Von der abstrakten Klasse Figur werden alle anderen Figuren
* abgeleitet. Eine Figur ist durch ihren Mittelpunkt und die ihre Farbe
* festgelegt.
*
* @author Multiplikatorengruppe LFB Informatik - OSA Karlsruhe
* Kursreihe B - Schuljahr 2002/03
* Michael Pohlig, Matthias Taulien
* @version 1.5 vom 04.11.2002
*/
public abstract class Figur {
/**
* Mittelpunkts-Koordinaten
*/
protected int xMitte, yMitte;
/**
* Füllfarbe
*/
protected Color farbe;
/**
* Der Konstruktor erzeugt eine Figur, die durch ihren Mittelpunkt und
* ihre Farbe festgelegt ist.
*
* @param xMitte x-Koordinate des Mittelpunktes
* @param yMitte y-Koordinate des Mittelpunktes
* @param farbe Farbe der Figur
*/
public Figur(int xMitte, int yMitte, Color farbe) {
this.xMitte = xMitte;
this.yMitte = yMitte;
this.farbe = farbe;
}
/**
* Legt die Mittelpunkts-Koordinaten fest
* @param xMitte x-Koordinate des Mittelpunktes
* @param yMitte y-Koordinate des Mittelpunktes
*/
public void setMittelpunkt(int xMitte, int yMitte) {
this.xMitte = xMitte;
this.yMitte = yMitte;
}
/**
* Legt die Füllfarbe fest
* @param farbe Füllfarbe
*/
public void setFarbe(Color farbe) {
this.farbe = farbe;
}
/**
* Liefert die Füllfarbe zurück
*/
public Color getFarbe() {
return farbe;
}
/**
* Zeichnet die Figur in ihrer Farbe
* @param g Grafik-Kontext
*/
public void zeigeDich(Graphics g) {
if (g != null) {
g.setColor(farbe);
zeichne(g);
}
}
/**
* Hier sind die jeweiligen Zeichenmethoden zu implementieren.
* @param g Grafik-Kontext
*/
protected abstract void zeichne(Graphics g);
}