Public Member Functions | Protected Attributes | List of all members
kinematic_constraints::KinematicConstraintSet Class Reference

A class that contains many different constraints, and can check RobotState *versus the full set. A set is satisfied if and only if all constraints are satisfied. More...

#include <kinematic_constraint.h>

Public Member Functions

bool add (const moveit_msgs::Constraints &c, const robot_state::Transforms &tf)
 Add all known constraints. More...
 
bool add (const std::vector< moveit_msgs::JointConstraint > &jc)
 Add a vector of joint constraints. More...
 
bool add (const std::vector< moveit_msgs::PositionConstraint > &pc, const robot_state::Transforms &tf)
 Add a vector of position constraints. More...
 
bool add (const std::vector< moveit_msgs::OrientationConstraint > &oc, const robot_state::Transforms &tf)
 Add a vector of orientation constraints. More...
 
bool add (const std::vector< moveit_msgs::VisibilityConstraint > &vc, const robot_state::Transforms &tf)
 Add a vector of visibility constraints. More...
 
void clear ()
 Clear the stored constraints. More...
 
ConstraintEvaluationResult decide (const robot_state::RobotState &state, bool verbose=false) const
 Determines whether all constraints are satisfied by state, returning a single evaluation result. More...
 
ConstraintEvaluationResult decide (const robot_state::RobotState &state, std::vector< ConstraintEvaluationResult > &results, bool verbose=false) const
 Determines whether all constraints are satisfied by state, returning a vector of results through a parameter in addition to a summed result. More...
 
bool empty () const
 Returns whether or not there are any constraints in the set. More...
 
bool equal (const KinematicConstraintSet &other, double margin) const
 Whether or not another KinematicConstraintSet is equal to this one. More...
 
const moveit_msgs::Constraints & getAllConstraints () const
 Get all constraints in the set. More...
 
const std::vector< moveit_msgs::JointConstraint > & getJointConstraints () const
 Get all joint constraints in the set. More...
 
const std::vector< moveit_msgs::OrientationConstraint > & getOrientationConstraints () const
 Get all orientation constraints in the set. More...
 
const std::vector< moveit_msgs::PositionConstraint > & getPositionConstraints () const
 Get all position constraints in the set. More...
 
const std::vector< moveit_msgs::VisibilityConstraint > & getVisibilityConstraints () const
 Get all visibility constraints in the set. More...
 
 KinematicConstraintSet (const robot_model::RobotModelConstPtr &model)
 Constructor. More...
 
void print (std::ostream &out=std::cout) const
 Print the constraint data. More...
 
 ~KinematicConstraintSet ()
 

Protected Attributes

moveit_msgs::Constraints all_constraints_
 Messages corresponding to all internal constraints. More...
 
std::vector< moveit_msgs::JointConstraint > joint_constraints_
 Messages corresponding to all internal joint constraints. More...
 
std::vector< KinematicConstraintPtr > kinematic_constraints_
 Shared pointers to all the member constraints. More...
 
std::vector< moveit_msgs::OrientationConstraint > orientation_constraints_
 Messages corresponding to all internal orientation constraints. More...
 
std::vector< moveit_msgs::PositionConstraint > position_constraints_
 Messages corresponding to all internal position constraints. More...
 
robot_model::RobotModelConstPtr robot_model_
 The kinematic model used for by the Set. More...
 
std::vector< moveit_msgs::VisibilityConstraint > visibility_constraints_
 Messages corresponding to all internal visibility constraints. More...
 

Detailed Description

A class that contains many different constraints, and can check RobotState *versus the full set. A set is satisfied if and only if all constraints are satisfied.

The set may contain any number of different kinds of constraints. All constraints, including invalid ones, are stored internally.

Definition at line 861 of file kinematic_constraint.h.

Constructor & Destructor Documentation

kinematic_constraints::KinematicConstraintSet::KinematicConstraintSet ( const robot_model::RobotModelConstPtr &  model)
inline

