Kapselung des Wissens ueber das Layout des Spielfeldes
Kapselung des Wissens ueber das Layout des Spielfeldes. Hier koennen absolute Positionen von Flaggen, Toren und Linien erfragt werden. Ausserdem findet sich hier die Berechnung eines Blickpunktes aus einer Reihe von relativen Positionsangaben.Sinn der Klasse ist es, die Daten eines Fussballfeldes wegzukapseln.
Quelltext
[Header | [Implementierung]
CVS Informationen zum Interface
************************************************** * * Aktueller Stand * * $RCSfile: Field.h,v $ * $Revision: 1.21 $ * $Date: 1998/08/14 13:20:32 $ * $Author: myritz $ * **************************************************
class FailedTriangulationException: public Exception
class FailedPositionCalculationException: public Exception
ViewPoint triangulateViewPoint( const Array<StableObject>& seenLines, const Array<StableObject>& seenFlags )
FailedPositionCalculationException Wird erzeugt, wenn eine
Linie aber keine Flagge gesehen wurde. (Die Blickrichtung kann bestimmt
werden, aber nicht die Position des Spielers.)
seenFlags - Die gesehenen Flaggen und Tore.
static bool isInsideField(const Vector& aPoint)
const Vector& posOfPoint(int anId)
static double fieldLength()
static double fieldWidth()
double goalWidth()
static double penaltyAreaLength()
static double penaltyAreaWidth()
static double kickoffCircleRadius()
static double computeFaceDir( const Array<StableObject>& seenLines )
Vector computePosFromFlag( const StableObject& flag, double faceDir )
static Vector theFlagPositions[]
static const Vector theGoalPositions[]
static const double theFieldLength
static const double theFieldWidth
static double theGoalWidth
static const double thePenaltyAreaLength
static const double thePenaltyAreaWidth
static const double theKickoffCircleRadius
Einleitung | Architektur | Dynamische Zusammenhänge | Referenzhandbuch | FAQ | Anhang A | Anhang B
generated by doc++