moveit::core::FloatingJointModel Class Reference

A floating joint. More...

`#include <floating_joint_model.h>`

Inheritance diagram for moveit::core::FloatingJointModel: [legend]

List of all members.

## Public Member Functions

virtual void computeTransform (const double *joint_values, Eigen::Affine3d &transf) const
Given the joint values for a joint, compute the corresponding transform.
virtual void computeVariablePositions (const Eigen::Affine3d &transf, double *joint_values) const
Given the transform generated by joint, compute the corresponding joint values.
virtual double distance (const double *values1, const double *values2) const
Compute the distance between two joint states of the same model (represented by the variable values)
double distanceRotation (const double *values1, const double *values2) const
Get the distance between the rotation components of two states.
double distanceTranslation (const double *values1, const double *values2) const
Get the distance between the translation components of two states.
virtual bool enforcePositionBounds (double *values, const Bounds &other_bounds) const
Force the specified values to be inside bounds and normalized. Quaternions are normalized, continuous joints are made between -Pi and Pi. Return true if changes were made.
FloatingJointModel (const std::string &name)
double getAngularDistanceWeight () const
virtual double getMaximumExtent (const Bounds &other_bounds) const
Get the extent of the state space (the maximum value distance() can ever report)
virtual unsigned int getStateSpaceDimension () const
Get the dimension of the state space that corresponds to this joint.
virtual void getVariableDefaultPositions (double *values, const Bounds &other_bounds) const
Provide a default value for the joint given the joint variable bounds. Most joints will use the default implementation provided in this base class, but the quaternion for example needs a different implementation. Enough memory is assumed to be allocated.
virtual void getVariableRandomPositions (random_numbers::RandomNumberGenerator &rng, double *values, const Bounds &other_bounds) const
Provide random values for the joint variables (within specified bounds). Enough memory is assumed to be allocated.
virtual void getVariableRandomPositionsNearBy (random_numbers::RandomNumberGenerator &rng, double *values, const Bounds &other_bounds, const double *near, const double distance) const
Provide random values for the joint variables (within specified bounds). Enough memory is assumed to be allocated.
virtual void interpolate (const double *from, const double *to, const double t, double *state) const
Computes the state that lies at time t in [0, 1] on the segment that connects from state to to state. The memory location of state is not required to be different from the memory of either from or to.
bool normalizeRotation (double *values) const
virtual bool satisfiesPositionBounds (const double *values, const Bounds &other_bounds, double margin) const
Check if the set of position values for the variables of this joint are within bounds, up to some margin.
void setAngularDistanceWeight (double weight)

## Private Attributes

double angular_distance_weight_

## Detailed Description

A floating joint.

Definition at line 48 of file floating_joint_model.h.

## Constructor & Destructor Documentation

 moveit::core::FloatingJointModel::FloatingJointModel ( const std::string & name )

Definition at line 44 of file floating_joint_model.cpp.

## Member Function Documentation

 void moveit::core::FloatingJointModel::computeTransform ( const double * joint_values, Eigen::Affine3d & transf ) const` [virtual]`

Given the joint values for a joint, compute the corresponding transform.

Implements moveit::core::JointModel.

Definition at line 217 of file floating_joint_model.cpp.

 void moveit::core::FloatingJointModel::computeVariablePositions ( const Eigen::Affine3d & transform, double * joint_values ) const` [virtual]`

Given the transform generated by joint, compute the corresponding joint values.

Implements moveit::core::JointModel.

Definition at line 223 of file floating_joint_model.cpp.

 double moveit::core::FloatingJointModel::distance ( const double * value1, const double * value2 ) const` [virtual]`

Compute the distance between two joint states of the same model (represented by the variable values)

Implements moveit::core::JointModel.

Definition at line 98 of file floating_joint_model.cpp.

 double moveit::core::FloatingJointModel::distanceRotation ( const double * values1, const double * values2 ) const

Get the distance between the rotation components of two states.

