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:

[legend]
Collaboration diagram for LinesPercept:

[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:

- Representations/Perception/LinesPercept.h
- Representations/Perception/LinesPercept.cpp