Class ZEICHENFENSTER

java.lang.Object
  extended by ZEICHENFENSTER

public class ZEICHENFENSTER
extends Object

Class ZEICHENFENSTER - Eine Klasse, die einfache grafische Zeichnungen in einem Programmfenster erm�glicht.

Version:
2007.05.07
Author:
Michael Kolling (mik), Bruce Quig, Christian Heidrich

Constructor Summary
ZEICHENFENSTER(String titel)
          Erzeugt eine Zeichenfenster mit Standardma�en 600*500 und Hintergrundfarbe wei�
ZEICHENFENSTER(String titel, int breite, int hoehe)
          Erzeugt ein Zeichenfenster mit wei�em Hintergrund.
 
Method Summary
 void fuelle(Shape shape, int farbnr)
          F�llt das Innere eines Shape-Objekts mit der angegebenen Farbe.
 void fuelle(Shape shape, String farbe)
          F�llt das Innere eines Shape-Objekts mit der angegebenen Farbe.
 void fuelleDreieck(int x1, int y1, int x2, int y2, int x3, int y3, int farbnr)
          F�llt das Innere eines Dreiecks mit der angegebenen Farbe.
 void fuelleDreieck(int x1, int y1, int x2, int y2, int x3, int y3, String farbe)
          F�llt das Innere eines Dreiecks mit der angegebenen Farbe.
 void fuelleKreis(int x, int y, int radius, int farbnr)
          F�llt das Innere eines Kreises mit der angegebenen Farbe.
 void fuelleKreis(int x, int y, int radius, String farbe)
          F�llt das Innere eines Kreises mit der angegebenen Farbe.
 void fuelleRechteck(int xPos, int yPos, int breite, int hoehe, int farbnr)
          F�llt das Innere des Rechtecks mit der angegebenen Farbe.
 void fuelleRechteck(int xPos, int yPos, int breite, int hoehe, String farbe)
          F�llt das Innere des Rechtecks mit der angegebenen Farbe.
static ZEICHENFENSTER gibFenster()
           
 String gibHintergrundFarbe()
          Gibt die aktuelle Hintergrundfarbe des Zeichenfensters zur�ck.
 Dimension gibMasse()
          Gibt die Abmessungen des Zeichenfensters zur�ck.
 String gibVordergrundFarbe()
          Gibt die aktuelle Vordergrundfarbe des Zeichenfensters zur�ck.
 Font gibZeichensatz()
          Gibt den aktuellen Zeichensatz des Zeichenfensters zur�ck.
 boolean istSichtbar()
          Gibt Information �ber die Sichtbarkeit.
 void komponenteHinzufuegen(JComponent element, String position)
          F�gt ein weiteres Steuerungselement in die rechte Steuerungsleiste ein.
 void loesche(Shape shape)
          L�scht das Innere eines Shape-Objekts.
 void loescheAlles()
          L�scht den Inhalt des Zeichenfensters.
 void loescheDreieck(int x1, int y1, int x2, int y2, int x3, int y3)
          L�scht das Innere eines Dreicks
 void loescheKreis(int x, int y, int radius)
          L�scht das Innere eines Kreises
 void loescheRand(Shape shape)
          L�scht den Umriss eines Shape-Objekts.
 void loescheRechteck(int xPos, int yPos, int breite, int hoehe)
          L�scht das Innere eines Rechtecks.
 void loescheText(String text, int x, int y)
          L�scht einen Text vom Zeichenfenster.
 void setzeHintergrundFarbe(String neueFarbe)
          Setzt die Hintergrundfarbe des Zeichenfensters.
 void setzeMasse(int breite, int hoehe)
          �ndert die Abmessungen des Zeichenfensters.
 void setzeTitel(String titelNeu)
          Beschriftet den Titel des Zeichenfensters neu.
 void setzeVordergrundFarbe(String neueFarbe)
          Setzt die Vordergrundfarbe des Zeichenfensters.
 void setzeZeichensatz(Font neuerZeichensatz)
          �ndert den aktuellen Zeichensatz des Zeichenfensters.
 void warte(int zeit)
          Wartet eine bestimmte Zeit.
 void zeichne(Shape shape)
          Zeichnet den Umriss eines Shape-Objekts.
 boolean zeichneBild(Image bild, int x, int y)
          Zeichnet ein Bild in das Zeichnenfenster .
 void zeichneBogen(int x, int y, int halbachseX, int halbachseY, int startWinkel, int winkel)
          Zeichnet einen Elipsenbogen (Siehe Graphics.drawArc)
 void zeichneDreieck(int x1, int y1, int x2, int y2, int x3, int y3)
          Zeichnet den Rand eines Dreiecks mit der aktuellen Farbe.
 void zeichneKreis(int x, int y, int radius)
          Zeichnet einen Kreis (Siehe Graphics.drawOval)
 void zeichneRechteck(int xPos, int yPos, int breite, int hoehe)
          Zeichnet den Rand des Rechtecks mit der aktuellen Farbe.
 void zeichneStrecke(int x1, int y1, int x2, int y2)
          Zeichnet eine Strecke ins Zeichenfenster.
 void zeichneText(String text, int x, int y)
          Zeichnet einen Text.
 void zeige()
          Macht das Zeichenfenster sichtbar bzw. setzt es in den Vordergrund, falls es bereits sichtbar ist.
 