Constructor.

Parameters
[in]modelThe kinematic model used for constraint evaluation

Definition at line 872 of file kinematic_constraint.h.

kinematic_constraints::KinematicConstraintSet::~KinematicConstraintSet ( )
inline

Definition at line 876 of file kinematic_constraint.h.

Member Function Documentation

bool kinematic_constraints::KinematicConstraintSet::add ( const moveit_msgs::Constraints &  c,
const robot_state::Transforms tf 
)

Add all known constraints.

Parameters
[in]cA message potentially contain vectors of constraints of add types
Returns
Whether or not all constraints could be successfully configured given the contents of the message. The KinematicConstraintSet can still be used even if the addition returns false.

Definition at line 1119 of file kinematic_constraint.cpp.

bool kinematic_constraints::KinematicConstraintSet::add ( const std::vector< moveit_msgs::JointConstraint > &  jc)

Add a vector of joint constraints.

Parameters
[in]jcA vector of joint constraints
Returns
Will return true only if all constraints are valid, and false otherwise

Definition at line 1056 of file kinematic_constraint.cpp.

bool kinematic_constraints::KinematicConstraintSet::add ( const std::vector< moveit_msgs::PositionConstraint > &  pc,
const robot_state::Transforms tf 
)

Add a vector of position constraints.

Parameters
[in]pcA vector of position constraints
Returns
Will return true only if all constraints are valid, and false otherwise

Definition at line 1071 of file kinematic_constraint.cpp.

bool kinematic_constraints::KinematicConstraintSet::add ( const std::vector< moveit_msgs::OrientationConstraint > &  oc,
const robot_state::Transforms tf 
)

Add a vector of orientation constraints.

Parameters
[in]ocA vector of orientation constraints
Returns
Will return true only if all constraints are valid, and false otherwise

Definition at line 1087 of file kinematic_constraint.cpp.

bool kinematic_constraints::KinematicConstraintSet::add ( const std::vector< moveit_msgs::VisibilityConstraint > &  vc,
const robot_state::Transforms tf 
)

Add a vector of visibility constraints.

Parameters
[in]vcA vector of visibility constraints
Returns
Will return true only if all constraints are valid, and false otherwise

Definition at line 1103 of file kinematic_constraint.cpp.

void kinematic_constraints::KinematicConstraintSet::clear ( )

Clear the stored constraints.

Definition at line 1046 of file kinematic_constraint.cpp.

ConstraintEvaluationResult kinematic_constraints::KinematicConstraintSet::decide ( const robot_state::RobotState state,
bool  verbose = false 
) const

Determines whether all constraints are satisfied by state, returning a single evaluation result.

Parameters
[in]stateThe state to test
[in]verboseWhether or not to make each constraint give debug output
Returns
A single constraint evaluation result, where it will report satisfied only if all constraints are satisfied, and with a distance that is the sum of all individual distances.

Definition at line 1128 of file kinematic_constraint.cpp.

ConstraintEvaluationResult kinematic_constraints::KinematicConstraintSet::decide ( const robot_state::RobotState state,
std::vector< ConstraintEvaluationResult > &  results,
bool  verbose = false 
) const

Determines whether all constraints are satisfied by state, returning a vector of results through a parameter in addition to a summed result.

Parameters
[in]stateThe state to test
[out]resultsThe individual results from constraint evaluation on each constraint contained in the set.
[in]verboseWhether to print the results of each constraint check.
Returns
A single constraint evaluation result, where it will report satisfied only if all constraints are satisfied, and with a distance that is the sum of all individual distances.

Definition at line 1141 of file kinematic_constraint.cpp.

bool kinematic_constraints::KinematicConstraintSet::empty ( ) const
inline

Returns whether or not there are any constraints in the set.

Returns
True if there are no constraints, otherwise false.

Definition at line 1051 of file kinematic_constraint.h.

