EOS 2  1.1.0
Einfache Objektbasierte Sprache
Öffentliche Methoden | Geschützte Methoden | Aufstellung aller Elemente
de.lathanda.eos.game.geom.Polygon Klassenreferenz

Polygon. Mehr ...

Klassendiagramm für de.lathanda.eos.game.geom.Polygon:
Inheritance graph
[Legende]

Öffentliche Methoden

 Polygon (double[] x, double[] y)
 
 Polygon (Polygon poly)
 
final void setVertices (double[] x, double[] y)
 
boolean contains (double x, double y)
 
double getDistance (double x, double y)
 
void draw (Picture picture)
 
- Öffentliche Methoden geerbt von de.lathanda.eos.game.geom.Shape
Point getCenter ()
 
void setSprite (Sprite sprite)
 
Integer getID ()
 
Sprite getSprite ()
 
void setAngle (double angle)
 
double getAngle ()
 
void rotate (double angle)
 
double getLeft ()
 
double getRight ()
 
double getBottom ()
 
double getTop ()
 
double getWidth ()
 
double getHeight ()
 
int compareTo (Shape o)
 
boolean contains (Point p)
 
boolean intersects (Shape b)
 
double distance (Shape b)
 
final double getDistance (Point p)
 
double getX ()
 
double getY ()
 
void moveTo (double x, double y)
 
void moveTo (Point p)
 
void move (double dX, double dY)
 
void move (Vector v)
 
void move (double length)
 
String toString ()
 

Geschützte Methoden

 Polygon ()
 
Types getOutlineType ()
 
void positionChanged ()
 
void angleChanged ()
 
- Geschützte Methoden geerbt von de.lathanda.eos.game.geom.Shape
 Shape ()
 

Weitere Geerbte Elemente

- Geschützte Attribute geerbt von de.lathanda.eos.game.geom.Shape
double left
 Linke Grenze. Mehr ...
 
double bottom
 Untere Grenze. Mehr ...
 
double right
 Rechte Grenze. Mehr ...
 
double top
 Obere Grenze. Mehr ...
 
double angle
 Drehwinkel. Mehr ...
 
Point p
 Ort. Mehr ...
 
Integer id
 ID des zugehörigen Weltobjekts. Mehr ...
 
Sprite sprite
 Zugehöriges Weltobjekt. Mehr ...
 

Ausführliche Beschreibung

Polygon.

Umriss eines konvexen Polygons (Ohne Einbuchtungen). Um Einbuchtungen zu realisieren muss man eine Umrissgruppe bauen (ShapeGroup).

Beispiel

double[] x = new double[] { -6, 5, -6 };
double[] y = new double[] { 4, 0, -4 };
dreieck = new Polygon(x, y);

übersetzt ist dies die Punktfolge (-6, 4) -> (5, 0) -> (-6, -4) -> Anfang

Tritt beim Erzeugen eines Polygons ein Fehler auf kann dies im Grunde an folgenden Ursachen liegen.

Das Innere liegt auf der rechten Seite der Punktkette. Diese Annahme ist sehr wichtig für die Erkennung von Kollisionen.

Autor
Lathanda

Definiert in Zeile 35 der Datei Polygon.java.

Beschreibung der Konstruktoren und Destruktoren

◆ Polygon() [1/3]

de.lathanda.eos.game.geom.Polygon.Polygon ( )
protected

Leeres Polygon, Daten müssen nachträglich gesetzt werden

Definiert in Zeile 66 der Datei Polygon.java.

◆ Polygon() [2/3]

de.lathanda.eos.game.geom.Polygon.Polygon ( double[]  x,
double[]  y 
)

Erzeugt ein konvexes Polygon mit den Ecken im Uhrzeigersinn. Wenn die Ecken nicht konvex oder nicht im Uhrzeigersinn sind, wird eine Laufzeitausnahme ausgelöst.

Parameter
xx Koordinaten
yy Koordinaten

Definiert in Zeile 78 der Datei Polygon.java.

◆ Polygon() [3/3]

de.lathanda.eos.game.geom.Polygon.Polygon ( Polygon  poly)

Erzeugt eine Kopie

Parameter
polyOriginal

Definiert in Zeile 88 der Datei Polygon.java.

Dokumentation der Elementfunktionen

◆ angleChanged()

void de.lathanda.eos.game.geom.Polygon.angleChanged ( )
protected

Aktuallisiert Daten

Erneute Implementation von de.lathanda.eos.game.geom.Shape.

Definiert in Zeile 239 der Datei Polygon.java.

◆ contains()

boolean de.lathanda.eos.game.geom.Polygon.contains ( double  x,
double  y 
)

Prüft ob der Punkt (x,y) innerhalb des Polygons liegt.

Parameter
xx Koordinate
yy Koordinate
Rückgabe
Wahr, wenn (x,y) innerhalb des Polygons liegt

Erneute Implementation von de.lathanda.eos.game.geom.Shape.

Definiert in Zeile 174 der Datei Polygon.java.

◆ draw()

void de.lathanda.eos.game.geom.Polygon.draw ( Picture  picture)

Erneute Implementation von de.lathanda.eos.game.geom.Shape.

Definiert in Zeile 244 der Datei Polygon.java.

◆ getDistance()

double de.lathanda.eos.game.geom.Polygon.getDistance ( double  x,
double  y 
)

Berechnet den Abstand zwischen dem Polygon und dem Punkt. Ein negativer Wert bedeutet, dass der Punkt innerhalb liegt mit dem entsprechendem Abstand zum Rand.

Parameter
xx Koordinate
yy Koordinate
Rückgabe
Abstand zwischen dem Punkt und dem Polygon

Erneute Implementation von de.lathanda.eos.game.geom.Shape.

Definiert in Zeile 200 der Datei Polygon.java.

◆ getOutlineType()

Types de.lathanda.eos.game.geom.Polygon.getOutlineType ( )
protected

Art der Form, für die Auswahl der Algorithmen

Rückgabe
Art der Form

Erneute Implementation von de.lathanda.eos.game.geom.Shape.

Erneute Implementation in de.lathanda.eos.game.geom.Rectangle.

Definiert in Zeile 129 der Datei Polygon.java.

◆ positionChanged()

void de.lathanda.eos.game.geom.Polygon.positionChanged ( )
protected

Aktuallisiert Daten

Erneute Implementation von de.lathanda.eos.game.geom.Shape.

Definiert in Zeile 232 der Datei Polygon.java.

◆ setVertices()

final void de.lathanda.eos.game.geom.Polygon.setVertices ( double[]  x,
double[]  y 
)

Setzt neue Ecken im Uhrzeigersinn. Wenn die Ecken nicht konvex oder nicht im Uhrzeigersinn sind, wird eine Laufzeitausnahme ausgelöst.

Parameter
xx Koordinaten
yy Koordinaten

Definiert in Zeile 101 der Datei Polygon.java.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:
Impressum