Methods inherited from class
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ZEICHENFENSTER

public ZEICHENFENSTER(String titel)
Erzeugt eine Zeichenfenster mit Standardma�en 600*500 und Hintergrundfarbe wei�

Parameters:
titel - Titel des Fensters

ZEICHENFENSTER

public ZEICHENFENSTER(String titel,
                      int breite,
                      int hoehe)
Erzeugt ein Zeichenfenster mit wei�em Hintergrund.

Parameters:
titel - Fensterueberschirft
breite - Breite des Fensters
hoehe - Hoehe des Fensters
Method Detail

fuelle

public void fuelle(Shape shape,
                   int farbnr)
F�llt das Innere eines Shape-Objekts mit der angegebenen Farbe.

Parameters:
shape - das Shape-Objekt, welches gef�llt werden soll
farbnr - F�llfarbnummer f�r das Shape-Objekt (0 bis 8)

fuelle

public void fuelle(Shape shape,
                   String farbe)
F�llt das Innere eines Shape-Objekts mit der angegebenen Farbe.

Parameters:
shape - das Shape-Objekt, welches gef�llt werden soll
farbe - F�llfarbe f�r das Shape-Objekt, erlaubt sind "weiss" "schwarz" "rot" "gruen" "blau" "gelb" "magenta" "cyan" "grau"

fuelleDreieck

public void fuelleDreieck(int x1,
                          int y1,
                          int x2,
                          int y2,
                          int x3,
                          int y3,
                          int farbnr)
F�llt das Innere eines Dreiecks mit der angegebenen Farbe.

Parameters:
x1,y1 - Koordinaten des ersten Eckpunkts
x2,y2 - Koordinaten des zweiten Eckpunkts
x3,y3 - Koordinaten des dritten Eckpunkts
farbnr - F�llfarbnummer f�r das Dreieck (0 bis 8)

fuelleDreieck

public void fuelleDreieck(int x1,
                          int y1,
                          int x2,
                          int y2,
                          int x3,
                          int y3,
                          String farbe)
F�llt das Innere eines Dreiecks mit der angegebenen Farbe.

Parameters:
x1,y1 - Koordinaten des ersten Eckpunkts
x2,y2 - Koordinaten des zweiten Eckpunkts
x3,y3 - Koordinaten des dritten Eckpunkts
farbe - F�llfarbe f�r das Dreieck, erlaubt sind "weiss" "schwarz" "rot" "gruen" "blau" "gelb" "magenta" "cyan" "grau"

fuelleKreis

public void fuelleKreis(int x,
                        int y,
                        int radius,
                        int farbnr)
F�llt das Innere eines Kreises mit der angegebenen Farbe.

Parameters:
x - x-Koordinate des Mittelpunkts
y - y-Koordinate des Mittelpunkts
radius - Kreisradius
farbnr - F�llfarbnummer f�r den Kreis (0 bis 8)

fuelleKreis

public void fuelleKreis(int x,
                        int y,
                        int radius,
                        String farbe)
F�llt das Innere eines Kreises mit der angegebenen Farbe.

Parameters:
x - x-Koordinate des Mittelpunkts
y - y-Koordinate des Mittelpunkts
radius - Kreisradius
farbe - F�llfarbe f�r den Kreis, erlaubt sind "weiss" "schwarz" "rot" "gruen" "blau" "gelb" "magenta" "cyan" "grau"

