00001 /** 00002 * removed struct and made class out of it to make it streamable 00003 * @author <a href="mailto:Thorsten.Kerkhof@gmx.de">Thorsten Kerkhof</a> 00004 */ 00005 00006 #ifndef __MultipleBallPerceptElement_h_ 00007 #define __MultipleBallPerceptElement_h_ 00008 00009 #include "Tools/Math/Vector2.h" 00010 #include "Tools/Streams/Streamable.h" 00011 00012 00013 class MultipleBallPerceptElement : public Streamable 00014 { 00015 void serialize(In* in, Out* out) 00016 { 00017 STREAM_REGISTER_BEGIN(); 00018 STREAM(offsetOnField); 00019 STREAM(centerInImage); 00020 STREAM(radiusInImage); 00021 STREAM(reliability); 00022 STREAM(distanceError); 00023 STREAM_REGISTER_FINISH(); 00024 } 00025 00026 public: 00027 MultipleBallPerceptElement(); 00028 00029 Vector2<double> offsetOnField; 00030 00031 /** The center of the ball in image coordinates */ 00032 Vector2<double> centerInImage; 00033 00034 /** The center of the ball in image coordinates */ 00035 double radiusInImage; 00036 00037 double reliability; 00038 00039 //the error depending on the distance as needed in the GT2005/MSH2005BallLocator 00040 double distanceError; 00041 00042 void calculateDistanceValue(Vector2<double> offset); 00043 }; 00044 00045 #endif
1.3.6