Simox  2.3.50
VirtualRobot::PoseQualityMeasurement Class Reference
Inheritance diagram for VirtualRobot::PoseQualityMeasurement:
VirtualRobot::PoseQualityManipulability VirtualRobot::PoseQualityExtendedManipulability

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW PoseQualityMeasurement (VirtualRobot::RobotNodeSetPtr rns)
 
 ~PoseQualityMeasurement ()
 
virtual float getPoseQuality ()
 
virtual float getPoseQuality (const Eigen::VectorXf &direction)
 
void setVerbose (bool v)
 
VirtualRobot::RobotNodeSetPtr getRNS ()
 
std::string getName ()
 A string that identifies the type of pose quality measure. More...
 
virtual bool consideringJointLimits ()
 Indicates if joint limits are considered. More...
 
virtual void setObstacleDistanceVector (const Eigen::Vector3f &directionSurfaceToObstance)
 
virtual void disableObstacleDistance ()
 

Protected Attributes

std::string name
 
VirtualRobot::RobotNodeSetPtr rns
 
bool considerObstacle
 
Eigen::Vector3f obstacleDir
 
bool verbose
 

Detailed Description

An interface definition for quality measurements of poses.

Constructor & Destructor Documentation

VirtualRobot::PoseQualityMeasurement::PoseQualityMeasurement ( VirtualRobot::RobotNodeSetPtr  rns)
VirtualRobot::PoseQualityMeasurement::~PoseQualityMeasurement ( )

Member Function Documentation

bool VirtualRobot::PoseQualityMeasurement::consideringJointLimits ( )
virtual

Indicates if joint limits are considered.

Reimplemented in VirtualRobot::PoseQualityExtendedManipulability, and VirtualRobot::PoseQualityManipulability.

void VirtualRobot::PoseQualityMeasurement::disableObstacleDistance ( )
virtual
std::string VirtualRobot::PoseQualityMeasurement::getName ( )

A string that identifies the type of pose quality measure.

float VirtualRobot::PoseQualityMeasurement::getPoseQuality ( )
virtual

The main method for determining the pose quality. The current configuration of the corresponding RNS is analyzed and the quality is returned. See derived classes for details.

Reimplemented in VirtualRobot::PoseQualityExtendedManipulability, and VirtualRobot::PoseQualityManipulability.

float VirtualRobot::PoseQualityMeasurement::getPoseQuality ( const Eigen::VectorXf &  direction)
virtual

The quality is determined for a given Cartesian direction. The current configuration of the corresponding RNS is analyzed and the quality is returned. See derived classes for details.

Parameters
directionA 3d or 6d vector with the Cartesian direction to investigate.

Reimplemented in VirtualRobot::PoseQualityExtendedManipulability, and VirtualRobot::PoseQualityManipulability.

VirtualRobot::RobotNodeSetPtr VirtualRobot::PoseQualityMeasurement::getRNS ( )

Returns the RobotNodeSte that is used for computing the manipulability.

void VirtualRobot::PoseQualityMeasurement::setObstacleDistanceVector ( const Eigen::Vector3f &  directionSurfaceToObstance)
virtual

Consider obstacles. Here, the shortest distance on the surface of the RNS to an obstacle is set (in TCP coords). This obstacle vector may be considered by any further calculations (depending on the implementation).

void VirtualRobot::PoseQualityMeasurement::setVerbose ( bool  v)

Field Documentation

bool VirtualRobot::PoseQualityMeasurement::considerObstacle
protected
std::string VirtualRobot::PoseQualityMeasurement::name
protected
Eigen::Vector3f VirtualRobot::PoseQualityMeasurement::obstacleDir
protected
VirtualRobot::RobotNodeSetPtr VirtualRobot::PoseQualityMeasurement::rns
protected
bool VirtualRobot::PoseQualityMeasurement::verbose
protected