fuelleRechteck

public void fuelleRechteck(int xPos,
                           int yPos,
                           int breite,
                           int hoehe,
                           int farbnr)
F�llt das Innere des Rechtecks mit der angegebenen Farbe.

Parameters:
xPos,yPos - Koordinaten der linken oberen Ecke
breite, - hoehe Breite und H�he des Rechtecks
farbnr - F�llfarbnummer f�r das Rechteck (0 bis 8)

fuelleRechteck

public void fuelleRechteck(int xPos,
                           int yPos,
                           int breite,
                           int hoehe,
                           String farbe)
F�llt das Innere des Rechtecks mit der angegebenen Farbe.

Parameters:
xPos,yPos - Koordinaten der linken oberen Ecke
breite, - hoehe Breite und H�he des Rechtecks
farbe - F�llfarbe f�r das Rechteck, erlaubt sind "weiss" "schwarz" "rot" "gruen" "blau" "gelb" "magenta" "cyan" "grau"

gibFenster

public static ZEICHENFENSTER gibFenster()

gibHintergrundFarbe

public String gibHintergrundFarbe()
Gibt die aktuelle Hintergrundfarbe des Zeichenfensters zur�ck.

Returns:
die aktuelle Hintergrundfarbe

gibMasse

public Dimension gibMasse()
Gibt die Abmessungen des Zeichenfensters zur�ck.

Returns:
die aktuellen Abmessungen des Zeichenfensters

gibVordergrundFarbe

public String gibVordergrundFarbe()
Gibt die aktuelle Vordergrundfarbe des Zeichenfensters zur�ck.

Returns:
die aktuelle Vordergrundfarbe

gibZeichensatz

public Font gibZeichensatz()
Gibt den aktuellen Zeichensatz des Zeichenfensters zur�ck.

Returns:
den aktuellen Zeichensatz

istSichtbar

public boolean istSichtbar()
Gibt Information �ber die Sichtbarkeit.

Returns:
true falls das Fenster sichtbar ist.

komponenteHinzufuegen

public void komponenteHinzufuegen(JComponent element,
                                  String position)
F�gt ein weiteres Steuerungselement in die rechte Steuerungsleiste ein.

Parameters:
element - Das einzuf�gende Steuerungselement muss aus JComponent abgeleitet sein. z. B. JButton, JComboBox.

loesche

public void loesche(Shape shape)
L�scht das Innere eines Shape-Objekts.

Parameters:
shape - das Shape-Object, welches gel�scht werden soll

loescheAlles

public void loescheAlles()
L�scht den Inhalt des Zeichenfensters.


loescheDreieck

public void loescheDreieck(int x1,
                           int y1,
                           int x2,
                           int y2,
                           int x3,
                           int y3)
L�scht das Innere eines Dreicks

Parameters:
x1,y1 - Koordinaten des ersten Eckpunkts
x2,y2 - Koordinaten des zweiten Eckpunkts
x3,y3 - Koordinaten des dritten Eckpunkts

loescheKreis

public void loescheKreis(int x,
                         int y,
                         int radius)
L�scht das Innere eines Kreises

Parameters:
x - x-Koordinate des Mittelpunkts
y - y-Koordinate des Mittelpunkts
radius - Kreisradius

loescheRand

public void loescheRand(Shape shape)
L�scht den Umriss eines Shape-Objekts.

Parameters:
shape - das Shape-Object, dessen Umriss gel�scht werden soll

loescheRechteck

public void loescheRechteck(int xPos,
                            int yPos,
                            int breite,
                            int hoehe)
L�scht das Innere eines Rechtecks.

Parameters:
xPos,yPos - Koordinaten der linken oberen Ecke
breite, - hoehe Breite und H�he des Rechtecks

loescheText

public void loescheText(String text,
                        int x,
                        int y)
L�scht einen Text vom Zeichenfenster.

Parameters:
text - die zu l�schende Zeichenkette
x - x-Koordinate des linken Rands
y - y-Koordinate des oberen Rands

setzeHintergrundFarbe

public void setzeHintergrundFarbe(String neueFarbe)
Setzt die Hintergrundfarbe des Zeichenfensters.

Parameters:
neueFarbe - neue Hintergrundfarbe

