GAMS  1.4.0
gams::pose::Epsilon Class Reference

A simple bounds checker which tests whether the current position is within the given number of meters of the expected position, and whether the difference in angles is within the given number of radians. More...

#include <Epsilon.h>

Inheritance diagram for gams::pose::Epsilon:
gams::pose::PoseBounds gams::pose::PositionBounds gams::pose::OrientationBounds

Public Member Functions

 Epsilon ()
 Use default values for position and angle tolerance. More...
 
 Epsilon (double dist)
 Use default value for angle tolerance. More...
 
template<typename AngleUnits >
 Epsilon (double dist, double angle, AngleUnits u)
 Use specified tolerances, with custom angle units. More...
 
 Epsilon (double dist_tol, double radians_tol)
 Use specified tolerances. More...
 
bool check_orientation (const pose::Orientation &current, const pose::Orientation &target) const override
 Override to return whether the current orientation is within the expected bounds of target. More...
 
bool check_position (const pose::Position &current, const pose::Position &target) const override
 Override to return whether the current position is within the expected bounds of target. More...
 

Private Attributes

double dist_ = 0.1
 
double radians_ = M_PI/16
 

Detailed Description

A simple bounds checker which tests whether the current position is within the given number of meters of the expected position, and whether the difference in angles is within the given number of radians.

Definition at line 101 of file Epsilon.h.

Constructor & Destructor Documentation

◆ Epsilon() [1/4]

gams::pose::Epsilon::Epsilon ( )
inline

Use default values for position and angle tolerance.

Definition at line 106 of file Epsilon.h.

◆ Epsilon() [2/4]

gams::pose::Epsilon::Epsilon ( double  dist)
inline

Use default value for angle tolerance.

Parameters
distthe position tolerance (in meters)

Definition at line 111 of file Epsilon.h.

◆ Epsilon() [3/4]

gams::pose::Epsilon::Epsilon ( double  dist_tol,
double  radians_tol 
)
inline

Use specified tolerances.

Parameters
dist_tolthe position tolerance (in meters)
radians_tolthe angle tolerance (in radians)

Definition at line 118 of file Epsilon.h.

◆ Epsilon() [4/4]

template<typename AngleUnits >
gams::pose::Epsilon::Epsilon ( double  dist,
double  angle,
AngleUnits  u 
)
inline

Use specified tolerances, with custom angle units.

Parameters
distthe position tolerance (in meters)
anglethe angle tolerance (in units given)
uan angle units object (such as pose::radians, pose::degrees, or pose::revolutions)
Template Parameters
AngleUnitsthe units type for angle (inferred from u)

Definition at line 130 of file Epsilon.h.

Member Function Documentation

◆ check_orientation()

bool gams::pose::Epsilon::check_orientation ( const pose::Orientation current,
const pose::Orientation target 
) const
inlineoverridevirtual

Override to return whether the current orientation is within the expected bounds of target.

Implements gams::pose::OrientationBounds.

Definition at line 139 of file Epsilon.h.

◆ check_position()

bool gams::pose::Epsilon::check_position ( const pose::Position current,
const pose::Position target 
) const
inlineoverridevirtual

Override to return whether the current position is within the expected bounds of target.

Implements gams::pose::PositionBounds.

Definition at line 133 of file Epsilon.h.

Member Data Documentation

◆ dist_

double gams::pose::Epsilon::dist_ = 0.1
private

Definition at line 103 of file Epsilon.h.

◆ radians_

double gams::pose::Epsilon::radians_ = M_PI/16
private

Definition at line 103 of file Epsilon.h.


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