Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

LinesPercept Class Reference

The class represents a percepted line on the field with its type and a Vector of points belonging to it. More...

#include <LinesPercept.h>

Inheritance diagram for LinesPercept:

Inheritance graph
[legend]
Collaboration diagram for LinesPercept:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { maxNumberOfPoints = 200 }
enum  LineType {
  field, border, yellowGoal,
  skyblueGoal, numberOfLineTypes, redRobot = numberOfLineTypes,
  blueRobot, ball, numberOfTypes,
  xField = ball, yField, boundary
}
enum  { UNDEF = -4 }
enum  CrossingCharacteristic {
  lineOnThisSide, noLineOnThisSide, dontKnow,
  numberOfCrossingCharacteristics
}
 Defines what lies on the 4 "sides" of a line crossing. More...

enum  { maxNumberOfLineCrossings = 10 }

Public Member Functions

 LinesPercept ()
 Constructor.

void reset (unsigned long frameNumber)
 The function empties the line percept.

void add (LineType type, const Vector2< int > &pointOnField, const Vector2< int > &pointInImage, double angleOnField=UNDEF, double angleInImage=UNDEF)
 The function adds a new point to the lines percept.

void serialize (In *in, Out *out)

Static Public Member Functions

const char * getCrossingCharacteristicName (CrossingCharacteristic id)

Public Attributes

LinePoints points [numberOfTypes]
unsigned long frameNumber
 The frame number when perceived.

int numberOfLineCrossings
LineCrossingPoint lineCrossings [maxNumberOfLineCrossings]
CenterCircle centerCircle
bool centerCircleFound

Detailed Description

The class represents a percepted line on the field with its type and a Vector of points belonging to it.

Definition at line 17 of file LinesPercept.h.


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
maxNumberOfPoints 

Definition at line 20 of file LinesPercept.h.

enum LinesPercept::LineType
 

Enumeration values:
field 
border 
yellowGoal 
skyblueGoal 
numberOfLineTypes 
redRobot 
blueRobot 
ball 
numberOfTypes 
xField 
yField 
boundary 

Definition at line 22 of file LinesPercept.h.

Referenced by Field::getObstacleDistance().

anonymous enum
 

Enumeration values:
UNDEF 

Definition at line 40 of file LinesPercept.h.

enum LinesPercept::CrossingCharacteristic
 

Defines what lies on the 4 "sides" of a line crossing.

Enumeration values:
lineOnThisSide 
noLineOnThisSide 
dontKnow 
numberOfCrossingCharacteristics 

Definition at line 92 of file LinesPercept.h.

anonymous enum
 

Enumeration values:
maxNumberOfLineCrossings 

Definition at line 129 of file LinesPercept.h.


Constructor & Destructor Documentation

LinesPercept::LinesPercept  )  [inline]
 

Constructor.

Definition at line 155 of file LinesPercept.h.

References reset().

Here is the call graph for this function:


Member Function Documentation

const char* LinesPercept::getCrossingCharacteristicName CrossingCharacteristic  id  )  [inline, static]
 

Definition at line 93 of file LinesPercept.h.

References dontKnow, lineOnThisSide, and noLineOnThisSide.

Referenced by LinesPercept::LineCrossingPoint::serialize().

void LinesPercept::reset unsigned long  frameNumber  ) 
 

The function empties the line percept.

Definition at line 10 of file LinesPercept.cpp.

References centerCircleFound, numberOfLineCrossings, LinesPercept::LinePoints::numberOfPoints, and numberOfTypes.

Referenced by VLCImageProcessor::execute(), SlamImageProcessor::execute(), GT2005ImageProcessor::execute(), and LinesPercept().

void LinesPercept::add LineType  type,
const Vector2< int > &  pointOnField,
const Vector2< int > &  pointInImage,
double  angleOnField = UNDEF,
double  angleInImage = UNDEF
 

The function adds a new point to the lines percept.

Parameters:
type The line type of the point.
point The point.
angle The angle of the normal of the line.

Definition at line 21 of file LinesPercept.cpp.

