MRPT  2.0.5
mrpt::poses::SO_average< 2 > Class Template Reference

## Detailed Description

### template<> class mrpt::poses::SO_average< 2 >

Computes weighted and un-weighted averages of SO(2) orientations.

Add values to average with append(), when done call get_average(). Use clear() to reset the accumulator and start a new average computation. Theoretical base: Average on SO(2) manifolds is computed by averaging the corresponding 2D points, then projecting the result back to the closest-point in the manifold. Shortly explained in these slides

Note
Class introduced in MRPT 1.3.1
SE_traits

Definition at line 41 of file SO_SE_average.h.

`#include <mrpt/poses/SO_SE_average.h>`

## Public Member Functions

SO_average ()
Constructor. More...

void clear ()
Resets the accumulator. More...

void append (const double orientation_rad, const double weight)

double get_average () const
Returns the average orientation (radians). More...

## Public Attributes

bool enable_exception_on_undeterminate {false}
(Default=false) Set to true if you want to raise an exception on undetermined average values. More...

## Private Attributes

double m_count {0}

double m_accum_x {0}

double m_accum_y {0}

## ◆ SO_average()

 mrpt::poses::SO_average< 2 >::SO_average ( )

Constructor.

## ◆ append() [1/2]

 void mrpt::poses::SO_average< 2 >::append ( const double orientation_rad )

get_average

Referenced by run_test_so2_avrg().

Here is the caller graph for this function:

## ◆ append() [2/2]

 void mrpt::poses::SO_average< 2 >::append ( const double orientation_rad, const double weight )

get_average

## ◆ clear()

 void mrpt::poses::SO_average< 2 >::clear ( )

Resets the accumulator.

## ◆ get_average()

 double mrpt::poses::SO_average< 2 >::get_average ( ) const

Exceptions
 std::logic_error If no data point were inserted. std::runtime_error Upon undeterminate average value (ie the average lays exactly on the origin point) and enable_exception_on_undeterminate is set to true (otherwise, the 0 orientation would be returned)
append

Referenced by run_test_so2_avrg().

Here is the caller graph for this function:

## ◆ enable_exception_on_undeterminate

 bool mrpt::poses::SO_average< 2 >::enable_exception_on_undeterminate {false}

(Default=false) Set to true if you want to raise an exception on undetermined average values.

Definition at line 63 of file SO_SE_average.h.

## ◆ m_accum_x

 double mrpt::poses::SO_average< 2 >::m_accum_x {0}
private

Definition at line 67 of file SO_SE_average.h.

## ◆ m_accum_y

 double mrpt::poses::SO_average< 2 >::m_accum_y {0}
private

Definition at line 67 of file SO_SE_average.h.

## ◆ m_count

 double mrpt::poses::SO_average< 2 >::m_count {0}
private

Definition at line 66 of file SO_SE_average.h.

 Page generated by Doxygen 1.8.14 for MRPT 2.0.5 Git: e84511500 Thu Jul 2 23:53:34 2020 +0200 at vie jul 3 00:00:10 CEST 2020 