From 3ece446c2a9198b4b50323cd1b3a5182114c26df Mon Sep 17 00:00:00 2001 From: dufourj Date: Sat, 7 May 2005 01:36:46 +0000 Subject: M2ga commit bordelique du vendredi à 3h du matin avec un gars lourd --- 2005/i/robert/src/ai/ai.cc | 45 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 9 deletions(-) (limited to '2005/i/robert/src/ai/ai.cc') diff --git a/2005/i/robert/src/ai/ai.cc b/2005/i/robert/src/ai/ai.cc index 7cd50ab..b3b4f09 100644 --- a/2005/i/robert/src/ai/ai.cc +++ b/2005/i/robert/src/ai/ai.cc @@ -52,7 +52,10 @@ Ai::Ai(const Config & config) Ai::~Ai (void) { // On réinitialise - init (); + // Initialise les moteurs + motor_.init(); + // initialise la carte es + es_.init(); // On sync do { @@ -71,8 +74,8 @@ void Ai::init(void) // initialise la carte es es_.init(); // on init la vision - oVision_.init(motor_.colorState() ? Group::redSkittle : - Group::greenSkittle); +// oVision_.init(motor_.colorState() ? Group::redSkittle : +// Group::greenSkittle); while (!update()); } @@ -235,7 +238,21 @@ Ai::setAccel (int a) { motor_.setAccel (a); while (!update ()); -}/*}}}*/ +} + +/// Renvoye l'état du bouton de sélection de couleur. +bool +Ai::colorBouton (void) +{ + return motor_.colorState (); +} +/// Renvoye si l'objet devant nous est trop prêt. +bool +Ai::objectInFront (void) +{ + return es_.obsTropPres (); +} +/*}}}*/ // *** Les runs ***/*{{{*/ // Balistique non fiable. @@ -268,6 +285,16 @@ Ai::runProtectFond (void) parcourtFond (); } +void Ai::runVisionLine(void) +{ + init(); + initTest(); + do + { + scanVision(true); + basic(100); + }while(motor_.getY() < 1700); +} // Pour les Tests. void Ai::runTest (void) @@ -410,11 +437,11 @@ void Ai::scanVision (bool followLine) /// XXX mettre un argument for (int i = 0; i < (followLine ? 1 : 4) ; i++) { // On prend la photo - oVision_.takeShoot(); - // On analyse la photo - oVision_.update(); +// oVision_.takeShoot(); +// // On analyse la photo +// oVision_.update(); // On mets la liste brute dans le vector - skittles.push_back(oVision_.getSkittles()); +// skittles.push_back(oVision_.getSkittles()); // on tournicote motor_.rotation(angleDepart + ((i + 1) * M_PI/4)); } @@ -452,7 +479,7 @@ void Ai::remonteWithCam(void) { int x, y , angle, dist; Zone zeSkittles = goodSkittles_.back(); - oVision_.getLoc(zeSkittles, x, y, angle, dist); +// oVision_.getLoc(zeSkittles, x, y, angle, dist); dist -= 9; rotation(motor_.getA() + angle); setMaxSpeed(2,1); -- cgit v1.2.3