bool kinematic_constraints::KinematicConstraintSet::equal ( const KinematicConstraintSet other,
double  margin 
) const

Whether or not another KinematicConstraintSet is equal to this one.

Equality means that for each constraint in this set there is a constraint in the other set for which equal() is true with the given margin. Multiple constraints in this set can be matched to single constraints in the other set. Some constraints in the other set may not be matched to constraints in this set.

Parameters
[in]otherThe other set against which to test
[in]marginThe margin to apply to all individual constraint equality tests
Returns
True if all constraints are matched, false otherwise

Definition at line 1164 of file kinematic_constraint.cpp.

const moveit_msgs::Constraints& kinematic_constraints::KinematicConstraintSet::getAllConstraints ( ) const
inline

Get all constraints in the set.

Returns
All constraints in a single message

Definition at line 1040 of file kinematic_constraint.h.

const std::vector<moveit_msgs::JointConstraint>& kinematic_constraints::KinematicConstraintSet::getJointConstraints ( ) const
inline

Get all joint constraints in the set.

Returns
All joint constraints

Definition at line 1018 of file kinematic_constraint.h.

const std::vector<moveit_msgs::OrientationConstraint>& kinematic_constraints::KinematicConstraintSet::getOrientationConstraints ( ) const
inline

Get all orientation constraints in the set.

Returns
All orientation constraints

Definition at line 1007 of file kinematic_constraint.h.

const std::vector<moveit_msgs::PositionConstraint>& kinematic_constraints::KinematicConstraintSet::getPositionConstraints ( ) const
inline

Get all position constraints in the set.

Returns
All position constraints

Definition at line 996 of file kinematic_constraint.h.

const std::vector<moveit_msgs::VisibilityConstraint>& kinematic_constraints::KinematicConstraintSet::getVisibilityConstraints ( ) const
inline

Get all visibility constraints in the set.

Returns
All visibility constraints

Definition at line 1029 of file kinematic_constraint.h.

void kinematic_constraints::KinematicConstraintSet::print ( std::ostream &  out = std::cout) const

Print the constraint data.

Parameters
[in]outThe file stream for printing

Definition at line 1157 of file kinematic_constraint.cpp.

Member Data Documentation

moveit_msgs::Constraints kinematic_constraints::KinematicConstraintSet::all_constraints_
protected

Messages corresponding to all internal constraints.

Definition at line 1069 of file kinematic_constraint.h.

std::vector<moveit_msgs::JointConstraint> kinematic_constraints::KinematicConstraintSet::joint_constraints_
protected

Messages corresponding to all internal joint constraints.

Definition at line 1061 of file kinematic_constraint.h.

std::vector<KinematicConstraintPtr> kinematic_constraints::KinematicConstraintSet::kinematic_constraints_
protected

Shared pointers to all the member constraints.

Definition at line 1059 of file kinematic_constraint.h.

std::vector<moveit_msgs::OrientationConstraint> kinematic_constraints::KinematicConstraintSet::orientation_constraints_
protected

Messages corresponding to all internal orientation constraints.

Definition at line 1065 of file kinematic_constraint.h.

std::vector<moveit_msgs::PositionConstraint> kinematic_constraints::KinematicConstraintSet::position_constraints_
protected

Messages corresponding to all internal position constraints.

Definition at line 1063 of file kinematic_constraint.h.

robot_model::RobotModelConstPtr kinematic_constraints::KinematicConstraintSet::robot_model_
protected

The kinematic model used for by the Set.

Definition at line 1057 of file kinematic_constraint.h.

std::vector<moveit_msgs::VisibilityConstraint> kinematic_constraints::KinematicConstraintSet::visibility_constraints_
protected

Messages corresponding to all internal visibility constraints.

Definition at line 1067 of file kinematic_constraint.h.


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


moveit_core
Author(s): Ioan Sucan , Sachin Chitta , Acorn Pooley
autogenerated on Sun Oct 18 2020 13:16:34