Definition at line 111 of file floating_joint_model.cpp.

 double moveit::core::FloatingJointModel::distanceTranslation ( const double * values1, const double * values2 ) const

Get the distance between the translation components of two states.

Definition at line 103 of file floating_joint_model.cpp.

 bool moveit::core::FloatingJointModel::enforcePositionBounds ( double * values, const Bounds & other_bounds ) const` [virtual]`

Force the specified values to be inside bounds and normalized. Quaternions are normalized, continuous joints are made between -Pi and Pi. Return true if changes were made.

Implements moveit::core::JointModel.

Definition at line 197 of file floating_joint_model.cpp.

 double moveit::core::FloatingJointModel::getAngularDistanceWeight ( ) const` [inline]`

Definition at line 69 of file floating_joint_model.h.

 double moveit::core::FloatingJointModel::getMaximumExtent ( const Bounds & other_bounds ) const` [virtual]`

Get the extent of the state space (the maximum value distance() can ever report)

Implements moveit::core::JointModel.

Definition at line 90 of file floating_joint_model.cpp.

 unsigned int moveit::core::FloatingJointModel::getStateSpaceDimension ( ) const` [virtual]`

Get the dimension of the state space that corresponds to this joint.

Implements moveit::core::JointModel.

Definition at line 192 of file floating_joint_model.cpp.

 void moveit::core::FloatingJointModel::getVariableDefaultPositions ( double * values, const Bounds & other_bounds ) const` [virtual]`

Provide a default value for the joint given the joint variable bounds. Most joints will use the default implementation provided in this base class, but the quaternion for example needs a different implementation. Enough memory is assumed to be allocated.

Implements moveit::core::JointModel.

Definition at line 235 of file floating_joint_model.cpp.

 void moveit::core::FloatingJointModel::getVariableRandomPositions ( random_numbers::RandomNumberGenerator & rng, double * values, const Bounds & other_bounds ) const` [virtual]`

Provide random values for the joint variables (within specified bounds). Enough memory is assumed to be allocated.

Implements moveit::core::JointModel.

Definition at line 252 of file floating_joint_model.cpp.

 void moveit::core::FloatingJointModel::getVariableRandomPositionsNearBy ( random_numbers::RandomNumberGenerator & rng, double * values, const Bounds & other_bounds, const double * near, const double distance ) const` [virtual]`

Provide random values for the joint variables (within specified bounds). Enough memory is assumed to be allocated.

Implements moveit::core::JointModel.

Definition at line 274 of file floating_joint_model.cpp.

 void moveit::core::FloatingJointModel::interpolate ( const double * from, const double * to, const double t, double * state ) const` [virtual]`

Computes the state that lies at time t in [0, 1] on the segment that connects from state to to state. The memory location of state is not required to be different from the memory of either from or to.

Implements moveit::core::JointModel.

Definition at line 120 of file floating_joint_model.cpp.

 bool moveit::core::FloatingJointModel::normalizeRotation ( double * values ) const

Normalize the quaternion (warn if norm is 0, and set to identity); Return true if any change was made

Definition at line 164 of file floating_joint_model.cpp.

 bool moveit::core::FloatingJointModel::satisfiesPositionBounds ( const double * values, const Bounds & other_bounds, double margin ) const` [virtual]`

Check if the set of position values for the variables of this joint are within bounds, up to some margin.

Implements moveit::core::JointModel.

Definition at line 150 of file floating_joint_model.cpp.

 void moveit::core::FloatingJointModel::setAngularDistanceWeight ( double weight ) ` [inline]`

Definition at line 74 of file floating_joint_model.h.

## Member Data Documentation

 double moveit::core::FloatingJointModel::angular_distance_weight_` [private]`

Definition at line 91 of file floating_joint_model.h.

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

moveit_core
Author(s): Ioan Sucan , Sachin Chitta , Acorn Pooley
autogenerated on Thu Aug 27 2015 13:58:54