Initial sharing of project
This commit is contained in:
166
Kreis.java
Normal file
166
Kreis.java
Normal file
@@ -0,0 +1,166 @@
|
||||
|
||||
/**
|
||||
* Wrapperklasse für einen Kreis auf der Zeichenfläche.
|
||||
*
|
||||
* @author Albert Wiedemann
|
||||
* @version 1.0
|
||||
*/
|
||||
public class Kreis
|
||||
{
|
||||
/** x-Position des Kreismittelpunktes. */
|
||||
private int x;
|
||||
/** y-Position des Kreismittelpunktes. */
|
||||
private int y;
|
||||
/** Radius des Kreises. */
|
||||
private int radius;
|
||||
/** Farbe des Kreises. */
|
||||
private String farbe;
|
||||
/** Sichtbarkeit des Kreises. */
|
||||
private boolean sichtbar;
|
||||
/** Drehwinkel (mathematisch positiver Drehsinn) des Kreises in Grad. */
|
||||
private int winkel;
|
||||
/** Referenz auf das Delegate-Objekt. */
|
||||
Zeichenfenster.GrafikSymbol symbol;
|
||||
|
||||
/**
|
||||
* Der Konstruktor erzeugt das Delegate-Objekt
|
||||
*/
|
||||
Kreis ()
|
||||
{
|
||||
x = 60;
|
||||
y = 60;
|
||||
radius = 50;
|
||||
farbe = "rot";
|
||||
sichtbar = true;
|
||||
winkel = 0;
|
||||
symbol = Zeichenfenster.SymbolErzeugen(Zeichenfenster.SymbolArt.kreis);
|
||||
symbol.PositionSetzen(x - radius, y - radius);
|
||||
symbol.GrößeSetzen(radius * 2, radius * 2);
|
||||
symbol.FarbeSetzen(farbe);
|
||||
symbol.SichtbarkeitSetzen(sichtbar);
|
||||
symbol.WinkelSetzen(winkel);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setzt die Position (des Mittelpunkts) des Kreises.
|
||||
* @param x x-Position des Mittelpunkts
|
||||
* @param y y-Position des Mittelpunkts
|
||||
*/
|
||||
void PositionSetzen(int x, int y)
|
||||
{
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
symbol.PositionSetzen(x - radius, y - radius);
|
||||
}
|
||||
|
||||
/**
|
||||
* Verschiebt den Kreis um die angegebenen Werte.
|
||||
* @param deltaX Verschiebung in x-Richtung
|
||||
* @param deltaY Verschiebung in y-Richtung
|
||||
*/
|
||||
void Verschieben(int deltaX, int deltaY)
|
||||
{
|
||||
x += deltaX;
|
||||
y += deltaY;
|
||||
symbol.PositionSetzen(x - radius, y - radius);
|
||||
}
|
||||
|
||||
/**
|
||||
* Dreht den Kreis
|
||||
* @param grad Drehwinkel (mathematisch positiver Drehsinn) im Gradmass
|
||||
*/
|
||||
void Drehen(int grad)
|
||||
{
|
||||
winkel += grad;
|
||||
symbol.WinkelSetzen(winkel);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setzt den Radius des Kreises.
|
||||
* @param radius (neuer) Radius
|
||||
*/
|
||||
void RadiusSetzen (int radius)
|
||||
{
|
||||
this.radius = radius;
|
||||
symbol.GrößeSetzen(radius * 2, radius * 2);
|
||||
symbol.PositionSetzen(x - radius, y - radius);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setzt die Farbe des Kreises.
|
||||
* Erlaubte Farben sind:
|
||||
* "weiß", "weiss", "rot", "grün", "gruen", "blau", "gelb",
|
||||
* "magenta", "cyan", "hellgelb", "hellgrün", "hellgruen",
|
||||
* "orange", "braun", "grau", "schwarz"
|
||||
* Alle anderen Eingaben werden auf die Farbe schwarz abgebildet.
|
||||
* @param farbe (neue) Farbe
|
||||
*/
|
||||
void FarbeSetzen (String farbe)
|
||||
{
|
||||
this.farbe = farbe;
|
||||
symbol.FarbeSetzen(farbe);
|
||||
}
|
||||
|
||||
/**
|
||||
* Setzt den Drehwinkel des Kreises.
|
||||
* Die Winkelangabe ist in Grad,positive Werte drehen gegen den Uhrzeigersinn,
|
||||
* negative Werte drehen im Uhrzeigersinn (mathematisch positiver Drehsinn).
|
||||
* @param winkel der (neue) Drehwinkel des Kreises
|
||||
*/
|
||||
void WinkelSetzen (int winkel)
|
||||
{
|
||||
this.winkel = winkel;
|
||||
symbol.WinkelSetzen(winkel);
|
||||
}
|
||||
|
||||
/**
|
||||
* Schaltet die Sichtbarkeit des Kreises ein oder aus.
|
||||
* Erlaubte Parameterwerte: true, false
|
||||
* @param sichtbar (neue) Sichtbarkeit des Kreises
|
||||
*/
|
||||
void SichtbarkeitSetzen (boolean sichtbar)
|
||||
{
|
||||
this.sichtbar = sichtbar;
|
||||
symbol.SichtbarkeitSetzen(sichtbar);
|
||||
}
|
||||
|
||||
/**
|
||||
* Entfernt den Kreis aus dem Zeichenfenster.
|
||||
*/
|
||||
void Entfernen ()
|
||||
{
|
||||
symbol.Entfernen();
|
||||
}
|
||||
|
||||
/**
|
||||
* Bringt den Kreis eine Ebene nach vorn.
|
||||
*/
|
||||
void NachVornBringen ()
|
||||
{
|
||||
symbol.NachVornBringen();
|
||||
}
|
||||
|
||||
/**
|
||||
* Bringt den Kreis in die vorderste Ebene.
|
||||
*/
|
||||
void GanzNachVornBringen ()
|
||||
{
|
||||
symbol.GanzNachVornBringen();
|
||||
}
|
||||
|
||||
/**
|
||||
* Bringt den Kreis eine Ebene nach hinten.
|
||||
*/
|
||||
void NachHintenBringen ()
|
||||
{
|
||||
symbol.NachHintenBringen();
|
||||
}
|
||||
|
||||
/**
|
||||
* Bringt den Kreis in die hinterste Ebene.
|
||||
*/
|
||||
void GanzNachHintenBringen ()
|
||||
{
|
||||
symbol.GanzNachHintenBringen();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user