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

Kreis. Mehr ...

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

Öffentliche Methoden

 Circle (double radius)
 
 Circle (double radius, Point p)
 
 Circle (double radius, double x, double y)
 
boolean contains (Point p)
 
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 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

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

Geschützte Attribute

double radius
 Radius. Mehr ...
 
- 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

Kreis.

Die Kreis Objekte verwalten die Daten eines Kreises. Sie können über den Mittelpunkt bewegt werden. Der Ort des Kreises und damit sein Rotationszentrum ist also immer der Mittelpunkt. Über ShapeGroup#add(Shape) kann man eine Form bauen die anderes Rotationszentrum besitzt.

Beispiel

class Ball extends Sprite {
private Circle ball;
... andere Attribute, Konstruktoren etc.
Shape getShape() {
return ball;
}
... //andere Methoden
boolean processCollision(Sprite b, Game game) {
if (b instanceof Ball) {
Circle ball2 = ((Ball)b).ball;
... //Berechnung des Impulses zwischen this.ball und b.ball return true;
}
... //Kollisionen mit anderen Klassen
return false;
}
... // andere Methoden
public void update(Game game) {
ball.move(...);
//ein Vektor oder zwei Werte für ΔX und ΔY um den Kreis zu bewegen
}
}

Man beachte hier insbesondere, dass ein Objekt der Klasse Ball auf private Attribute anderer Objekte der Klasse Ball zugreifen darf. Entscheidend ist für private lediglich die Klasse, ob es das selbe Objekt ist spielt keine Rolle.

Autor
Lathanda

Definiert in Zeile 46 der Datei Circle.java.

Beschreibung der Konstruktoren und Destruktoren

◆ Circle() [1/3]

de.lathanda.eos.game.geom.Circle.Circle ( double  radius)

Erzeugt einen Kreis mit Mittelpunkt (0,0)

Parameter
radiusRadius

Definiert in Zeile 58 der Datei Circle.java.

◆ Circle() [2/3]

de.lathanda.eos.game.geom.Circle.Circle ( double  radius,
Point  p 
)

Erzeugt einen Kreis.

Parameter
radiusRadius
pMittelpunkt

Definiert in Zeile 68 der Datei Circle.java.

◆ Circle() [3/3]

de.lathanda.eos.game.geom.Circle.Circle ( double  radius,
double  x,
double  y 
)

Erzeugt einen Kreis.

Parameter
radiusRadius
xx Koordinate
yy Koordinate

Definiert in Zeile 79 der Datei Circle.java.

Dokumentation der Elementfunktionen

◆ angleChanged()

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

Tut nichts, da ein Kreis sich durch drehen nicht ändert.

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

Definiert in Zeile 152 der Datei Circle.java.

◆ contains() [1/2]

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

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

Parameter
xx Koordinate
yy Koordinate
Rückgabe

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

Definiert in Zeile 118 der Datei Circle.java.

◆ contains() [2/2]

boolean de.lathanda.eos.game.geom.Circle.contains ( Point  p)

Prüft ob der Punkt p innerhalb des Kreises liegt.

Parameter
pPunkt
Rückgabe

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

Definiert in Zeile 106 der Datei Circle.java.

◆ draw()

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

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

Definiert in Zeile 156 der Datei Circle.java.

◆ getDistance()

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

Ermittel den Abstand des Punktes (x,y) vom Kreis. Negativ bedeutet der Punkt liegt innerhalb.

Parameter
xx Koordinate
yy Koordinate
Rückgabe

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

Definiert in Zeile 133 der Datei Circle.java.

◆ getOutlineType()

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

Liefert den Typ des Umrisses, dies dient der Auswahl des korrekten Kollisionsberechnugnsverfahrens.

Rückgabe

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

Definiert in Zeile 95 der Datei Circle.java.

◆ positionChanged()

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

Aktuallisiert Daten

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

Definiert in Zeile 141 der Datei Circle.java.

Dokumentation der Datenelemente

◆ radius

double de.lathanda.eos.game.geom.Circle.radius
protected

Radius.

Definiert in Zeile 51 der Datei Circle.java.


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