setzeMasse

public void setzeMasse(int breite,
                       int hoehe)
�ndert die Abmessungen des Zeichenfensters.

Parameters:
breite - neue Breite
hoehe - neue H�he

setzeTitel

public void setzeTitel(String titelNeu)
Beschriftet den Titel des Zeichenfensters neu.

Parameters:
titelNeu - Text der neuen Fenster�berschrift

setzeVordergrundFarbe

public void setzeVordergrundFarbe(String neueFarbe)
Setzt die Vordergrundfarbe des Zeichenfensters.

Parameters:
neueFarbe - neue Vordergrundfarbe

setzeZeichensatz

public void setzeZeichensatz(Font neuerZeichensatz)
�ndert den aktuellen Zeichensatz des Zeichenfensters.

Parameters:
neuerZeichensatz - Zeichensatz, der k�nftig f�r Zeichenkettenausgaben verwendet wird

warte

public void warte(int zeit)
Wartet eine bestimmte Zeit. Eine kurze Verz�gerung kann z. B. f�r Animationen verwendet werden.

Parameters:
zeit - Wartezeit in Millisekunden

zeichne

public void zeichne(Shape shape)
Zeichnet den Umriss eines Shape-Objekts.

Parameters:
shape - das Shape-Object, welches gezeichnet werden soll

zeichneBild

public boolean zeichneBild(Image bild,
                           int x,
                           int y)
Zeichnet ein Bild in das Zeichnenfenster .

Parameters:
bild - das anzuzeigende Bild
x - x-Koordinate des linken Bildrands
y - y-Koordinate des oberen Bildrands
Returns:
gibt eines booleschen Wert zur�ck, der angibt, ob das Bild vollst�ndig geladen werden konnte

zeichneBogen

public void zeichneBogen(int x,
                         int y,
                         int halbachseX,
                         int halbachseY,
                         int startWinkel,
                         int winkel)
Zeichnet einen Elipsenbogen (Siehe Graphics.drawArc)

Parameters:
x - x-Koordinate des Elipsenmittelpunkts
y - y-Koordinate des Elipsenmittelpunkts
halbachseX - Halbachse der Elipse in x-Richtung
halbachseY - Halbachse der Elipse in y-Richtung
startWinkel - Polarwinkel, an dem der Bogen anf�ngt
winkel - Polarwinkel, welchen der Bogen durchl�uft

zeichneDreieck

public void zeichneDreieck(int x1,
                           int y1,
                           int x2,
                           int y2,
                           int x3,
                           int y3)
Zeichnet den Rand eines Dreiecks mit der aktuellen Farbe.

Parameters:
x1,y1 - Koordinaten des ersten Eckpunkts
x2,y2 - Koordinaten des zweiten Eckpunkts
x3,y3 - Koordinaten des dritten Eckpunkts

zeichneKreis

public void zeichneKreis(int x,
                         int y,
                         int radius)
Zeichnet einen Kreis (Siehe Graphics.drawOval)

Parameters:
x - x-Koordinate des Mittelpunkts
y - y-Koordinate des Mittelpunkts
radius - Kreisradius

zeichneRechteck

public void zeichneRechteck(int xPos,
                            int yPos,
                            int breite,
                            int hoehe)
Zeichnet den Rand des Rechtecks mit der aktuellen Farbe.

Parameters:
xPos,yPos - Koordinaten der linken oberen Ecke
breite, - hoehe Breite und H�he des Rechtecks

zeichneStrecke

public void zeichneStrecke(int x1,
                           int y1,
                           int x2,
                           int y2)
Zeichnet eine Strecke ins Zeichenfenster.

Parameters:
x1 - x-Koordinate des Anfangspunkts der Strecke
y1 - y-Koordinate des Anfangspunkts der Strecke
x2 - x-Koordinate des Endpunkts der Strecke
y2 - y-Koordinate des Endpunkts der Strecke

zeichneText

public void zeichneText(String text,
                        int x,
                        int y)
Zeichnet einen Text.

Parameters:
text - die anzuzeigende Zeichenkette
x - x-Koordinate des linken Rands
y - y-Koordinate des oberen Rands

zeige

public void zeige()
Macht das Zeichenfenster sichtbar bzw. setzt es in den Vordergrund, falls es bereits sichtbar ist.