import eps.einfacheGrafik.Bild;
import eps.einfacheGrafik.Ellipse;
import eps.einfacheGrafik.Rechteck;
/**
* Die Klasse AmpelgrafikFussgaenger implementiert die Darstellung
* einer Fussgaengerampel.
*
*/
public class AutoampelII {
/**
* Das Attribut gehaeuse haelt das Rechteck, dass das
* Gehaeuse der Ampel darstellt.
*/
private Rechteck gehaeuse;
/**
* Das Attribut roteLampe haelt den Kreis, der den
* Hintergrund der roten Lampe bildet.
*/
private Ellipse roteLampe;
/**
* Das Attribut grueneLampe haelt den Kreis, der den
* Hintergrund der gruenen Lampe bildet.
*/
private Ellipse grueneLampe;
/**
* Das Attribut grueneLampe haelt den Kreis, der den
* Hintergrund der gelben Lampe bildet.
*/
private Ellipse gelbeLampe;
/**
* Konstruktor fuer Objekte der Klasse AmpelgrafikFussgaenger
* Es wird eine Ampel gezeichnet, die ausgeschaltet ist.
*/
public AutoampelII(int x, int y) {
ampelZeichnen(x,y);
anzeigen();
}
/**
* Die Methode goAnzeigen schaltet die Ampel auf "gruen".
* Es wird der Vorzustand nicht ueberprueft, dass muss der
* Nutzer machen.
*/
public void goAnzeigen() {
grueneLampe.farbeSetzen("gruen");
roteLampe.farbeSetzen("grau");
gelbeLampe.farbeSetzen("grau");
}
/**
* Die Methode stoppAnzeigen schaltet die Ampel auf "rot".
* Es wird der Vorzustand nicht ueberprueft, dass muss der
* Nutzer machen.
*/
public void stoppAnzeigen() {
roteLampe.farbeSetzen("rot");
gelbeLampe.farbeSetzen("grau");
grueneLampe.farbeSetzen("grau");
}
/**
* Die Methode stoppAnzeigen schaltet die Ampel auf "rot".
* Es wird der Vorzustand nicht ueberprueft, dass muss der
* Nutzer machen.
*/
public void achtungAnzeigen() {
gelbeLampe.farbeSetzen("gelb");
grueneLampe.farbeSetzen("grau");
roteLampe.farbeSetzen("grau");
}
/**
* Die Methode anzeigen macht die Grafikobjekte, die die Ampel
* darstellen, sichtbar.
*/
public void anzeigen() {
gehaeuse.anzeigen();
roteLampe.anzeigen();
grueneLampe.anzeigen();
gelbeLampe.anzeigen();
}
/**
* Die Methode verstecken macht die Grafikobjekte, die die Ampel
* darstellen, unsichtbar.
*/
public void verstecken() {
gehaeuse.verstecken();
roteLampe.verstecken();
grueneLampe.verstecken();
gelbeLampe.verstecken();
}
/**
* Die Methode weiterschalten zeigt die nächste Farbe an
*/
public void weiterschalten() {
if (roteLampe.farbeSetzen="rot") {
gelbeLampe.farbeSetzen("grau");
grueneLampe.farbeSetzen("gelb");
if (gelbeLampe.farbeSetzen="gelb")
roteLampe.farbeSetzen("grau");
grueneLampe.farbeSetzen("gruen");
if (grueneLampe.farbeSetzen="gruen")
roteLampe.farbeSetzen("rot");
gelbeLampe.farbeSetzen("grau");
}
/**
* Die Methode ampelZeichnen zeichnet die Komponenten der
* Ampel.
*/
private void ampelZeichnen(int xPosition, int yPosition) {
/* Gehaeuse der Ampel zeichnen */
gehaeuse = new Rechteck();
gehaeuse.groesseSetzen(100, 300);
gehaeuse.positionSetzen(xPosition, yPosition);
gehaeuse.farbeSetzen("schwarz");
/* rote Lampe zeichnen (Dient als Hintergrund fuer die Bilder) */
roteLampe = new Ellipse();
roteLampe.groesseSetzen(80, 80);
roteLampe.positionSetzen(xPosition + 10, yPosition +10);
roteLampe.farbeSetzen("grau");
/* gruene Lampe zeichnen (Dient als Hintergrund fuer die Bilder) */
gelbeLampe = new Ellipse();
gelbeLampe.groesseSetzen(80, 80);
gelbeLampe.positionSetzen(xPosition + 10, yPosition + 106);
gelbeLampe.farbeSetzen("grau");
/* gruene Lampe zeichnen (Dient als Hintergrund fuer die Bilder) */
grueneLampe = new Ellipse();
grueneLampe.groesseSetzen(80, 80);
grueneLampe.positionSetzen(xPosition + 10, yPosition + 200);
grueneLampe.farbeSetzen("grau");
}
/**
* Alle Lichter ausschalten
*/
public void ausschalten() {
}
}
des is des gesamte programm...
edit: arbeite mit BlueJ falls des nen unterschied macht