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

Representations/Perception/EdgesPercept.cpp

Go to the documentation of this file.
00001 /**
00002  * @file EdgesPercept.cpp
00003  *
00004  * Implementation of class EdgesPercept.
00005  * @author Dirk Thomas
00006  */
00007 
00008 #include "EdgesPercept.h"
00009 #include "Tools/Math/Common.h"
00010 
00011 void EdgesPercept::reset(unsigned long frameNumber)
00012 {
00013   this->frameNumber = frameNumber;
00014   this->numberOfEdges = 0;
00015 }
00016 
00017 void EdgesPercept::add(const Vector2<double>& point1OnField, const Vector2<double>& point2OnField,
00018                        const Vector2<int>& point1InImage, const Vector2<int>& point2InImage)
00019 {
00020   if(numberOfEdges < maxNumberOfEdges)
00021   {
00022     edges[numberOfEdges].point1OnField = point1OnField;
00023     edges[numberOfEdges].point2OnField = point2OnField;
00024     edges[numberOfEdges].point1InImage = point1InImage;
00025     edges[numberOfEdges].point2InImage = point2InImage;
00026 
00027     edges[numberOfEdges].lengthOnField = (point1OnField - point2OnField).abs();
00028     edges[numberOfEdges].lengthInImage = (point1InImage - point2InImage).abs();
00029 
00030     edges[numberOfEdges].angleOnField = normalize((point2OnField - point1OnField).angle() + pi_2);
00031     edges[numberOfEdges++].angleInImage = normalize((point2InImage - point1InImage).angle() + pi_2);
00032   }
00033 }

Generated on Mon Mar 20 22:00:03 2006 for GT2005 by doxygen 1.3.6