Class Shape
- All Implemented Interfaces:
Drawable
,Fillable
,Strokeable
- Direct Known Subclasses:
Arc
,Circle
,Curve
,CustomShape
,Ellipse
,Kite
,Line
,Picture
,Polygon
,Rectangle
,ShapeGroup
,Text
Alle Formen sind als Unterklassen von Shape
implementiert.
Neben den abstrakten Methoden implementieren Unterklassen mindestens zwei
Konstruktoren. Einen Konstruktor, der die Form mit vom Nutzer gegebenen
Parametern initialisiert und einen, der die Werte einer anderen Form
desselben Typs übernimmt. In der Klasse Circle
sind die Konstruktoren
beispielsweise so implementiert:
public Circle( double x, double y, double radius ) {
super(x, y);
this.radius = radius;
}
public Circle( Circle circle ) {
super(circle.x, circle.y);
copyFrom(circle);
}
Außerdem implementieren Unterklassen eine passende Object.toString()
und
eine equals(Object)
Methode.
-
Field Summary
Modifier and TypeFieldDescriptionprotected Options.Direction
Speichert den Ankerpunkt.protected double
Speichert die Rotation in Grad um den Punkt (x, y).protected double
Speichert den Skalierungsfaktor.protected double
Speichert die x-Koordinate der Form.protected double
Speichert die y-Koordinate der Form.Fields inherited from class schule.ngb.zm.BasicDrawable
fill, fillColor, stroke, strokeColor, strokeJoin, strokeType, strokeWeight, visible
Fields inherited from class schule.ngb.zm.Constants
APP_NAME, APP_VERSION, APP_VERSION_MAJ, APP_VERSION_MIN, APP_VERSION_REV, ARROW, BEVEL, BLACK, BLUE, BOLD, BROWN, canvasHeight, canvasWidth, CENTER, CLOSED, cmouseX, cmouseY, CROSS, CYAN, DARKGRAY, DASHED, DEFAULT_ANIM_RUNTIME, DEFAULT_BACKGROUND, DEFAULT_BUFFER, DEFAULT_EASING, DEFAULT_FILLCOLOR, DEFAULT_FONTSIZE, DEFAULT_FPS, DEFAULT_HEIGHT, DEFAULT_STROKECOLOR, DEFAULT_STROKEWEIGHT, DEFAULT_WIDTH, delta, DOTTED, DOWN, DOWNLEFT, DOWNRIGHT, EAST, FILLED, framesPerSecond, GRAY, GREEN, HALF_PI, HAND, ITALIC, key, KEY_0, KEY_1, KEY_2, KEY_3, KEY_4, KEY_5, KEY_6, KEY_7, KEY_8, KEY_9, KEY_A, KEY_ALT, KEY_B, KEY_BACK_SPACE, KEY_C, KEY_CANCEL, KEY_CAPS_LOCK, KEY_CLEAR, KEY_COMMA, KEY_CONTROL, KEY_D, KEY_DOWN, KEY_E, KEY_END, KEY_ENTER, KEY_EQUALS, KEY_ESCAPE, KEY_F, KEY_G, KEY_H, KEY_HOME, KEY_I, KEY_J, KEY_K, KEY_L, KEY_LEFT, KEY_M, KEY_MINUS, KEY_N, KEY_O, KEY_P, KEY_PAGE_DOWN, KEY_PAGE_UP, KEY_PAUSE, KEY_PERIOD, KEY_Q, KEY_R, KEY_RIGHT, KEY_S, KEY_SEMICOLON, KEY_SHIFT, KEY_SLASH, KEY_SPACE, KEY_T, KEY_TAB, KEY_U, KEY_UP, KEY_V, KEY_W, KEY_X, KEY_Y, KEY_Z, keyCode, keyEvent, keyPressed, LEFT, LIGHTGRAY, LINES, LINUX, MACOS, MAGENTA, MIDDLE, MITER, MOUSE1, MOUSE2, MOUSE3, mouseButton, mouseEvent, mousePressed, mouseX, mouseY, MOVE, NOMOUSE, NORTH, NORTHEAST, NORTHWEST, OPEN, ORANGE, PI, PIE, PINK, PLAIN, pmouseX, pmouseY, PURPLE, QUARTER_PI, RED, RIGHT, ROUND, runtime, screenHeight, screenWidth, SOLID, SOUTH, SOUTHEAST, SOUTHWEST, TEXT, tick, TWO_PI, UP, UPLEFT, UPRIGHT, WAIT, WEST, WHITE, WINDOWS, YELLOW
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
alignTo
(Options.Direction dir) Bewegt die Form an den Rand der Zeichenfläche in der angegebenen Richtung.void
alignTo
(Options.Direction dir, double buff) Bewegt die Form mit dem angegebenen Abstand an den Rand der Zeichenfläche in der angegebenen Richtung aus.void
alignTo
(Shape shape, Options.Direction dir) Bewegt den Ankerpunkt dieser Form in der angegebenen Richtung zum Gleichen Ankerpunkt der anderen Form.void
alignTo
(Shape shape, Options.Direction dir, double buff) Richtet die Form entlang der angegebenen Richtung an einer anderen Form aus.abstract Shape
copy()
Erzeugt eine Kopie dieser Form mit denselben Eigenschaften.void
Kopiert die Eigenschaften der angegebenen Form in diese.final void
draw
(Graphics2D graphics) Zeichnet die Form.void
draw
(Graphics2D graphics, AffineTransform transform) Zeichnet die Form, aber wendet zuvor noch eine zusätzliche Transformations- matrix an.boolean
Vergleicht die Form mit einem anderen Objekt.protected void
fillShape
(Shape shape, Graphics2D graphics) Hilfsmethode für Unterklassen, um die angegebene Form mit der aktuellen Füllung auf den Grafik-Kontext zu zeichnen.getAbsAnchorPoint
(Options.Direction anchor) Ermittelt die absoluten Koordinaten des angegebenenAnkers
.Liefert den aktuellen Ankerpunkt der Form.static Point2D.Double
getAnchorPoint
(double width, double height, Options.Direction anchor) Bestimmt die relativen Koordinaten des angegebenen Ankerpunkts basierend auf der angegebenen Breite und Höhe des umschließenden Rechtecks.getAnchorPoint
(Options.Direction anchor) Bestimmt die Koordinaten des angegebenen Ankers der Form relativ zum aktuellenAnkerpunkt
.Gibt die Begrenzungen der Form zurück.abstract double
Liefert die aktuelle Höhe dieser Form.double
Liefert die Rotation in Grad.double
getScale()
Gibt den aktuellen Skalierungsfaktor zurück.abstract Shape
getShape()
Gibt eineJava-AWT Shape
Version dieser Form zurück.abstract double
getWidth()
Liefert die aktuelle Breite dieser Form.double
getX()
Liefert die aktuelle x-Koordinate der Form.double
getY()
Liefert die aktuelle y-Koordinate der Form.void
move
(double dx, double dy) Verschiebt die Form um die angegebenen Werte entlang der Koordinatenachsen.void
moveTo
(double x, double y) Bewegt die Form an die angegebenen Koordinaten.void
Bewegt die Form an dieselben Koordinaten wie die angegebene Form.void
moveTo
(Shape shape, Options.Direction dir) Bewegt die Form zum angegebenen Ankerpunkt der angegebenen Form.void
moveTo
(Shape shape, Options.Direction dir, double buff) Bewegt den Ankerpunkt dieser Form zu einem Ankerpunkt einer anderen Form.void
nextTo
(Shape shape, Options.Direction dir) void
nextTo
(Shape shape, Options.Direction dir, double buff) Bewegt die Form neben eine andere in Richtung des angegebenen Ankerpunktes.void
rotate
(double angle) Dreht die Form um den angegebenen Winkel um ihren Ankerpunkt.void
rotate
(double x, double y, double angle) Dreht die Form um den angegebenen Drehwinkel um die angegbenen Koordinaten als Drehzentrum.void
Dreht die Form um den angegebenen Winkel um das angegebene Drehzentrum.void
rotateTo
(double angle) Setzt die Drehung der Form auf den angegebenen Winkel.void
scale
(double factor) Setzt den Skalierungsfaktor auf den angegebenen Faktor.void
scaleBy
(double factor) Skaliert die Form um den angegebenen Faktor.void
setAnchor
(Options.Direction anchor) Setzt den Ankerpunkt der Form auf die angegebene Richtung.void
setGradient
(Color from, Color to) Setzt die Füllung auf einen kreisförmigen (radialen) Farbverlauf, der im Zentrum beginnt.void
setGradient
(Color from, Color to, Options.Direction dir) Setzt die Füllung auf einen linearen Farbverlauf, der in die angegebene Richtung verläuft.void
setX
(double x) Setzt die x-Koordinate der Form.void
setY
(double y) Setzt die x-Koordinate der Form.protected void
strokeShape
(Shape shape, Graphics2D graphics) Hilfsmethode für Unterklassen, um die angegebene Form mit den aktuellen Kontureigenschaften auf den Grafik-Kontext zu zeichnen.Methods inherited from class schule.ngb.zm.BasicDrawable
getFill, getFillColor, getGradient, getStroke, getStrokeColor, getStrokeJoin, getStrokeType, getStrokeWeight, hasFillColor, hasGradient, hide, isVisible, setFill, setFillColor, setStroke, setStrokeColor, setStrokeJoin, setStrokeType, setStrokeWeight, show, toggle
Methods inherited from class schule.ngb.zm.Constants
abs, arccos, arcsin, arctan, asBool, asBool, asBool, asBool, asBool, asBool, asBool, asBool, asBool, asDouble, asDouble, asDouble, asDouble, asDouble, asDouble, asDouble, asDouble, asDouble, asInt, asInt, asInt, asInt, asInt, asInt, asInt, asInt, asInt, avg, binary, ceil, choice, choice, choice, choice, color, color, color, color, colorHsb, colorHsl, cos, degrees, distance, floor, fromBinary, fromHex, getRandom, hex, interpolate, limit, limit, loadImage, map, max, max, min, min, morph, noise, noise, noise, noise, pow, radians, random, random, random, random, random, randomBool, randomBool, randomBool, randomColor, randomGaussian, randomNiceColor, round, setSeed, shuffle, shuffle, shuffle, shuffle, sign, sin, sqrt, sum, tan
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface schule.ngb.zm.Fillable
hasFill, noFill, noGradient, resetFill, setFillColor, setFillColor, setFillColor, setFillColor, setFillColor, setGradient, setGradient
Methods inherited from interface schule.ngb.zm.Strokeable
hasStroke, noStroke, resetStroke, setStrokeColor, setStrokeColor, setStrokeColor, setStrokeColor, setStrokeColor
-
Field Details
-
x
protected double xSpeichert die x-Koordinate der Form. -
y
protected double ySpeichert die y-Koordinate der Form. -
rotation
protected double rotationSpeichert die Rotation in Grad um den Punkt (x, y). -
scale
protected double scaleSpeichert den Skalierungsfaktor. -
anchor
Speichert den Ankerpunkt.
-
-
Constructor Details
-
Shape
public Shape()Erstellt eine neue Form mit den Koordinaten(0,0)
. -
Shape
public Shape(double x, double y) Erstellt eine Form mit den angegebenen Koordinaten.- Parameters:
x
- Die x-Koordinate.y
- Die y-Koordinate.
-
-
Method Details
-
getX
public double getX()Liefert die aktuelle x-Koordinate der Form.- Returns:
- Die x-Koordinate.
-
setX
public void setX(double x) Setzt die x-Koordinate der Form.- Parameters:
x
- Die neue x-Koordinate.
-
getY
public double getY()Liefert die aktuelle y-Koordinate der Form.- Returns:
- Die y-Koordinate.
-
setY
public void setY(double y) Setzt die x-Koordinate der Form.- Parameters:
y
- Die neue y-Koordinate der Form.
-
getWidth
public abstract double getWidth()Liefert die aktuelle Breite dieser Form.Die Breite einer Form ist immer die Breite ihrer Begrenzung, bevor Drehungen und andere Transformationen auf sie angewandt wurden.
Die Begrenzungen der tatsächlich gezeichneten Form wird mit
getBounds()
abgerufen.- Returns:
- Die Breite der Form.
-
getHeight
public abstract double getHeight()Liefert die aktuelle Höhe dieser Form.Die Höhe einer Form ist immer die Höhe ihrer Begrenzung, bevor Drehungen und andere Transformationen auf sie angewandt wurden.
Die Begrenzungen der tatsächlich gezeichneten Form wird mit
getBounds()
abgerufen.- Returns:
- Die Höhe der Form.
-
getRotation
public double getRotation()Liefert die Rotation in Grad.- Returns:
- Rotation in Grad.
-
rotate
public void rotate(double angle) Dreht die Form um den angegebenen Winkel um ihren Ankerpunkt.- Parameters:
angle
- Drehwinkel in Grad.
-
rotate
Dreht die Form um den angegebenen Winkel um das angegebene Drehzentrum.- Parameters:
center
- Das Drehzentrum der Drehung.angle
- Der Drehwinkel.
-
rotate
public void rotate(double x, double y, double angle) Dreht die Form um den angegebenen Drehwinkel um die angegbenen Koordinaten als Drehzentrum.- Parameters:
x
- x-Koordiante des Drehzentrums.y
- y-Koordiante des Drehzentrums.angle
- Drehwinkel in Grad.
-
rotateTo
public void rotateTo(double angle) Setzt die Drehung der Form auf den angegebenen Winkel.- Parameters:
angle
- Drehwinkel in Grad.
-
getScale
public double getScale()Gibt den aktuellen Skalierungsfaktor zurück.- Returns:
- Der Skalierungsfaktor.
-
scale
public void scale(double factor) Setzt den Skalierungsfaktor auf den angegebenen Faktor.Bei einem Faktor größer 0 wird die Form vergrößert, bei einem Faktor kleiner 0 verkleinert. Bei negativen Werten wird die Form entlang der x- bzw. y-Achse gespiegelt.
Das Seitenverhältnis wird immer beibehalten.
- Parameters:
factor
- Der Skalierungsfaktor.
-
scaleBy
public void scaleBy(double factor) Skaliert die Form um den angegebenen Faktor.Bei einem Faktor größer 0 wird die Form vergrößert, bei einem Faktor kleiner 0 verkleinert. Bei negativen Werten wird die Form entlang der x- bzw. y-Achse gespiegelt.
Die Skalierung wird zusätzlich zur aktuellen Skalierung angewandt. Wurde die Form zuvor um den Faktor 0.5 verkleinert und wird dann um 1.5 vergrößert, dann ist die Form im Anschluss ein Drittel kleiner als zu Beginn (
0.5 * 1.5 = 0.75
).- Parameters:
factor
- Der Skalierungsfaktor.
-
getAnchor
Liefert den aktuellen Ankerpunkt der Form.- Returns:
- Der Ankerpunkt.
-
setAnchor
Setzt den Ankerpunkt der Form auf die angegebene Richtung.Jede Form hat einen Ankerpunkt, von dem aus sie gezeichnet wird. Jede
Richtung
beschreibt einen der Neun Ankerpunkte:NW────N────NE │ │ │ │ W C E │ │ │ │ SW────S────SE
Für den Ankerpunkt
Constants.CENTER
wird die Form also ausgehend von den Koordinatenx
undy
um die Hälfte der Breite nach links und rechts, sowie um die Hälfte der Höhe nach oben und unten gezeichnet. Fpr den AnkerpunktConstants.NORTHWEST
dagegen um die gesamte Breite nach rechts und die Höhe nach unten.setAnchor(CENTER) │ setAnchor(NORTHWEST) ┌───────────┐ │ │ │ │ │ │ │ │ (x,y) │ │ (x,y)─────────┐ │ │ │ │ │ │ │ │ │ │ └───────────┘ │ │ │ │ │ │ │ │ │ │ └───────────┘
Der Ankerpunkt der Form bestimmt bei Transformationen auch die Position des Drehzentrums und anderer relativer Koordinaten bezüglich der Form.
- Parameters:
anchor
- Der Ankerpunkt.
-
getAnchorPoint
Bestimmt die relativen Koordinaten des angegebenen Ankerpunkts basierend auf der angegebenen Breite und Höhe des umschließenden Rechtecks.Die Koordinaten des Ankerpunktes werden relativ zur oberen linken Ecke des Rechtecks mit der Breite
width
und der Höheheight
bestimmt. Der AnkerpunktConstants.NORTHWEST
hat daher immer das Ergebnis(0,0)
undConstants.SOUTHEAST
(width, height)
.(0,0)───(w/2,0)───(w,0) │ │ │ │ │ │ (0,h/2) (w/2,h/2) (w,h/2) │ │ │ │ │ │ (0,h)───(w/2,h)───(w,h)
- Parameters:
width
- Breite des umschließenden Rechtecks.height
- Höhe des umschließenden Rechtecks.anchor
- Gesuchter Ankerpunkt.- Returns:
- Ein
Point2D
mit den relativen Koordinaten.
-
getAnchorPoint
Bestimmt die Koordinaten des angegebenen Ankers der Form relativ zum aktuellenAnkerpunkt
.- Parameters:
anchor
- Die Richtung des Ankers.- Returns:
- Der relative Ankerpunkt.
- See Also:
-
getAbsAnchorPoint
Ermittelt die absoluten Koordinaten des angegebenenAnkers
.Die absoluten Koordinaten werden bestimmt durch die Position der Form
(x,y)
plus dierelativen Koordinaten
des Ankers. Wichtig: Die Berechnung berücksichtigt derzeit keine Rotationen und Transformationen der Form.- Parameters:
anchor
- Die Richtung des Ankers.- Returns:
- Der absolute Ankerpunkt.
- See Also:
-
copyFrom
Kopiert die Eigenschaften der angegebenen Form in diese.Unterklassen überschreiben diese Methode, um weitere Eigenschaften zu kopieren (zum Beispiel den Radius eines Kreises). Überschreibende Methoden sollten immer mit dem Aufruf
super.copyFrom(shape)
die Basiseigenschaften kopieren.Die Methode kopiert so viele Eigenschaften wie möglich von der angegebenen Form in diese. Wenn die andere Form einen anderen Typ hat, dann werden trotzdem die Basiseigenschaften (Konturlinie, Füllung, Position, Rotation, Skalierung, Sichtbarkeit und Ankerpunkt) in diese Form kopiert. Soweit sinnvoll übernehmen implementierende Unterklassen auch andere Werte. Eine
Ellipse
kopiert beispielsweise auch die Breite und Höhe einesRectangle
.Wird
null
übergeben, dann passiert nichts.- Parameters:
shape
- Die Originalform, von der kopiert wird.
-
copy
Erzeugt eine Kopie dieser Form mit denselben Eigenschaften.Unterklassen implementieren diese Methode mit dem genauen Typ der Unterklasse. In
Rectangle
sieht die Umsetzung beispielsweise so aus:public Rectangle copy() { return new Rectangle(this); }
Die Methode kann beliebig umgesetzt werden, um eine 1-zu-1-Kopie dieser Form zu erhalten. In der Regel besitzt aber jede Form einen Konstruktor, der alle Werte einer andern Form übernimmt. Die gezeigte Implementierung ist daher im Regelfall ausreichend.
- Returns:
- Eine genaue Kopie dieser Form.
-
getShape
Gibt eineJava-AWT Shape
Version dieser Form zurück. Intern werden die AWT Shapes benutzt, um sie auf denGrafikkontext
zu zeichnen.Wenn diese Form nicht durch eine AWT-Shape dargestellt wird, liefert die Methode
null
.- Returns:
- Eine Java-AWT
Shape
die diese Form repräsentiert odernull
.
-
getBounds
Gibt die Begrenzungen der Form zurück.Ein
Bounds
-Objekt beschreibt eine "Axis Aligned Bounding Box" (AABB).- Returns:
- Die Abgrenzungen der Form nach Anwendung der Transformationen.
-
move
public void move(double dx, double dy) Verschiebt die Form um die angegebenen Werte entlang der Koordinatenachsen.- Parameters:
dx
- Verschiebung entlang der x-Achse.dy
- Verschiebung entlang der y-Achse.
-
moveTo
public void moveTo(double x, double y) Bewegt die Form an die angegebenen Koordinaten.- Parameters:
x
- Die neue x-Koordinate.y
- Die neue y-Koordinate.
-
moveTo
Bewegt die Form an dieselben Koordinaten wie die angegebene Form.- Parameters:
shape
- Eine andere Form.
-
moveTo
Bewegt die Form zum angegebenen Ankerpunkt der angegebenen Form.- Parameters:
shape
- Die andere Form.dir
- Die Richtung des Ankerpunktes.- See Also:
-
moveTo
Bewegt den Ankerpunkt dieser Form zu einem Ankerpunkt einer anderen Form.Mit
buff
wird ein zusätzlicher Abstand angegeben, um den die Form entlang des Ankerpunktesanchor
verschoben wird.Ist der Anker zum Beispiel
NORTH
, dann wird die Form umbuff
oberhalb der oberen Kante der zweiten Form verschoben.Befinden sich die Formen zuvor in folgender Ausrichtung:
┌─────────┐ │ │ W B │ ┌─────┐ │ │ │ │ └─────────┘ W A │ │ │ └─────┘
bringt sie der Aufruf
B.moveTo(A, DOWN, 0)
in diese Ausrichtung:B.moveTo(A, WEST, 0) │ B.moveTo(A, WEST, 10) │ ┌─────┬───┐ │ ┌┬────┬────┐ │ │ │ │ ││ │ │ │ A B│ │ │ ││ A B │ │ │ │ │ ││ │ │ └─────┴───┘ │ └┴────┴────┘
- Parameters:
shape
- Die andere Form.dir
- Die Richtung des Ankerpunktes.buff
- Der Abstand zum angegebenen Ankerpunkt.
-
alignTo
Bewegt die Form an den Rand der Zeichenfläche in der angegebenen Richtung.- Parameters:
dir
- Die Richtung.
-
alignTo
Bewegt die Form mit dem angegebenen Abstand an den Rand der Zeichenfläche in der angegebenen Richtung aus.- Parameters:
dir
- Die Richtung.buff
- Der Abstand zum Rand.
-
alignTo
Bewegt den Ankerpunkt dieser Form in der angegebenen Richtung zum Gleichen Ankerpunkt der anderen Form.- Parameters:
shape
- Die andere Form.dir
- Die Richtung des Ankerpunktes.- See Also:
-
alignTo
Richtet die Form entlang der angegebenen Richtung an einer anderen Form aus.buff
gibt einen Abstand ab, um den diese From versetzt ausgerichtet wird.Für
Constants.DOWN
wird beispielsweise die y-Koordinate der unteren Kante dieser Form an der unteren Kante vonshape
ausgerichtet. Die x-Koordinate wird in dem Fall nicht verändert.Befinden sich die Formen beispielsweise in folgender Position:
┌─────┐ │ │ │ B │ ┌─────┐ │ │ │ │ └──D──┘ │ A │ │ │ └──D──┘
werden sie durch
alignTo
so positioniert:B.alignTo(A, EAST, 0) │ B.alignTo(A, EAST, 10) │ ┌─────┐ ┌─────┐ │ ┌─────┐ │ │ │ │ │ │ │ ┌─────┐ │ A │ │ B │ │ │ A │ │ │ │ │ │ │ │ │ │ │ B │ └──D──┘ └──D──┘ │ └──D──┘ │ │ │ └──D──┘ │
- Parameters:
shape
- Die andere Form.dir
- Die Richtung.buff
- Der Abstand.
-
nextTo
- Parameters:
shape
-dir
-- See Also:
-
nextTo
Bewegt die Form neben eine andere in Richtung des angegebenen Ankerpunktes.Im Gegensatz zu
moveTo(Shape, Options.Direction, double)
wird die Breite bzw. Höhe der Formen berücksichtigt und die Formen so platziert, dass keine Überlappungen vorhanden sind.Befinden sich die Formen zuvor in folgender Ausrichtung:
┌─────┐ │ │ W B │ ┌──────┐ │ │ │ │ └─────┘ │ A E │ │ └──────┘
bringt sie der Aufruf
B.nextTo(A, EAST, 0)
in diese Ausrichtung:B.nextTo(A, EAST, 0) │ B.nextTo(A, EAST, 10) │ ┌─────┬─────┐ │ ┌─────┐ ┌─────┐ │ │ │ │ │ │ │ │ │ A │ B │ │ │ A │ │ B │ │ │ │ │ │ │ │ │ └─────┴─────┘ │ └─────┘ └─────┘ │
- Parameters:
shape
-dir
-buff
-
-
setGradient
Description copied from interface:Fillable
Setzt die Füllung auf einen linearen Farbverlauf, der in die angegebene Richtung verläuft.- Parameters:
from
- Farbe am Startpunkt.to
- Farbe am Endpunkt.dir
- Richtung des Farbverlaufs.
-
setGradient
Description copied from interface:Fillable
Setzt die Füllung auf einen kreisförmigen (radialen) Farbverlauf, der im Zentrum beginnt.- Parameters:
from
- Farbe im Zentrum.to
- Farbe am Rand.
-
getTransform
-
draw
Zeichnet die Form.- Specified by:
draw
in interfaceDrawable
- Specified by:
draw
in classBasicDrawable
- Parameters:
graphics
-
-
draw
Zeichnet die Form, aber wendet zuvor noch eine zusätzliche Transformations- matrix an. Wird u.A. von derShapeGroup
verwendet.- Parameters:
graphics
-transform
-
-
equals
Vergleicht die Form mit einem anderen Objekt. Handelt es sich bei dem Objekt um eine andere Form, werden Position, Drehwinkel und Skalierung verglichen. Unterklassen überschreiben die Methode, um weitere Eigenschaften zu berücksichtigen.Die Eigenschaften, die durch
Fillable
undStrokeable
impliziert werden, werden nicht verglichen. -
strokeShape
Hilfsmethode für Unterklassen, um die angegebene Form mit den aktuellen Kontureigenschaften auf den Grafik-Kontext zu zeichnen. Die Methode verändert gegebenenfalls die aktuelle Farbe des Grafikobjekts und setzt sie nicht auf den Ursprungswert zurück, wie vondraw(Graphics2D)
gefordert. Dies sollte die aufrufende Unterklasse übernehmen.- Parameters:
shape
- Die zu zeichnende Java-AWT Formgraphics
- Das Grafikobjekt.
-
fillShape
Hilfsmethode für Unterklassen, um die angegebene Form mit der aktuellen Füllung auf den Grafik-Kontext zu zeichnen. Die Methode verändert gegebenenfalls die aktuelle Farbe des Grafikobjekts und setzt sie nicht auf den Ursprungswert zurück, wie vondraw(Graphics2D)
gefordert. Dies sollte die aufrufende Unterklasse übernehmen.- Parameters:
shape
- Die zu zeichnende Java-AWT Formgraphics
- Das Grafikobjekt.
-