RobWorkProject
Static Public Member Functions | List of all members
MetricFactory Class Reference

Metric constructor functions. More...

#include <MetricFactory.hpp>

Static Public Member Functions

template<class VectorType >
static Metric< VectorType >::Ptr makeEuclidean ()
 Euclidean configuration metric. More...
 
template<class VectorType >
static Metric< VectorType >::Ptr makeWeightedEuclidean (const VectorType &weights)
 Weighted Euclidean configuration metric. More...
 
template<class VectorType >
static Metric< VectorType >::Ptr makeInfinity ()
 Infinity configuration metric. More...
 
template<class VectorType >
static Metric< VectorType >::Ptr makeWeightedInfinity (const VectorType &weights)
 Weighted infinity configuration metric. More...
 
template<class VectorType >
static Metric< VectorType >::Ptr makeMahalanobis (const boost::numeric::ublas::matrix< typename VectorType::value_type > &omega)
 Mahalanobis configuration metric. More...
 
template<class VectorType >
static Metric< VectorType >::Ptr makeManhattan ()
 Manhattan configuration metric. More...
 
template<class VectorType >
static Metric< VectorType >::Ptr makeWeightedManhattan (const VectorType &weights)
 WeightedManhattan configuration metric. More...
 
template<class T >
static Metric< Rotation3D< T > >::Ptr makeRotation3DMetric ()
 Metric computing distance between two rotations. More...
 
template<class T >
static Metric< Transform3D< T > >::Ptr makeTransform3DMetric (double linWeight, double angWeight)
 Metric computing distance between two transformations. More...
 

Detailed Description

Metric constructor functions.

The constructor functions are parameterized by a type of vector. Valid vector types include:

Member Function Documentation

◆ makeEuclidean()

static Metric<VectorType>::Ptr makeEuclidean ( )
inlinestatic

Euclidean configuration metric.

See class EuclideanMetric for details.

◆ makeInfinity()

static Metric<VectorType>::Ptr makeInfinity ( )
inlinestatic

Infinity configuration metric.

See class InfinityMetric for details.

◆ makeMahalanobis()

static Metric<VectorType>::Ptr makeMahalanobis ( const boost::numeric::ublas::matrix< typename VectorType::value_type > &  omega)
inlinestatic

Mahalanobis configuration metric.

See class MahalanobisMetric for details.

◆ makeManhattan()

static Metric<VectorType>::Ptr makeManhattan ( )
inlinestatic

Manhattan configuration metric.

See class ManhattanMetric for details.

◆ makeRotation3DMetric()

static Metric<Rotation3D<T> >::Ptr makeRotation3DMetric ( )
inlinestatic

Metric computing distance between two rotations.

The metric is defined as the angle of the rw::math::EAA of the rotation.

◆ makeTransform3DMetric()

static Metric<Transform3D<T> >::Ptr makeTransform3DMetric ( double  linWeight,
double  angWeight 
)
inlinestatic

Metric computing distance between two transformations.

The metric is defined as a weighted sum of the positional distance and the angle of the rw::math::EAA of the rotation.

Parameters
posWeight[in] Positional weight.
angWeight[in] Angular weight.

◆ makeWeightedEuclidean()

static Metric<VectorType>::Ptr makeWeightedEuclidean ( const VectorType &  weights)
inlinestatic

Weighted Euclidean configuration metric.

See class WeightedEuclideanMetric for details.

Parameters
weights[in] Weights for the metric.
Returns
Weighted Euclidean metric.

◆ makeWeightedInfinity()

static Metric<VectorType>::Ptr makeWeightedInfinity ( const VectorType &  weights)
inlinestatic

Weighted infinity configuration metric.

See class WeightedInfinity for details.

Parameters
weights[in] Weights for the metric.
Returns
Weighted infinity metric.

◆ makeWeightedManhattan()

static Metric<VectorType>::Ptr makeWeightedManhattan ( const VectorType &  weights)
inlinestatic

WeightedManhattan configuration metric.

See class WeightedManhattanMetric for details.


The documentation for this class was generated from the following file: