diff --git a/klasse_ Zeichenfenster/BLUEJ.PKG b/klasse_ Zeichenfenster/BLUEJ.PKG new file mode 100644 index 0000000..e0f286e --- /dev/null +++ b/klasse_ Zeichenfenster/BLUEJ.PKG @@ -0,0 +1,26 @@ +#BlueJ package file +package.editor.height=446 +package.editor.width=308 +package.editor.x=225 +package.editor.y=37 +package.numDependencies=0 +package.numTargets=1 +package.showExtends=true +package.showUses=true +project.charset=windows-1252 +readme.editor.height=519 +readme.editor.width=764 +readme.editor.x=0 +readme.editor.y=0 +target1.editor.height=740 +target1.editor.width=1040 +target1.editor.x=-8 +target1.editor.y=-8 +target1.height=50 +target1.name=Zeichenfenster +target1.naviview.expanded=true +target1.showInterface=false +target1.type=ClassTarget +target1.width=110 +target1.x=70 +target1.y=10 diff --git a/klasse_ Zeichenfenster/DOC/LOGFILE.TXT b/klasse_ Zeichenfenster/DOC/LOGFILE.TXT new file mode 100644 index 0000000..a062f2f --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/LOGFILE.TXT @@ -0,0 +1,62 @@ +Class documentation +<---- javadoc command: ----> +C:\PROGRA~1\Java\JDK17~1.0_1\bin\javadoc.exe +-author +-version +-nodeprecated +-package +-noindex +-notree +-nohelp +-nonavbar +-source +1.7 +-classpath +C:\Program Files (x86)\BlueJ\lib\bluejcore.jar;C:\Program Files (x86)\BlueJ\lib\junit-4.8.2.jar;H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster +-d +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc +-encoding +windows-1252 +-charset +windows-1252 +-docletpath +C:\Program Files (x86)\BlueJ\lib\bjdoclet.jar +-doclet +bluej.doclet.doclets.formats.html.HtmlDoclet +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java +<---- end of javadoc command ----> +Loading source file H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java... +Constructing Javadoc information... +Standard Doclet version 1.7.0_10 +Building tree for all the packages and classes... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\Zeichenfenster.html... +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:332: warning - @param argument "x1,y1" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:332: warning - @param argument "x2,y2" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:332: warning - @param argument "x3,y3" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:316: warning - @param argument "x1,y1" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:316: warning - @param argument "x2,y2" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:316: warning - @param argument "x3,y3" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:268: warning - @param argument "xPos,yPos" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:268: warning - @param argument "breite," is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:253: warning - @param argument "xPos,yPos" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:253: warning - @param argument "breite," is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:347: warning - @param argument "x1,y1" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:347: warning - @param argument "x2,y2" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:347: warning - @param argument "x3,y3" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:282: warning - @param argument "xPos,yPos" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:282: warning - @param argument "breite," is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:302: warning - @param argument "x1,y1" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:302: warning - @param argument "x2,y2" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:302: warning - @param argument "x3,y3" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:239: warning - @param argument "xPos,yPos" is not a parameter name. +H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\Zeichenfenster.java:239: warning - @param argument "breite," is not a parameter name. +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\package-frame.html... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\package-summary.html... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\constant-values.html... +Building index for all the packages and classes... +Building index for all classes... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\allclasses-frame.html... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\allclasses-noframe.html... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\index.html... +Generating H:\Jo-Stick\INFO\Info_HÖFLER\Info_10_Skript_Höfler\Info_10_Bluej_Projekte_und_Arbeitsblätter\klasse_ Zeichenfenster\doc\stylesheet.css... +20 warnings diff --git a/klasse_ Zeichenfenster/DOC/ZEICHENFENSTER.html b/klasse_ Zeichenfenster/DOC/ZEICHENFENSTER.html new file mode 100644 index 0000000..aba2aa4 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/ZEICHENFENSTER.html @@ -0,0 +1,1072 @@ + + + + + + + +Zeichenfenster + + + + + + + + + + + + +
+ +
+ +

+Class Zeichenfenster

+
+java.lang.Object
+  extended by Zeichenfenster
+
+
+
+
public class Zeichenfenster
extends java.lang.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(java.lang.String titel) + +
+          Erzeugt eine Zeichenfenster mit Standardmaßen 600*500 und Hintergrundfarbe weiß
Zeichenfenster(java.lang.String titel, + int breite, + int hoehe) + +
+          Erzeugt ein Zeichenfenster mit weißem Hintergrund.
+  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Method Summary
+ voidfuelle(java.awt.Shape shape, + int farbnr) + +
+          Füllt das Innere eines Shape-Objekts mit der angegebenen Farbe.
+ voidfuelle(java.awt.Shape shape, + java.lang.String farbe) + +
+          Füllt das Innere eines Shape-Objekts mit der angegebenen Farbe.
+ voidfuelleDreieck(int x1, + int y1, + int x2, + int y2, + int x3, + int y3, + int farbnr) + +
+          Füllt das Innere eines Dreiecks mit der angegebenen Farbe.
+ voidfuelleDreieck(int x1, + int y1, + int x2, + int y2, + int x3, + int y3, + java.lang.String farbe) + +
+          Füllt das Innere eines Dreiecks mit der angegebenen Farbe.
+ voidfuelleKreis(int x, + int y, + int radius, + int farbnr) + +
+          Füllt das Innere eines Kreises mit der angegebenen Farbe.
+ voidfuelleKreis(int x, + int y, + int radius, + java.lang.String farbe) + +
+          Füllt das Innere eines Kreises mit der angegebenen Farbe.
+ voidfuelleRechteck(int xPos, + int yPos, + int breite, + int hoehe, + int farbnr) + +
+          Füllt das Innere des Rechtecks mit der angegebenen Farbe.
+ voidfuelleRechteck(int xPos, + int yPos, + int breite, + int hoehe, + java.lang.String farbe) + +
+          Füllt das Innere des Rechtecks mit der angegebenen Farbe.
+static ZeichenfenstergibFenster() + +
+           
+ java.lang.StringgibHintergrundFarbe() + +
+          Gibt die aktuelle Hintergrundfarbe des Zeichenfensters zurück.
+ java.awt.DimensiongibMasse() + +
+          Gibt die Abmessungen des Zeichenfensters zurück.
+ java.lang.StringgibVordergrundFarbe() + +
+          Gibt die aktuelle Vordergrundfarbe des Zeichenfensters zurück.
+ java.awt.FontgibZeichensatz() + +
+          Gibt den aktuellen Zeichensatz des Zeichenfensters zurück.
+ booleanistSichtbar() + +
+          Gibt Information über die Sichtbarkeit.
+ voidkomponenteHinzufuegen(javax.swing.JComponent element, + java.lang.String position) + +
+          Fügt ein weiteres Steuerungselement in die rechte Steuerungsleiste ein.
+ voidloesche(java.awt.Shape shape) + +
+          Löscht das Innere eines Shape-Objekts.
+ voidloescheAlles() + +
+          Löscht den Inhalt des Zeichenfensters.
+ voidloescheDreieck(int x1, + int y1, + int x2, + int y2, + int x3, + int y3) + +
+          Löscht das Innere eines Dreicks
+ voidloescheKreis(int x, + int y, + int radius) + +
+          Löscht das Innere eines Kreises
+ voidloescheRand(java.awt.Shape shape) + +
+          Löscht den Umriss eines Shape-Objekts.
+ voidloescheRechteck(int xPos, + int yPos, + int breite, + int hoehe) + +
+          Löscht das Innere eines Rechtecks.
+ voidloescheText(java.lang.String text, + int x, + int y) + +
+          Löscht einen Text vom Zeichenfenster.
+ voidsetzeHintergrundFarbe(java.lang.String neueFarbe) + +
+          Setzt die Hintergrundfarbe des Zeichenfensters.
+ voidsetzeMasse(int breite, + int hoehe) + +
+          Ändert die Abmessungen des Zeichenfensters.
+ voidsetzeTitel(java.lang.String titelNeu) + +
+          Beschriftet den Titel des Zeichenfensters neu.
+ voidsetzeVordergrundFarbe(java.lang.String neueFarbe) + +
+          Setzt die Vordergrundfarbe des Zeichenfensters.
+ voidsetzeZeichensatz(java.awt.Font neuerZeichensatz) + +
+          Ändert den aktuellen Zeichensatz des Zeichenfensters.
+ voidwarte(int zeit) + +
+          Wartet eine bestimmte Zeit.
+ voidzeichne(java.awt.Shape shape) + +
+          Zeichnet den Umriss eines Shape-Objekts.
+ booleanzeichneBild(java.awt.Image bild, + int x, + int y) + +
+          Zeichnet ein Bild in das Zeichnenfenster .
+ voidzeichneBogen(int x, + int y, + int halbachseX, + int halbachseY, + int startWinkel, + int winkel) + +
+          Zeichnet einen Elipsenbogen (Siehe Graphics.drawArc)
+ voidzeichneDreieck(int x1, + int y1, + int x2, + int y2, + int x3, + int y3) + +
+          Zeichnet den Rand eines Dreiecks mit der aktuellen Farbe.
+ voidzeichneKreis(int x, + int y, + int radius) + +
+          Zeichnet einen Kreis (Siehe Graphics.drawOval)
+ voidzeichneRechteck(int xPos, + int yPos, + int breite, + int hoehe) + +
+          Zeichnet den Rand des Rechtecks mit der aktuellen Farbe.
+ voidzeichneStrecke(int x1, + int y1, + int x2, + int y2) + +
+          Zeichnet eine Strecke ins Zeichenfenster.
+ voidzeichneText(java.lang.String text, + int x, + int y) + +
+          Zeichnet einen Text.
+ voidzeige() + +
+          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(java.lang.String titel)
+
+
Erzeugt eine Zeichenfenster mit Standardmaßen 600*500 und Hintergrundfarbe weiß +

