#include <ChallengeSpecialVision.h>
Inheritance diagram for ChallengeSpecialVision:
Public Member Functions | |
ChallengeSpecialVision (const SpecialVisionInterfaces &interfaces) | |
virtual void | execute () |
Private Member Functions | |
void | executeLearnOrientation () |
void | executeFindOrientation () |
void | executeGetOrientation () |
void | executeReset () |
ChallengeSectorData | countPixels (int x1, int x2, int y1, int y2) |
void | sort (double *a, const int number) |
double | alngleDifDegree (double a, double b) |
Private Attributes | |
double | flagAngle [MAXLEARNFLAGS] |
double | foundAngle [MAXLEARNFLAGS] |
int | flagCount |
int | foundAngleCount |
ChallengeSectorData | data [NUMBEROFSECTORS] |
Definition at line 27 of file ChallengeSpecialVision.h.
ChallengeSpecialVision::ChallengeSpecialVision | ( | const SpecialVisionInterfaces & | interfaces | ) |
Constructor
interfaces | The interfaces of the SpecialVision module |
Definition at line 17 of file ChallengeSpecialVision.cpp.
References executeReset().
double ChallengeSpecialVision::alngleDifDegree | ( | double | a, | |
double | b | |||
) | [private] |
Definition at line 243 of file ChallengeSpecialVision.cpp.
Referenced by executeFindOrientation(), executeGetOrientation(), and executeLearnOrientation().
ChallengeSectorData ChallengeSpecialVision::countPixels | ( | int | x1, | |
int | x2, | |||
int | y1, | |||
int | y2 | |||
) | [private] |
Definition at line 76 of file ChallengeSpecialVision.cpp.
References SpecialVisionInterfaces::colorTable, ColorTable::getColorClass(), Image::image, SpecialVisionInterfaces::image, int(), and ChallengeSectorData::numPixels.
void ChallengeSpecialVision::execute | ( | ) | [virtual] |
Executes the module
Implements Module.
Definition at line 46 of file ChallengeSpecialVision.cpp.
References SpecialVisionRequest::challengeFindOrientation, SpecialVisionRequest::challengeGetOrientation, SpecialVisionRequest::challengeLearnOrientation, SpecialPercept::countAngleOfPinkFlags, executeFindOrientation(), executeGetOrientation(), executeLearnOrientation(), SpecialPercept::orientation, SpecialVisionInterfaces::specialPercept, SpecialVisionRequest::specialVisionRequest, and SpecialVisionInterfaces::specialVisionRequest.
Referenced by DefaultSpecialVision::execute().
void ChallengeSpecialVision::executeFindOrientation | ( | ) | [private] |
Definition at line 138 of file ChallengeSpecialVision.cpp.
References alngleDifDegree(), SpecialPercept::angleOfPinkFlags, SpecialPercept::countAngleOfPinkFlags, foundAngle, foundAngleCount, Pose2D::getAngle(), MAXLEARNFLAGS, SpecialPercept::orientation, SpecialVisionInterfaces::robotPose, sort(), SpecialVisionInterfaces::specialPercept, and toDegrees().
Referenced by execute().
void ChallengeSpecialVision::executeGetOrientation | ( | ) | [private] |
Definition at line 173 of file ChallengeSpecialVision.cpp.
References alngleDifDegree(), flagAngle, flagCount, foundAngle, foundAngleCount, SpecialPercept::orientation, and SpecialVisionInterfaces::specialPercept.
Referenced by execute().
void ChallengeSpecialVision::executeLearnOrientation | ( | ) | [private] |
Definition at line 94 of file ChallengeSpecialVision.cpp.
References alngleDifDegree(), SpecialPercept::angleOfPinkFlags, SpecialPercept::countAngleOfPinkFlags, flagAngle, flagCount, Pose2D::getAngle(), MAXLEARNFLAGS, SpecialPercept::orientation, SpecialVisionInterfaces::robotPose, sort(), SpecialVisionInterfaces::specialPercept, and toDegrees().
Referenced by execute().
void ChallengeSpecialVision::executeReset | ( | ) | [private] |
Definition at line 23 of file ChallengeSpecialVision.cpp.
References Vector2< V >::angle(), flagAngle, flagCount, foundAngle, foundAngleCount, toDegrees(), Vector2< V >::x, and Vector2< V >::y.
Referenced by ChallengeSpecialVision().
void ChallengeSpecialVision::sort | ( | double * | a, | |
const int | number | |||
) | [private] |
Definition at line 229 of file ChallengeSpecialVision.cpp.
Referenced by executeFindOrientation(), and executeLearnOrientation().
ChallengeSectorData ChallengeSpecialVision::data[NUMBEROFSECTORS] [private] |
Definition at line 53 of file ChallengeSpecialVision.h.
double ChallengeSpecialVision::flagAngle[MAXLEARNFLAGS] [private] |
Definition at line 47 of file ChallengeSpecialVision.h.
Referenced by executeGetOrientation(), executeLearnOrientation(), and executeReset().
int ChallengeSpecialVision::flagCount [private] |
Definition at line 49 of file ChallengeSpecialVision.h.
Referenced by executeGetOrientation(), executeLearnOrientation(), and executeReset().
double ChallengeSpecialVision::foundAngle[MAXLEARNFLAGS] [private] |
Definition at line 48 of file ChallengeSpecialVision.h.
Referenced by executeFindOrientation(), executeGetOrientation(), and executeReset().
int ChallengeSpecialVision::foundAngleCount [private] |
Definition at line 50 of file ChallengeSpecialVision.h.
Referenced by executeFindOrientation(), executeGetOrientation(), and executeReset().