// TorwartStellen.cpp: Implementierung der Verhaltens-Klasse VerfolgeBall
////////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include
namespace RobotOmniVerhalten {
VerfolgeBall::VerfolgeBall(RobotOmniEbene1 *e, SpielEbene0* s, VerhaltenManager& vm)
:Verhalten( "VerfolgeBall", vm),
s_BallAbstand("Ballabstand",sensorManager),
{
this->e = e;
this->s = s;
s_BallAbstand.set(10.f);
}
VerfolgeBall::~VerfolgeBall(){}
float VerfolgeBall::aktivierungsfunktion(){
return e->s_VerfolgeBall.get();
}
void VerfolgeBall::zielfunktion(){
////////////////////////////////////////////////////////////////
// Holen von Sensorwerten und Berechnen eigener Variablen
////////////////////////////////////////////////////////////////
// x ist Länge, y ist Breite
const Vec2f& halbeFeldGroesse = 0.5f * s->s_feldGroesse.get();
// Ist global Position auf dem Feld
const Vec2f& ballPos = s->s_ballPos.get();
// Ist global Position auf dem Feld
const Vec2f& robbiPos = e->s_position.get();
// Ist globaler Orientierungsvektor auf dem Feld
const Vec2f& robbiOr = e->s_orientierung.get();
// Der Strafraum geht in y-Richtung von -halbeStrafraumBreite bis halbeStrafraumBreite
const float halbeStrafraumBreite = s->s_halbeStrafraumBreite.get();
// Strecke vom Anstoßpunkt (0,0) zum Strafraum (strafraumAnfang,0) bzw (-strafraumAnfang,0)
const float strafraumAnfang = s->s_strafraumAnfang.get();
// Setzen der Aktoren
}
}
               (
geocities.com/de/liwicki_uni)                   (
geocities.com/de)