+

+
Parameters:
titel - Titel des Fensters
+
+
+ +

+Zeichenfenster

+
+public Zeichenfenster(java.lang.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(java.awt.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(java.awt.Shape shape,
+                   java.lang.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,
+                          java.lang.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,
+                        java.lang.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,
+                           java.lang.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 java.lang.String gibHintergrundFarbe()
+
+
Gibt die aktuelle Hintergrundfarbe des Zeichenfensters zurück. +

+

+ +
Returns:
die aktuelle Hintergrundfarbe
+
+
+
+ +

+gibMasse

+
+public java.awt.Dimension gibMasse()
+
+
Gibt die Abmessungen des Zeichenfensters zurück. +

+

+ +
Returns:
die aktuellen Abmessungen des Zeichenfensters
+
+
+
+ +

+gibVordergrundFarbe

+
+public java.lang.String gibVordergrundFarbe()
+
+
Gibt die aktuelle Vordergrundfarbe des Zeichenfensters zurück. +

+

+ +
Returns:
die aktuelle Vordergrundfarbe
+
+
+
+ +

+gibZeichensatz

+
+public java.awt.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(javax.swing.JComponent element,
+                                  java.lang.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(java.awt.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(java.awt.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(java.lang.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(java.lang.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(java.lang.String titelNeu)
+
+
Beschriftet den Titel des Zeichenfensters neu. +

+

+
Parameters:
titelNeu - Text der neuen Fensterüberschrift
+
+
+
+ +

+setzeVordergrundFarbe

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

+

+
Parameters:
neueFarbe - neue Vordergrundfarbe
+
+
+
+ +

+setzeZeichensatz

+
+public void setzeZeichensatz(java.awt.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(java.awt.Shape shape)
+
+
Zeichnet den Umriss eines Shape-Objekts. +

+

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

+zeichneBild

+
+public boolean zeichneBild(java.awt.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(java.lang.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. +

+

+
+
+
+ +
+ +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/allclasses-frame.html b/klasse_ Zeichenfenster/DOC/allclasses-frame.html new file mode 100644 index 0000000..366fbf4 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/allclasses-frame.html @@ -0,0 +1,32 @@ + + + + + + + +All Classes + + + + + + + + + + + +All Classes +
+ + + + + +
Zeichenfenster +
+
+ + + diff --git a/klasse_ Zeichenfenster/DOC/allclasses-noframe.html b/klasse_ Zeichenfenster/DOC/allclasses-noframe.html new file mode 100644 index 0000000..2c6d2c8 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/allclasses-noframe.html @@ -0,0 +1,32 @@ + + + + + + + +All Classes + + + + + + + + + + + +All Classes +
+ + + + + +
Zeichenfenster +
+
+ + + diff --git a/klasse_ Zeichenfenster/DOC/constant-values.html b/klasse_ Zeichenfenster/DOC/constant-values.html new file mode 100644 index 0000000..32266d2 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/constant-values.html @@ -0,0 +1,45 @@ + + + + + + + +Constant Field Values + + + + + + + + + + + + +
+ +
+
+

+Constant Field Values

+
+
+Contents + +
+ +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/help-doc.html b/klasse_ Zeichenfenster/DOC/help-doc.html new file mode 100644 index 0000000..48278d9 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/help-doc.html @@ -0,0 +1,199 @@ + + + + + + +API Help (Zeichnen1) + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+How This API Document Is Organized

+
+This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.

+Package

+
+ +

+Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:

+
+

+Class/Interface

+
+ +

+Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:

+Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.
+ +

+Annotation Type

+
+ +

+Each annotation type has its own separate page with the following sections:

+
+ +

+Enum

+
+ +

+Each enum has its own separate page with the following sections:

+
+

+Tree (Class Hierarchy)

+
+There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with java.lang.Object. The interfaces do not inherit from java.lang.Object. +
+

+Index

+
+The Index contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.
+

+Prev/Next

+These links take you to the next or previous class, interface, package, or related page.

+Frames/No Frames

+These links show and hide the HTML frames. All pages are available with or without frames. +

+

+Serialized Form

+Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description. +

+

+Constant Field Values

+The Constant Field Values page lists the static final fields and their values. +

+ + +This help file applies to API documentation generated using the standard doclet. + +
+


+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/index-all.html b/klasse_ Zeichenfenster/DOC/index-all.html new file mode 100644 index 0000000..c3c66de --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/index-all.html @@ -0,0 +1,298 @@ + + + + + + +Index (Zeichnen1) + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +F G I K L S W Z
+

+F

+
+
fuelle(Shape, String) - +Method in class ZEICHENFENSTER +
Füllt das Innere eines Shape-Objekts mit der angegebenen Farbe. +
fuelle(Shape, int) - +Method in class ZEICHENFENSTER +
Füllt das Innere eines Shape-Objekts mit der angegebenen Farbe. +
fuelleDreieck(int, int, int, int, int, int, String) - +Method in class ZEICHENFENSTER +
Füllt das Innere eines Dreiecks mit der angegebenen Farbe. +
fuelleDreieck(int, int, int, int, int, int, int) - +Method in class ZEICHENFENSTER +
Füllt das Innere eines Dreiecks mit der angegebenen Farbe. +
fuelleKreis(int, int, int, String) - +Method in class ZEICHENFENSTER +
Füllt das Innere eines Kreises mit der angegebenen Farbe. +
fuelleKreis(int, int, int, int) - +Method in class ZEICHENFENSTER +
Füllt das Innere eines Kreises mit der angegebenen Farbe. +
fuelleRechteck(int, int, int, int, String) - +Method in class ZEICHENFENSTER +
Füllt das Innere des Rechtecks mit der angegebenen Farbe. +
fuelleRechteck(int, int, int, int, int) - +Method in class ZEICHENFENSTER +
Füllt das Innere des Rechtecks mit der angegebenen Farbe. +
+
+

+G

+
+
gibFenster() - +Static method in class ZEICHENFENSTER +
  +
gibHintergrundFarbe() - +Method in class ZEICHENFENSTER +
Gibt die aktuelle Hintergrundfarbe des Zeichenfensters zurück. +
gibMasse() - +Method in class ZEICHENFENSTER +
Gibt die Abmessungen des Zeichenfensters zurück. +
gibUmfang() - +Method in class KASTEN +
  +
gibVordergrundFarbe() - +Method in class ZEICHENFENSTER +
Gibt die aktuelle Vordergrundfarbe des Zeichenfensters zurück. +
gibZeichensatz() - +Method in class ZEICHENFENSTER +
Gibt den aktuellen Zeichensatz des Zeichenfensters zurück. +
+
+

+I

+
+
istSichtbar() - +Method in class ZEICHENFENSTER +
Gibt Information über die Sichtbarkeit. +
+
+

+K

+
+
KASTEN - Class in <Unnamed>
 
KASTEN() - +Constructor for class KASTEN +
  +
+
+

+L

+
+
loesche(Shape) - +Method in class ZEICHENFENSTER +
Löscht das Innere eines Shape-Objekts. +
loescheAlles() - +Method in class ZEICHENFENSTER +
Löscht den Inhalt des Zeichenfensters. +
loescheDreieck(int, int, int, int, int, int) - +Method in class ZEICHENFENSTER +
Löscht das Innere eines Dreicks +
loescheKreis(int, int, int) - +Method in class ZEICHENFENSTER +
Löscht das Innere eines Kreises +
loescheRand(Shape) - +Method in class ZEICHENFENSTER +
Löscht den Umriss eines Shape-Objekts. +
loescheRechteck(int, int, int, int) - +Method in class ZEICHENFENSTER +
Löscht das Innere eines Rechtecks. +
loescheText(String, int, int) - +Method in class ZEICHENFENSTER +
Löscht einen Text vom Zeichenfenster. +
+
+

+S

+
+
setzeGroesse(int, int) - +Method in class KASTEN +
  +
setzeHintergrundFarbe(String) - +Method in class ZEICHENFENSTER +
Setzt die Hintergrundfarbe des Zeichenfensters. +
setzeLinksNeu(int) - +Method in class KASTEN +
  +
setzeMasse(int, int) - +Method in class ZEICHENFENSTER +
Ändert die Abmessungen des Zeichenfensters. +
setzeVordergrundFarbe(String) - +Method in class ZEICHENFENSTER +
Setzt die Vordergrundfarbe des Zeichenfensters. +
setzeZeichensatz(Font) - +Method in class ZEICHENFENSTER +
Ändert den aktuellen Zeichensatz des Zeichenfensters. +
steuerungHinzufuegen(JComponent) - +Method in class ZEICHENFENSTER +
Fügt ein weiteres Steuerungselement in die rechte Steuerungsleiste ein. +
+
+

+W

+
+
warte(int) - +Method in class ZEICHENFENSTER +
Wartet eine bestimmte Zeit. +
+
+

+Z

+
+
ZEICHENFENSTER - Class in <Unnamed>
Class ZEICHENFENSTER - Eine Klasse, die einfache grafische Zeichnungen + in einem Programmfenster ermöglicht.
ZEICHENFENSTER(String) - +Constructor for class ZEICHENFENSTER +
Erzeugt eine Zeichenfenster mit Standardmaßen 600*500 und Hintergrundfarbe weiß +
ZEICHENFENSTER(String, int, int) - +Constructor for class ZEICHENFENSTER +
Erzeugt ein Zeichenfenster mit weißem Hintergrund. +
zeichne() - +Method in class KASTEN +
  +
zeichne(Shape) - +Method in class ZEICHENFENSTER +
Zeichnet den Umriss eines Shape-Objekts. +
zeichneBild(Image, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet ein Bild in das Zeichnenfenster . +
zeichneBogen(int, int, int, int, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet einen Elipsenbogen (Siehe Graphics.drawArc) +
zeichneDreieck(int, int, int, int, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet den Rand eines Dreiecks mit der aktuellen Farbe. +
zeichneKreis(int, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet einen Kreis (Siehe Graphics.drawOval) +
zeichneRechteck(int, int, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet den Rand des Rechtecks mit der aktuellen Farbe. +
zeichneStrecke(int, int, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet eine Strecke ins Zeichenfenster. +
zeichneText(String, int, int) - +Method in class ZEICHENFENSTER +
Zeichnet einen Text. +
zeige() - +Method in class ZEICHENFENSTER +
Macht das Zeichenfenster sichtbar bzw. setzt es in den Vordergrund, + falls es bereits sichtbar ist. +
+
+F G I K L S W Z + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/index.html b/klasse_ Zeichenfenster/DOC/index.html new file mode 100644 index 0000000..ddc61c2 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/index.html @@ -0,0 +1,37 @@ + + + + + + + +Generated Documentation (Untitled) + + + + + + + + +<H2> +Frame Alert</H2> + +<P> +This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client. +<BR> +Link to<A HREF="Zeichenfenster.html">Non-frame version.</A> + + + diff --git a/klasse_ Zeichenfenster/DOC/overview-tree.html b/klasse_ Zeichenfenster/DOC/overview-tree.html new file mode 100644 index 0000000..a265dda --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/overview-tree.html @@ -0,0 +1,139 @@ + + + + + + +Class Hierarchy (Zeichnen1) + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For All Packages

+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/package-frame.html b/klasse_ Zeichenfenster/DOC/package-frame.html new file mode 100644 index 0000000..42dfaab --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/package-frame.html @@ -0,0 +1,33 @@ + + + + + + + +<Unnamed> + + + + + + + + + + + +<Unnamed> + + + + +
+Classes  + +
+Zeichenfenster
+ + + + diff --git a/klasse_ Zeichenfenster/DOC/package-list b/klasse_ Zeichenfenster/DOC/package-list new file mode 100644 index 0000000..d3f5a12 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/package-list @@ -0,0 +1 @@ + diff --git a/klasse_ Zeichenfenster/DOC/package-summary.html b/klasse_ Zeichenfenster/DOC/package-summary.html new file mode 100644 index 0000000..7d1af0f --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/package-summary.html @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + +
+ +
+

+Package <Unnamed> +

+ + + + + + + + + +
+Class Summary
ZeichenfensterClass Zeichenfenster - Eine Klasse, die einfache grafische Zeichnungen + in einem Programmfenster ermöglicht.
+  + +

+

+
+
+ +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/package-tree.html b/klasse_ Zeichenfenster/DOC/package-tree.html new file mode 100644 index 0000000..158e51f --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/package-tree.html @@ -0,0 +1,140 @@ + + + + + + + Class Hierarchy (Zeichnen1) + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+
+

+Hierarchy For Package <Unnamed> +

+
+

+Class Hierarchy +

+ +
+ + + + + + + + + + + + + + + +
+ +
+ + + +
+ + + diff --git a/klasse_ Zeichenfenster/DOC/resources/INHERIT.GIF b/klasse_ Zeichenfenster/DOC/resources/INHERIT.GIF new file mode 100644 index 0000000..c814867 Binary files /dev/null and b/klasse_ Zeichenfenster/DOC/resources/INHERIT.GIF differ diff --git a/klasse_ Zeichenfenster/DOC/stylesheet.css b/klasse_ Zeichenfenster/DOC/stylesheet.css new file mode 100644 index 0000000..cbd3428 --- /dev/null +++ b/klasse_ Zeichenfenster/DOC/stylesheet.css @@ -0,0 +1,29 @@ +/* Javadoc style sheet */ + +/* Define colors, fonts and other style attributes here to override the defaults */ + +/* Page background color */ +body { background-color: #FFFFFF; color:#000000 } + +/* Headings */ +h1 { font-size: 145% } + +/* Table colors */ +.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */ +.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */ +.TableRowColor { background: #FFFFFF; color:#000000 } /* White */ + +/* Font used in left-hand frame lists */ +.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } +.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 } + +/* Navigation bar fonts and colors */ +.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */ +.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */ +.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;} +.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;} + +.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} +.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000} + diff --git a/klasse_ Zeichenfenster/README.TXT b/klasse_ Zeichenfenster/README.TXT new file mode 100644 index 0000000..4f97f4a --- /dev/null +++ b/klasse_ Zeichenfenster/README.TXT @@ -0,0 +1,12 @@ +------------------------------------------------------------------------ +This is the project README file. Here, you should describe your project. +Tell the reader (someone who does not know anything about this project) +all he/she needs to know. The comments should usually include at least: +------------------------------------------------------------------------ + +PROJECT TITLE: +PURPOSE OF PROJECT: +VERSION or DATE: +HOW TO START THIS PROJECT: +AUTHORS: +USER INSTRUCTIONS: diff --git a/klasse_ Zeichenfenster/Zeichenfenster$1.class b/klasse_ Zeichenfenster/Zeichenfenster$1.class new file mode 100644 index 0000000..2a3d10e Binary files /dev/null and b/klasse_ Zeichenfenster/Zeichenfenster$1.class differ diff --git a/klasse_ Zeichenfenster/Zeichenfenster$CanvasPane.class b/klasse_ Zeichenfenster/Zeichenfenster$CanvasPane.class new file mode 100644 index 0000000..a643819 Binary files /dev/null and b/klasse_ Zeichenfenster/Zeichenfenster$CanvasPane.class differ diff --git a/klasse_ Zeichenfenster/Zeichenfenster.class b/klasse_ Zeichenfenster/Zeichenfenster.class new file mode 100644 index 0000000..fa18090 Binary files /dev/null and b/klasse_ Zeichenfenster/Zeichenfenster.class differ diff --git a/klasse_ Zeichenfenster/Zeichenfenster.ctxt b/klasse_ Zeichenfenster/Zeichenfenster.ctxt new file mode 100644 index 0000000..80e4b65 --- /dev/null +++ b/klasse_ Zeichenfenster/Zeichenfenster.ctxt @@ -0,0 +1,133 @@ +#BlueJ class context +comment0.params=titel +comment0.target=Zeichenfenster(java.lang.String) +comment0.text=\r\n\ Erzeugt\ eine\ Zeichenfenster\ mit\ Standardma\u00DFen\ 600*500\ und\ Hintergrundfarbe\ wei\u00DF\ \r\n\ @param\ titel\ \ Titel\ des\ Fensters\ \ \ \ \ \r\n +comment1.params=titel\ breite\ hoehe +comment1.target=Zeichenfenster(java.lang.String,\ int,\ int) +comment1.text=\r\n\ Erzeugt\ ein\ Zeichenfenster\ mit\ wei\u00DFem\ Hintergrund.\r\n\ @param\ titel\ \ Fensterueberschirft\r\n\ @param\ breite\ \ Breite\ des\ Fensters\r\n\ @param\ hoehe\ \ Hoehe\ des\ Fensters\r\n +comment10.params=x\ y\ radius +comment10.target=void\ loescheKreis(int,\ int,\ int) +comment10.text=\r\n\ L\u00F6scht\ das\ Innere\ eines\ Kreises\ \r\n\ @param\ x\ x-Koordinate\ des\ Mittelpunkts\r\n\ @param\ y\ y-Koordinate\ des\ Mittelpunkts\r\n\ @param\ radius\ Kreisradius\r\n +comment11.params=shape +comment11.target=void\ zeichne(java.awt.Shape) +comment11.text=\r\n\ Zeichnet\ den\ Umriss\ eines\ Shape-Objekts.\r\n\ @param\ \ shape\ \ das\ Shape-Object,\ welches\ gezeichnet\ werden\ soll\r\n +comment12.params=shape\ farbe +comment12.target=void\ fuelle(java.awt.Shape,\ java.lang.String) +comment12.text=\r\n\ F\u00FCllt\ das\ Innere\ eines\ Shape-Objekts\ mit\ der\ angegebenen\ Farbe.\ \r\n\ @param\ \ shape\ \ das\ Shape-Objekt,\ welches\ gef\u00FCllt\ werden\ soll\ \r\n\ @param\ \ farbe\ \ F\u00FCllfarbe\ f\u00FCr\ das\ Shape-Objekt,\ erlaubt\ sind\ "weiss"\ "schwarz"\ "rot"\r\n\ "gruen"\ "blau"\ "gelb"\ "magenta"\ "cyan"\ "grau"\r\n +comment13.params=shape\ farbnr +comment13.target=void\ fuelle(java.awt.Shape,\ int) +comment13.text=\r\n\ F\u00FCllt\ das\ Innere\ eines\ Shape-Objekts\ mit\ der\ angegebenen\ Farbe.\ \r\n\ @param\ \ shape\ \ das\ Shape-Objekt,\ welches\ gef\u00FCllt\ werden\ soll\ \r\n\ @param\ \ farbnr\ \ F\u00FCllfarbnummer\ f\u00FCr\ das\ Shape-Objekt\ (0\ bis\ 8)\r\n +comment14.params=shape +comment14.target=void\ loesche(java.awt.Shape) +comment14.text=\r\n\ L\u00F6scht\ das\ Innere\ eines\ Shape-Objekts.\r\n\ @param\ \ shape\ \ das\ Shape-Object,\ welches\ gel\u00F6scht\ werden\ soll\ \r\n +comment15.params=xPos\ yPos\ breite\ hoehe +comment15.target=void\ zeichneRechteck(int,\ int,\ int,\ int) +comment15.text=\r\n\ Zeichnet\ den\ Rand\ des\ Rechtecks\ mit\ der\ aktuellen\ Farbe.\r\n\ @param\ xPos,yPos\ Koordinaten\ der\ linken\ oberen\ Ecke\ \r\n\ @param\ breite,\ hoehe\ Breite\ und\ H\u00F6he\ des\ Rechtecks\r\n +comment16.params=xPos\ yPos\ breite\ hoehe\ farbe +comment16.target=void\ fuelleRechteck(int,\ int,\ int,\ int,\ java.lang.String) +comment16.text=\r\n\ F\u00FCllt\ das\ Innere\ des\ Rechtecks\ mit\ der\ angegebenen\ Farbe.\r\n\ @param\ xPos,yPos\ Koordinaten\ der\ linken\ oberen\ Ecke\ \r\n\ @param\ breite,\ hoehe\ Breite\ und\ H\u00F6he\ des\ Rechtecks\r\n\ @param\ \ farbe\ \ F\u00FCllfarbe\ f\u00FCr\ das\ Rechteck,\ erlaubt\ sind\ "weiss"\ "schwarz"\ "rot"\r\n\ "gruen"\ "blau"\ "gelb"\ "magenta"\ "cyan"\ "grau"\r\n +comment17.params=xPos\ yPos\ breite\ hoehe\ farbnr +comment17.target=void\ fuelleRechteck(int,\ int,\ int,\ int,\ int) +comment17.text=\r\n\ F\u00FCllt\ das\ Innere\ des\ Rechtecks\ mit\ der\ angegebenen\ Farbe.\r\n\ @param\ xPos,yPos\ Koordinaten\ der\ linken\ oberen\ Ecke\ \r\n\ @param\ breite,\ hoehe\ Breite\ und\ H\u00F6he\ des\ Rechtecks\r\n\ @param\ \ farbnr\ \ F\u00FCllfarbnummer\ f\u00FCr\ das\ Rechteck\ (0\ bis\ 8)\r\n +comment18.params=xPos\ yPos\ breite\ hoehe +comment18.target=void\ loescheRechteck(int,\ int,\ int,\ int) +comment18.text=\r\n\ L\u00F6scht\ das\ Innere\ eines\ Rechtecks.\r\n\ @param\ xPos,yPos\ Koordinaten\ der\ linken\ oberen\ Ecke\ \r\n\ @param\ breite,\ hoehe\ Breite\ und\ H\u00F6he\ des\ Rechtecks\r\n +comment19.params=x1\ y1\ x2\ y2\ x3\ y3 +comment19.target=java.awt.Polygon\ gibDreieck(int,\ int,\ int,\ int,\ int,\ int) +comment2.params=titel\ breite\ hoehe\ hintergrundFarbe +comment2.target=Zeichenfenster(java.lang.String,\ int,\ int,\ java.awt.Color) +comment2.text=\r\n\ Erzeugt\ ein\ Zeichenfenster.\r\n\ @param\ titel\ \ Fensterueberschirft\r\n\ @param\ breite\ \ Breite\ des\ Fensters\r\n\ @param\ hoehe\ \ Hoehe\ des\ Fensters\r\n\ @param\ hintergrundFarbe\ \ Hintergrundfarbe\ des\ Zeichenfensters\r\n +comment20.params=x1\ y1\ x2\ y2\ x3\ y3 +comment20.target=void\ zeichneDreieck(int,\ int,\ int,\ int,\ int,\ int) +comment20.text=\r\n\ Zeichnet\ den\ Rand\ eines\ Dreiecks\ mit\ der\ aktuellen\ Farbe.\r\n\ @param\ x1,y1\ Koordinaten\ des\ ersten\ Eckpunkts\ \r\n\ @param\ x2,y2\ Koordinaten\ des\ zweiten\ Eckpunkts\ \r\n\ @param\ x3,y3\ Koordinaten\ des\ dritten\ Eckpunkts\ \r\n +comment21.params=x1\ y1\ x2\ y2\ x3\ y3\ farbe +comment21.target=void\ fuelleDreieck(int,\ int,\ int,\ int,\ int,\ int,\ java.lang.String) +comment21.text=\r\n\ F\u00FCllt\ das\ Innere\ eines\ Dreiecks\ mit\ der\ angegebenen\ Farbe.\r\n\ @param\ x1,y1\ Koordinaten\ des\ ersten\ Eckpunkts\ \r\n\ @param\ x2,y2\ Koordinaten\ des\ zweiten\ Eckpunkts\ \r\n\ @param\ x3,y3\ Koordinaten\ des\ dritten\ Eckpunkts\ \r\n\ @param\ \ farbe\ \ F\u00FCllfarbe\ f\u00FCr\ das\ Dreieck,\ erlaubt\ sind\ "weiss"\ "schwarz"\ "rot"\r\n\ "gruen"\ "blau"\ "gelb"\ "magenta"\ "cyan"\ "grau"\r\n +comment22.params=x1\ y1\ x2\ y2\ x3\ y3\ farbnr +comment22.target=void\ fuelleDreieck(int,\ int,\ int,\ int,\ int,\ int,\ int) +comment22.text=\r\n\ F\u00FCllt\ das\ Innere\ eines\ Dreiecks\ mit\ der\ angegebenen\ Farbe.\r\n\ @param\ x1,y1\ Koordinaten\ des\ ersten\ Eckpunkts\ \r\n\ @param\ x2,y2\ Koordinaten\ des\ zweiten\ Eckpunkts\ \r\n\ @param\ x3,y3\ Koordinaten\ des\ dritten\ Eckpunkts\ \r\n\ @param\ \ farbnr\ \ F\u00FCllfarbnummer\ f\u00FCr\ das\ Dreieck\ (0\ bis\ 8)\r\n +comment23.params=x1\ y1\ x2\ y2\ x3\ y3 +comment23.target=void\ loescheDreieck(int,\ int,\ int,\ int,\ int,\ int) +comment23.text=\r\n\ L\u00F6scht\ das\ Innere\ eines\ Dreicks\r\n\ @param\ x1,y1\ Koordinaten\ des\ ersten\ Eckpunkts\ \r\n\ @param\ x2,y2\ Koordinaten\ des\ zweiten\ Eckpunkts\ \r\n\ @param\ x3,y3\ Koordinaten\ des\ dritten\ Eckpunkts\ \r\n +comment24.params= +comment24.target=void\ loescheAlles() +comment24.text=\r\n\ L\u00F6scht\ den\ Inhalt\ des\ Zeichenfensters.\r\n +comment25.params=shape +comment25.target=void\ loescheRand(java.awt.Shape) +comment25.text=\r\n\ L\u00F6scht\ den\ Umriss\ eines\ Shape-Objekts.\r\n\ @param\ \ shape\ \ das\ Shape-Object,\ dessen\ Umriss\ gel\u00F6scht\ werden\ soll\ \r\n +comment26.params=bild\ x\ y +comment26.target=boolean\ zeichneBild(java.awt.Image,\ int,\ int) +comment26.text=\r\n\ Zeichnet\ ein\ Bild\ in\ das\ Zeichnenfenster\ .\r\n\ @param\ \ bild\ \ \ \ das\ anzuzeigende\ Bild\ \r\n\ @param\ \ x\ \ \ \ \ \ \ x-Koordinate\ des\ linken\ Bildrands\ \r\n\ @param\ \ y\ \ \ \ \ \ \ y-Koordinate\ des\ oberen\ Bildrands\ \r\n\ @return\ \ gibt\ eines\ booleschen\ Wert\ zur\u00FCck,\ der\ angibt,\ ob\ das\ Bild\ vollst\u00E4ndig\ geladen\ \r\n\ \ \ \ \ \ \ \ \ \ werden\ konnte\ \r\n +comment27.params=text\ x\ y +comment27.target=void\ zeichneText(java.lang.String,\ int,\ int) +comment27.text=\r\n\ Zeichnet\ einen\ Text.\r\n\ @param\ \ text\ \ \ \ die\ anzuzeigende\ Zeichenkette\ \r\n\ @param\ \ x\ \ \ \ \ \ \ x-Koordinate\ des\ linken\ Rands\ \r\n\ @param\ \ y\ \ \ \ \ \ \ y-Koordinate\ des\ oberen\ Rands\ \r\n +comment28.params=text\ x\ y +comment28.target=void\ loescheText(java.lang.String,\ int,\ int) +comment28.text=\r\n\ L\u00F6scht\ einen\ Text\ vom\ Zeichenfenster.\r\n\ @param\ \ text\ \ \ \ die\ zu\ l\u00F6schende\ Zeichenkette\ \r\n\ @param\ \ x\ \ \ \ \ \ \ x-Koordinate\ des\ linken\ Rands\ \r\n\ @param\ \ y\ \ \ \ \ \ \ y-Koordinate\ des\ oberen\ Rands\ \r\n +comment29.params=x1\ y1\ x2\ y2 +comment29.target=void\ zeichneStrecke(int,\ int,\ int,\ int) +comment29.text=\r\n\ Zeichnet\ eine\ Strecke\ ins\ Zeichenfenster.\r\n\ @param\ \ x1\ \ \ x-Koordinate\ des\ Anfangspunkts\ der\ Strecke\ \r\n\ @param\ \ y1\ \ \ y-Koordinate\ des\ Anfangspunkts\ der\ Strecke\r\n\ @param\ \ x2\ \ \ x-Koordinate\ des\ Endpunkts\ der\ Strecke\ \r\n\ @param\ \ y2\ \ \ y-Koordinate\ des\ Endpunkts\ der\ Strecke\ \ \r\n +comment3.params= +comment3.target=Zeichenfenster\ gibFenster() +comment30.params=neueFarbe +comment30.target=void\ setzeVordergrundFarbe(java.lang.String) +comment30.text=\r\n\ Setzt\ die\ Vordergrundfarbe\ des\ Zeichenfensters.\r\n\ @param\ \ neueFarbe\ \ \ neue\ Vordergrundfarbe\ \r\n +comment31.params=neueFarbe +comment31.target=void\ setzeVordergrundFarbe(java.awt.Color) +comment32.params=farbnr +comment32.target=java.awt.Color\ farbeZuColor(int) +comment33.params=farbe +comment33.target=java.awt.Color\ farbeZuColor(java.lang.String) +comment34.params=color +comment34.target=java.lang.String\ colorZuFarbe(java.awt.Color) +comment35.params= +comment35.target=java.lang.String\ gibVordergrundFarbe() +comment35.text=\r\n\ Gibt\ die\ aktuelle\ Vordergrundfarbe\ des\ Zeichenfensters\ zur\u00FCck.\r\n\ @return\ \ \ die\ aktuelle\ Vordergrundfarbe\ \r\n +comment36.params=neueFarbe +comment36.target=void\ setzeHintergrundFarbe(java.lang.String) +comment36.text=\r\n\ Setzt\ die\ Hintergrundfarbe\ des\ Zeichenfensters.\r\n\ @param\ \ neueFarbe\ \ \ neue\ Hintergrundfarbe\ \r\n +comment37.params=neueFarbe +comment37.target=void\ setzeHintergrundFarbe(java.awt.Color) +comment38.params= +comment38.target=java.lang.String\ gibHintergrundFarbe() +comment38.text=\r\n\ Gibt\ die\ aktuelle\ Hintergrundfarbe\ des\ Zeichenfensters\ zur\u00FCck.\r\n\ @return\ \ \ die\ aktuelle\ Hintergrundfarbe\ \r\n +comment39.params=neuerZeichensatz +comment39.target=void\ setzeZeichensatz(java.awt.Font) +comment39.text=\r\n\ \u00C4ndert\ den\ aktuellen\ Zeichensatz\ des\ Zeichenfensters.\r\n\ @param\ \ neuerZeichensatz\ \ \ Zeichensatz,\ der\ k\u00FCnftig\ f\u00FCr\ Zeichenkettenausgaben\ verwendet\ wird\r\n +comment4.params= +comment4.target=void\ zeige() +comment4.text=\r\n\ Macht\ das\ Zeichenfenster\ sichtbar\ bzw.\ setzt\ es\ in\ den\ Vordergrund,\r\n\ falls\ es\ bereits\ sichtbar\ ist.\r\n +comment40.params= +comment40.target=java.awt.Font\ gibZeichensatz() +comment40.text=\r\n\ Gibt\ den\ aktuellen\ Zeichensatz\ des\ Zeichenfensters\ zur\u00FCck.\r\n\ @return\ \ \ \ \ den\ aktuellen\ Zeichensatz\r\n +comment41.params=breite\ hoehe +comment41.target=void\ setzeMasse(int,\ int) +comment41.text=\r\n\ \u00C4ndert\ die\ Abmessungen\ des\ Zeichenfensters.\r\n\ @param\ \ breite\ \ \ \ neue\ Breite\ \r\n\ @param\ \ hoehe\ \ \ \ \ neue\ H\u00F6he\ \r\n +comment42.params= +comment42.target=java.awt.Dimension\ gibMasse() +comment42.text=\r\n\ Gibt\ die\ Abmessungen\ des\ Zeichenfensters\ zur\u00FCck.\r\n\ @return\ \ \ \ \ die\ aktuellen\ Abmessungen\ des\ Zeichenfensters\r\n +comment43.params=zeit +comment43.target=void\ warte(int) +comment43.text=\r\n\ Wartet\ eine\ bestimmte\ Zeit.\r\n\ Eine\ kurze\ Verz\u00F6gerung\ kann\ z.\ B.\ f\u00FCr\ Animationen\ verwendet\ werden.\r\n\ @param\ \ zeit\ \ Wartezeit\ in\ Millisekunden\ \r\n +comment44.params=element\ position +comment44.target=void\ komponenteHinzufuegen(javax.swing.JComponent,\ java.lang.String) +comment44.text=\r\n\ F\u00FCgt\ ein\ weiteres\ Steuerungselement\ in\ die\ rechte\ Steuerungsleiste\ ein.\r\n\ @param\ \ element\ \ Das\ einzuf\u00FCgende\ Steuerungselement\ muss\ aus\ JComponent\ abgeleitet\r\n\ sein.\ z.\ B.\ JButton,\ JComboBox.\ \r\n +comment45.params=titelNeu +comment45.target=void\ setzeTitel(java.lang.String) +comment45.text=\r\n\ Beschriftet\ den\ Titel\ des\ Zeichenfensters\ neu.\r\n\ @param\ \ titelNeu\ \ Text\ der\ neuen\ Fenster\u00FCberschrift\r\n +comment5.params= +comment5.target=boolean\ istSichtbar() +comment5.text=\r\n\ Gibt\ Information\ \u00FCber\ die\ Sichtbarkeit.\r\n\ @return\ \ true\ falls\ das\ Fenster\ sichtbar\ ist.\r\n +comment6.params=x\ y\ halbachseX\ halbachseY\ startWinkel\ winkel +comment6.target=void\ zeichneBogen(int,\ int,\ int,\ int,\ int,\ int) +comment6.text=\r\n\ Zeichnet\ einen\ Elipsenbogen\ (Siehe\ Graphics.drawArc)\r\n\ @param\ x\ x-Koordinate\ des\ Elipsenmittelpunkts\r\n\ @param\ y\ y-Koordinate\ des\ Elipsenmittelpunkts\r\n\ @param\ halbachseX\ Halbachse\ der\ Elipse\ in\ x-Richtung\r\n\ @param\ halbachseY\ Halbachse\ der\ Elipse\ in\ y-Richtung\r\n\ @param\ startWinkel\ Polarwinkel,\ an\ dem\ der\ Bogen\ anf\u00E4ngt\r\n\ @param\ winkel\ Polarwinkel,\ welchen\ der\ Bogen\ durchl\u00E4uft\r\n +comment7.params=x\ y\ radius +comment7.target=void\ zeichneKreis(int,\ int,\ int) +comment7.text=\r\n\ Zeichnet\ einen\ Kreis\ (Siehe\ Graphics.drawOval)\r\n\ @param\ x\ x-Koordinate\ des\ Mittelpunkts\r\n\ @param\ y\ y-Koordinate\ des\ Mittelpunkts\r\n\ @param\ radius\ Kreisradius\r\n +comment8.params=x\ y\ radius\ farbe +comment8.target=void\ fuelleKreis(int,\ int,\ int,\ java.lang.String) +comment8.text=\r\n\ F\u00FCllt\ das\ Innere\ eines\ Kreises\ mit\ der\ angegebenen\ Farbe.\ \r\n\ @param\ x\ x-Koordinate\ des\ Mittelpunkts\r\n\ @param\ y\ y-Koordinate\ des\ Mittelpunkts\r\n\ @param\ radius\ Kreisradius\r\n\ @param\ \ farbe\ \ F\u00FCllfarbe\ f\u00FCr\ den\ Kreis,\ erlaubt\ sind\ "weiss"\ "schwarz"\ "rot"\r\n\ "gruen"\ "blau"\ "gelb"\ "magenta"\ "cyan"\ "grau"\r\n +comment9.params=x\ y\ radius\ farbnr +comment9.target=void\ fuelleKreis(int,\ int,\ int,\ int) +comment9.text=\r\n\ F\u00FCllt\ das\ Innere\ eines\ Kreises\ mit\ der\ angegebenen\ Farbe.\ \r\n\ @param\ x\ x-Koordinate\ des\ Mittelpunkts\r\n\ @param\ y\ y-Koordinate\ des\ Mittelpunkts\r\n\ @param\ radius\ Kreisradius\r\n\ @param\ \ farbnr\ \ F\u00FCllfarbnummer\ f\u00FCr\ den\ Kreis\ (0\ bis\ 8)\r\n +numComments=46 diff --git a/klasse_ Zeichenfenster/Zeichenfenster.java b/klasse_ Zeichenfenster/Zeichenfenster.java new file mode 100644 index 0000000..2342de7 --- /dev/null +++ b/klasse_ Zeichenfenster/Zeichenfenster.java @@ -0,0 +1,627 @@ +import javax.swing.*; +import java.awt.*; +import java.awt.geom.*; + +/** + * Class Zeichenfenster - Eine Klasse, die einfache grafische Zeichnungen + * in einem Programmfenster ermöglicht. + * + * @author Michael Kolling (mik) + * @author Bruce Quig + * @author Christian Heidrich + * + * @version 2007.05.07 + */ + +public class Zeichenfenster +{ + private JFrame frame; + private CanvasPane canvas; + private JPanel steuerungOst,steuerungSued; + private Graphics2D graphic; + private Color backgroundColor; + private Image canvasImage; + + private static Zeichenfenster singleton; + + /** + * Erzeugt eine Zeichenfenster mit Standardmaßen 600*500 und Hintergrundfarbe weiß + * @param titel Titel des Fensters + */ + public Zeichenfenster(String titel) + { + this(titel, 600, 500, Color.white); + } + + /** + * Erzeugt ein Zeichenfenster mit weißem Hintergrund. + * @param titel Fensterueberschirft + * @param breite Breite des Fensters + * @param hoehe Hoehe des Fensters + */ + public Zeichenfenster(String titel, int breite, int hoehe) + { + this(titel, breite, hoehe, Color.white); + } + + /** + * Erzeugt ein Zeichenfenster. + * @param titel Fensterueberschirft + * @param breite Breite des Fensters + * @param hoehe Hoehe des Fensters + * @param hintergrundFarbe Hintergrundfarbe des Zeichenfensters + */ + private Zeichenfenster(String titel, int breite, int hoehe, Color hintergrundFarbe) + { + frame = new JFrame(); + canvas = new CanvasPane(); + canvas.setPreferredSize(new Dimension(breite, hoehe)); + frame.getContentPane().add(canvas,BorderLayout.CENTER); + JPanel p1=new JPanel(); + p1.setLayout(new BorderLayout()); + steuerungOst = new JPanel(); + steuerungSued = new JPanel(); + steuerungOst.setLayout(new BoxLayout(steuerungOst,BoxLayout.Y_AXIS)); + steuerungSued.setLayout(new BoxLayout(steuerungSued,BoxLayout.X_AXIS)); + p1.add(steuerungOst,BorderLayout.NORTH); + frame.getContentPane().add(p1,BorderLayout.EAST); + frame.getContentPane().add(steuerungSued,BorderLayout.SOUTH); + frame.setTitle(titel); + backgroundColor = hintergrundFarbe; + frame.pack(); + zeige(); + } + + public static Zeichenfenster gibFenster() + { + if (singleton==null){singleton=new Zeichenfenster("Das Zeichenfenster");} + singleton.zeige(); + return singleton; + } + + /** + * Macht das Zeichenfenster sichtbar bzw. setzt es in den Vordergrund, + * falls es bereits sichtbar ist. + */ + public void zeige() + { + if(graphic == null) { + // nur beim ersten Aufruf wird der Hintergrund mit der Hintergrundfarbe + // gefuellt + Dimension size = canvas.getSize(); + canvasImage = canvas.createImage(size.width, size.height); + graphic = (Graphics2D)canvasImage.getGraphics(); + graphic.setColor(backgroundColor); + graphic.fillRect(0, 0, size.width, size.height); + graphic.setColor(Color.black); + } + frame.setVisible(true); + } + + /** + * Gibt Information über die Sichtbarkeit. + * @return true falls das Fenster sichtbar ist. + */ + public boolean istSichtbar() + { + return frame.isVisible(); + } + + /** + * Zeichnet einen Elipsenbogen (Siehe Graphics.drawArc) + * @param x x-Koordinate des Elipsenmittelpunkts + * @param y y-Koordinate des Elipsenmittelpunkts + * @param halbachseX Halbachse der Elipse in x-Richtung + * @param halbachseY Halbachse der Elipse in y-Richtung + * @param startWinkel Polarwinkel, an dem der Bogen anfängt + * @param winkel Polarwinkel, welchen der Bogen durchläuft + */ + public void zeichneBogen(int x, int y, int halbachseX, int halbachseY, int startWinkel, int winkel) + { + graphic.drawArc(x-halbachseX,y-halbachseY,2*halbachseX,2*halbachseY,startWinkel,winkel); + canvas.repaint(); + } + + /** + * Zeichnet einen Kreis (Siehe Graphics.drawOval) + * @param x x-Koordinate des Mittelpunkts + * @param y y-Koordinate des Mittelpunkts + * @param radius Kreisradius + */ + public void zeichneKreis(int x, int y, int radius) + { + graphic.drawOval(x-radius,y-radius,2*radius,2*radius); + canvas.repaint(); + } + + /** + * Füllt das Innere eines Kreises mit der angegebenen Farbe. + * @param x x-Koordinate des Mittelpunkts + * @param y y-Koordinate des Mittelpunkts + * @param radius Kreisradius + * @param farbe Füllfarbe für den Kreis, erlaubt sind "weiss" "schwarz" "rot" + * "gruen" "blau" "gelb" "magenta" "cyan" "grau" + */ + public void fuelleKreis(int x, int y, int radius, String farbe) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbe)); + graphic.fillOval(x-radius,y-radius,2*radius,2*radius); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Füllt das Innere eines Kreises mit der angegebenen Farbe. + * @param x x-Koordinate des Mittelpunkts + * @param y y-Koordinate des Mittelpunkts + * @param radius Kreisradius + * @param farbnr Füllfarbnummer für den Kreis (0 bis 8) + */ + public void fuelleKreis(int x, int y, int radius, int farbnr) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbnr)); + graphic.fillOval(x-radius,y-radius,2*radius,2*radius); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Löscht das Innere eines Kreises + * @param x x-Koordinate des Mittelpunkts + * @param y y-Koordinate des Mittelpunkts + * @param radius Kreisradius + */ + public void loescheKreis(int x, int y, int radius) + { + Ellipse2D.Double circle = new Ellipse2D.Double(x-radius, y-radius, 2*radius, 2*radius); + loesche(circle); + } + + /** + * Zeichnet den Umriss eines Shape-Objekts. + * @param shape das Shape-Object, welches gezeichnet werden soll + */ + public void zeichne(Shape shape) + { + graphic.draw(shape); + canvas.repaint(); + } + + /** + * Füllt das Innere eines Shape-Objekts mit der angegebenen Farbe. + * @param shape das Shape-Objekt, welches gefüllt werden soll + * @param farbe Füllfarbe für das Shape-Objekt, erlaubt sind "weiss" "schwarz" "rot" + * "gruen" "blau" "gelb" "magenta" "cyan" "grau" + */ + public void fuelle(Shape shape, String farbe) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbe)); + graphic.fill(shape); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Füllt das Innere eines Shape-Objekts mit der angegebenen Farbe. + * @param shape das Shape-Objekt, welches gefüllt werden soll + * @param farbnr Füllfarbnummer für das Shape-Objekt (0 bis 8) + */ + public void fuelle(Shape shape, int farbnr) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbnr)); + graphic.fill(shape); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Löscht das Innere eines Shape-Objekts. + * @param shape das Shape-Object, welches gelöscht werden soll + */ + public void loesche(Shape shape) + { + Color original = graphic.getColor(); + graphic.setColor(backgroundColor); + graphic.fill(shape); // erase by filling background color + graphic.setColor(original); + canvas.repaint(); + } + + /** + * Zeichnet den Rand des Rechtecks mit der aktuellen Farbe. + * @param xPos,yPos Koordinaten der linken oberen Ecke + * @param breite, hoehe Breite und Höhe des Rechtecks + */ + public void zeichneRechteck(int xPos, int yPos, int breite, int hoehe) + { + graphic.drawRect(xPos, yPos, breite, hoehe); + canvas.repaint(); + // fill(new Rectangle(xPos, yPos, breite, hoehe)); + } + + /** + * Füllt das Innere des Rechtecks mit der angegebenen Farbe. + * @param xPos,yPos Koordinaten der linken oberen Ecke + * @param breite, hoehe Breite und Höhe des Rechtecks + * @param farbe Füllfarbe für das Rechteck, erlaubt sind "weiss" "schwarz" "rot" + * "gruen" "blau" "gelb" "magenta" "cyan" "grau" + */ + public void fuelleRechteck(int xPos, int yPos, int breite, int hoehe, String farbe) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbe)); + graphic.fillRect(xPos, yPos, breite, hoehe); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Füllt das Innere des Rechtecks mit der angegebenen Farbe. + * @param xPos,yPos Koordinaten der linken oberen Ecke + * @param breite, hoehe Breite und Höhe des Rechtecks + * @param farbnr Füllfarbnummer für das Rechteck (0 bis 8) + */ + public void fuelleRechteck(int xPos, int yPos, int breite, int hoehe, int farbnr) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbnr)); + graphic.fillRect(xPos, yPos, breite, hoehe); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Löscht das Innere eines Rechtecks. + * @param xPos,yPos Koordinaten der linken oberen Ecke + * @param breite, hoehe Breite und Höhe des Rechtecks + */ + public void loescheRechteck(int xPos, int yPos, int breite, int hoehe) + { + loesche(new Rectangle(xPos, yPos, breite, hoehe)); + } + + private Polygon gibDreieck(int x1, int y1, int x2, int y2, int x3, int y3) + { + Polygon p=new Polygon(); + p.addPoint(x1,y1); + p.addPoint(x2,y2); + p.addPoint(x3,y3); + return p; + } + + /** + * Zeichnet den Rand eines Dreiecks mit der aktuellen Farbe. + * @param x1,y1 Koordinaten des ersten Eckpunkts + * @param x2,y2 Koordinaten des zweiten Eckpunkts + * @param x3,y3 Koordinaten des dritten Eckpunkts + */ + public void zeichneDreieck(int x1, int y1, int x2, int y2, int x3, int y3) + { + graphic.drawPolygon(gibDreieck(x1, y1, x2, y2, x3, y3)); + canvas.repaint(); + } + + /** + * Füllt das Innere eines Dreiecks mit der angegebenen Farbe. + * @param x1,y1 Koordinaten des ersten Eckpunkts + * @param x2,y2 Koordinaten des zweiten Eckpunkts + * @param x3,y3 Koordinaten des dritten Eckpunkts + * @param farbe Füllfarbe für das Dreieck, erlaubt sind "weiss" "schwarz" "rot" + * "gruen" "blau" "gelb" "magenta" "cyan" "grau" + */ + public void fuelleDreieck(int x1, int y1, int x2, int y2, int x3, int y3, String farbe) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbe)); + graphic.fillPolygon(gibDreieck(x1, y1, x2, y2, x3, y3)); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Füllt das Innere eines Dreiecks mit der angegebenen Farbe. + * @param x1,y1 Koordinaten des ersten Eckpunkts + * @param x2,y2 Koordinaten des zweiten Eckpunkts + * @param x3,y3 Koordinaten des dritten Eckpunkts + * @param farbnr Füllfarbnummer für das Dreieck (0 bis 8) + */ + public void fuelleDreieck(int x1, int y1, int x2, int y2, int x3, int y3, int farbnr) + { + Color original=graphic.getColor(); + graphic.setColor(farbeZuColor(farbnr)); + graphic.fillPolygon(gibDreieck(x1, y1, x2, y2, x3, y3)); + canvas.repaint(); + graphic.setColor(original); + } + + /** + * Löscht das Innere eines Dreicks + * @param x1,y1 Koordinaten des ersten Eckpunkts + * @param x2,y2 Koordinaten des zweiten Eckpunkts + * @param x3,y3 Koordinaten des dritten Eckpunkts + */ + public void loescheDreieck(int x1, int y1, int x2, int y2, int x3, int y3) + { + loesche(gibDreieck(x1, y1, x2, y2, x3, y3)); + } + + /** + * Löscht den Inhalt des Zeichenfensters. + */ + public void loescheAlles() + { + Color original = graphic.getColor(); + graphic.setColor(backgroundColor); + Dimension size = canvas.getSize(); + graphic.fill(new Rectangle(0, 0, size.width, size.height)); + graphic.setColor(original); + canvas.repaint(); + } + + /** + * Löscht den Umriss eines Shape-Objekts. + * @param shape das Shape-Object, dessen Umriss gelöscht werden soll + */ + public void loescheRand(Shape shape) + { + Color original = graphic.getColor(); + graphic.setColor(backgroundColor); + graphic.draw(shape); // Löschen durch übermalen mit Hintergrundfarbe + graphic.setColor(original); + canvas.repaint(); + } + + /** + * Zeichnet ein Bild in das Zeichnenfenster . + * @param bild das anzuzeigende Bild + * @param x x-Koordinate des linken Bildrands + * @param y y-Koordinate des oberen Bildrands + * @return gibt eines booleschen Wert zurück, der angibt, ob das Bild vollständig geladen + * werden konnte + */ + public boolean zeichneBild(Image bild, int x, int y) + { + boolean result = graphic.drawImage(bild, x, y, null); + canvas.repaint(); + return result; + } + + /** + * Zeichnet einen Text. + * @param text die anzuzeigende Zeichenkette + * @param x x-Koordinate des linken Rands + * @param y y-Koordinate des oberen Rands + */ + public void zeichneText(String text, int x, int y) + { + graphic.drawString(text, x, y); + canvas.repaint(); + } + + /** + * Löscht einen Text vom Zeichenfenster. + * @param text die zu löschende Zeichenkette + * @param x x-Koordinate des linken Rands + * @param y y-Koordinate des oberen Rands + */ + public void loescheText(String text, int x, int y) + { + Color original = graphic.getColor(); + graphic.setColor(backgroundColor); + graphic.drawString(text, x, y); + graphic.setColor(original); + canvas.repaint(); + } + + /** + * Zeichnet eine Strecke ins Zeichenfenster. + * @param x1 x-Koordinate des Anfangspunkts der Strecke + * @param y1 y-Koordinate des Anfangspunkts der Strecke + * @param x2 x-Koordinate des Endpunkts der Strecke + * @param y2 y-Koordinate des Endpunkts der Strecke + */ + public void zeichneStrecke(int x1, int y1, int x2, int y2) + { + graphic.drawLine(x1, y1, x2, y2); + canvas.repaint(); + } + + /** + * Setzt die Vordergrundfarbe des Zeichenfensters. + * @param neueFarbe neue Vordergrundfarbe + */ + public void setzeVordergrundFarbe(String neueFarbe) + { + graphic.setColor(farbeZuColor(neueFarbe)); + } + private void setzeVordergrundFarbe(Color neueFarbe) + { + graphic.setColor(neueFarbe); + } + + private Color farbeZuColor(int farbnr) + { + switch (farbnr) + { + case 0: return Color.black; + case 1: return Color.blue; + case 2: return Color.green; + case 3: return Color.cyan; + case 4: return Color.red; + case 5: return Color.magenta; + case 6: return Color.yellow; + case 7: return Color.gray; + case 8: return Color.white; + default: return graphic.getColor(); + } + + } + + private Color farbeZuColor(String farbe) + { + if (farbe=="weiss") return Color.white; + if (farbe=="schwarz") return Color.black; + if (farbe=="rot") return Color.red; + if (farbe=="gruen") return Color.green; + if (farbe=="blau") return Color.blue; + if (farbe=="gelb") return Color.yellow; + if (farbe=="magenta") return Color.magenta; + if (farbe=="cyan") return Color.cyan; + if (farbe=="grau") return Color.gray; + return graphic.getColor(); + } + + private String colorZuFarbe(Color color) + { + if (color==Color.white) return "weiss"; + if (color==Color.black) return "schwarz"; + if (color==Color.red) return "rot"; + if (color==Color.green) return "gruen"; + if (color==Color.blue) return "blau"; + if (color==Color.yellow) return "gelb"; + if (color==Color.magenta) return "magenta"; + if (color==Color.cyan) return "cyan"; + if (color==Color.gray) return "gruen"; + return ""; + } + + /** + * Gibt die aktuelle Vordergrundfarbe des Zeichenfensters zurück. + * @return die aktuelle Vordergrundfarbe + */ + public String gibVordergrundFarbe() + { + return colorZuFarbe(graphic.getColor()); + } + //public Color gibVordergrundFarbe() + //{ + // return graphic.getColor(); + //} + + /** + * Setzt die Hintergrundfarbe des Zeichenfensters. + * @param neueFarbe neue Hintergrundfarbe + */ + public void setzeHintergrundFarbe(String neueFarbe) + { + backgroundColor = farbeZuColor(neueFarbe); + graphic.setBackground(backgroundColor); + } + private void setzeHintergrundFarbe(Color neueFarbe) + { + backgroundColor = neueFarbe; + graphic.setBackground(neueFarbe); + } + + /** + * Gibt die aktuelle Hintergrundfarbe des Zeichenfensters zurück. + * @return die aktuelle Hintergrundfarbe + */ + public String gibHintergrundFarbe() + { + return colorZuFarbe(backgroundColor); + } + //public Color gibHintergrundFarbe() + //{ + // return backgroundColor; + //} + + /** + * Ändert den aktuellen Zeichensatz des Zeichenfensters. + * @param neuerZeichensatz Zeichensatz, der künftig für Zeichenkettenausgaben verwendet wird + */ + public void setzeZeichensatz(Font neuerZeichensatz) + { + graphic.setFont(neuerZeichensatz); + } + + /** + * Gibt den aktuellen Zeichensatz des Zeichenfensters zurück. + * @return den aktuellen Zeichensatz + **/ + public Font gibZeichensatz() + { + return graphic.getFont(); + } + + /** + * Ändert die Abmessungen des Zeichenfensters. + * @param breite neue Breite + * @param hoehe neue Höhe + */ + public void setzeMasse(int breite, int hoehe) + { + canvas.setPreferredSize(new Dimension(breite, hoehe)); + Image oldImage = canvasImage; + canvasImage = canvas.createImage(breite, hoehe); + graphic = (Graphics2D)canvasImage.getGraphics(); + graphic.drawImage(oldImage, 0, 0, null); + frame.pack(); + } + + /** + * Gibt die Abmessungen des Zeichenfensters zurück. + * @return die aktuellen Abmessungen des Zeichenfensters + */ + public Dimension gibMasse() + { + return canvas.getSize(); + } + + /** + * Wartet eine bestimmte Zeit. + * Eine kurze Verzögerung kann z. B. für Animationen verwendet werden. + * @param zeit Wartezeit in Millisekunden + */ + public void warte(int zeit) + { + try + { + Thread.sleep(zeit); + } + catch (InterruptedException e) + { + // ignoring exception at the moment + } + } + + /** + * Fügt ein weiteres Steuerungselement in die rechte Steuerungsleiste ein. + * @param element Das einzufügende Steuerungselement muss aus JComponent abgeleitet + * sein. z. B. JButton, JComboBox. + */ + public void komponenteHinzufuegen(JComponent element, String position) + { + if (position=="rechts") steuerungOst.add(element); + else if (position=="unten") steuerungSued.add(element); + frame.pack(); + } + + /** + * Beschriftet den Titel des Zeichenfensters neu. + * @param titelNeu Text der neuen Fensterüberschrift + */ + public void setzeTitel(String titelNeu) + { + frame.setTitle(titelNeu); + } + + /************************************************************************ + * Nested class CanvasPane - the actual canvas component contained in the + * Canvas frame. This is essentially a JPanel with added capability to + * refresh the image drawn on it. + */ + private class CanvasPane extends JPanel + { + private static final long serialVersionUID = 20060330L; + + public void paint(Graphics g) + { + g.drawImage(canvasImage, 0, 0, null); + } + } +} diff --git a/klasse_ Zeichenfenster/package.bluej b/klasse_ Zeichenfenster/package.bluej new file mode 100644 index 0000000..e0f286e --- /dev/null +++ b/klasse_ Zeichenfenster/package.bluej @@ -0,0 +1,26 @@ +#BlueJ package file +package.editor.height=446 +package.editor.width=308 +package.editor.x=225 +package.editor.y=37 +package.numDependencies=0 +package.numTargets=1 +package.showExtends=true +package.showUses=true +project.charset=windows-1252 +readme.editor.height=519 +readme.editor.width=764 +readme.editor.x=0 +readme.editor.y=0 +target1.editor.height=740 +target1.editor.width=1040 +target1.editor.x=-8 +target1.editor.y=-8 +target1.height=50 +target1.name=Zeichenfenster +target1.naviview.expanded=true +target1.showInterface=false +target1.type=ClassTarget +target1.width=110 +target1.x=70 +target1.y=10