References maxNumberOfPoints, LinesPercept::LinePoints::numberOfPoints, LinesPercept::LinePoints::pointsInImage, and LinesPercept::LinePoints::pointsOnField.

Referenced by VLCImageProcessor::scan(), SlamImageProcessor::scan(), and GT2005ImageProcessor::scan().

void LinesPercept::serialize In in,
Out out
[inline, virtual]
 

Implements Streamable.

Definition at line 171 of file LinesPercept.h.

References centerCircle, centerCircleFound, lineCrossings, numberOfLineCrossings, STREAM, STREAM_ARRAY, STREAM_DYN_ARRAY, STREAM_REGISTER_BEGIN, and STREAM_REGISTER_FINISH.


Member Data Documentation

LinePoints LinesPercept::points[numberOfTypes]
 

Definition at line 87 of file LinesPercept.h.

Referenced by GT2005ObstaclesLocator::addLinesPercept(), GT2005PlayerSpecialist::clusterRobotLinesPercepts(), VLCImageProcessor::clusterRobots(), SlamImageProcessor::clusterRobots(), GT2004SelfLocator::execute(), VLCImageProcessor::filterLinesPercept(), SlamImageProcessor::filterLinesPercept(), GT2005ImageProcessor::filterLinesPercept(), VLCImageProcessor::filterPercepts(), SlamImageProcessor::filterPercepts(), GT2005ImageProcessor::filterPercepts(), GT2004SelfLocator::generatePoseTemplates(), SlamSampleTemplateGenerator::generateTemplates(), GT2005StableSampleTemplateGenerator::generateTemplates(), SlamSelfLocator::lineObservationUpdate(), GT2005StableSelfLocator::lineObservationUpdate(), GT2005SelfLocator::lineObservationUpdate(), VLCImageProcessor::scan(), SlamImageProcessor::scan(), and GT2005ImageProcessor::scan().

unsigned long LinesPercept::frameNumber
 

The frame number when perceived.

Definition at line 89 of file LinesPercept.h.

int LinesPercept::numberOfLineCrossings
 

Definition at line 130 of file LinesPercept.h.

Referenced by VLCLineFinder_DeterministicApproach::addCrossingsPercept(), SlamBorderFinder::addCrossingsPercept(), GT2005LineFinder_DeterministicApproach::addCrossingsPercept(), SlamSelfLocator::lineObservationUpdate(), GT2005StableSelfLocator::lineObservationUpdate(), GT2005SelfLocator::lineObservationUpdate(), reset(), and serialize().

LineCrossingPoint LinesPercept::lineCrossings[maxNumberOfLineCrossings]
 

Definition at line 131 of file LinesPercept.h.

Referenced by VLCLineFinder_DeterministicApproach::addCrossingsPercept(), SlamBorderFinder::addCrossingsPercept(), GT2005LineFinder_DeterministicApproach::addCrossingsPercept(), SlamSelfLocator::lineObservationUpdate(), GT2005StableSelfLocator::lineObservationUpdate(), GT2005SelfLocator::lineObservationUpdate(), and serialize().

CenterCircle LinesPercept::centerCircle
 

Definition at line 149 of file LinesPercept.h.

Referenced by VLCLineFinder_DeterministicApproach::addCenterCirclePercept(), GT2005LineFinder_DeterministicApproach::addCenterCirclePercept(), SlamSelfLocator::lineObservationUpdate(), GT2005SelfLocator::lineObservationUpdate(), and serialize().

bool LinesPercept::centerCircleFound
 

Definition at line 150 of file LinesPercept.h.

Referenced by VLCLineFinder_DeterministicApproach::addCenterCirclePercept(), GT2005LineFinder_DeterministicApproach::addCenterCirclePercept(), SlamSelfLocator::lineObservationUpdate(), GT2005SelfLocator::lineObservationUpdate(), reset(), and serialize().


The documentation for this class was generated from the following files:
Generated on Mon Mar 20 22:17:22 2006 for GT2005 by doxygen 1.3.6