PPL API Reference
Overview Core Algorithm Abstractions Utilities Parallel Methods
Modules Class Hierarchy Classes Functions
Todo List Bug List Dead Code
List of all members
CSpaceConstraint Class Reference

Public Member Functions

Construction
 CSpaceConstraint (Robot *const _r, const Cfg &_c)
 
 CSpaceConstraint (Robot *const _r, XMLNode &_node)
 
 CSpaceConstraint (Robot *const _r, std::string _pointString, std::string _bbxString)
 
virtual ~CSpaceConstraint ()
 
virtual std::unique_ptr< ConstraintClone () const override
 
Constraint Interface
virtual const BoundaryGetBoundary () const override
 
virtual bool Satisfied (const Cfg &_c) const override
 
Constraint Interface
virtual void SetRobot (Robot *const _r)
 

Static Public Member Functions

Construction
static std::unique_ptr< ConstraintFactory (Robot *const _r, XMLNode &_node)
 

Protected Attributes

Internal State
std::unique_ptr< Boundarym_boundary
 The boundary for this constraint.
 
Internal State
Robotm_robot {nullptr}
 The subject of this constraint.
 

Detailed Description

A c-space boundary constraint, mainly provided as a convenience interface for BoundaryConstraint.

Constructor & Destructor Documentation

◆ CSpaceConstraint() [1/3]

CSpaceConstraint::CSpaceConstraint ( Robot *const  _r,
const Cfg _c 
)
explicit

Construct a constraint from a specific configuration.

Parameters
_rThe robot to constrain.
_cThe single configuration for _r which satisfies this constraint.

◆ CSpaceConstraint() [2/3]

CSpaceConstraint::CSpaceConstraint ( Robot *const  _r,
XMLNode _node 
)
explicit

Construct a constraint from an XML node.

Parameters
_rThe robot to constrain.
_nodeThe node to parse.

◆ CSpaceConstraint() [3/3]

CSpaceConstraint::CSpaceConstraint ( Robot *const  _r,
std::string  _pointString,
std::string  _bbxString 
)
explicit

Construct a constraint from message strings.

Parameters
_rThe robot to constrain.
_pointStringThe string containing point constraint info.
_bbxStringThe string containing bounding box constraint info.

Member Function Documentation

◆ Clone()

std::unique_ptr< Constraint > CSpaceConstraint::Clone ( ) const
overridevirtual

Copy this constraint.

Returns
A copy of this constraint.

Reimplemented from BoundaryConstraint.

◆ GetBoundary()

const Boundary * BoundaryConstraint::GetBoundary ( ) const
overridevirtualinherited

Get a sampling boundary that describes the subset of CSpace allowed by this constraint.

Note
Many constraints can be described in terms of boundaries, but some cannot (such as constraints with ordering requirements). If the constraint can't be represented as a boundary, this will return a null pointer.

Implements Constraint.

◆ Satisfied()

bool BoundaryConstraint::Satisfied ( const Cfg _c) const
overridevirtualinherited

Determine whether a given configuration of the robot satisfies this constraint.

Parameters
_cThe configuration to check.
Returns
True if _c satisfies this constraint.

Implements Constraint.

◆ Factory()

std::unique_ptr< Constraint > Constraint::Factory ( Robot *const  _r,
XMLNode _node 
)
staticinherited

Construct a constraint of the appropriate type from an XML node.

Parameters
_rThe robot to which the constraint applies.
_nodeThe XML node to parse.
Returns
A constraint for _r of the type/parameters described by _node.

◆ SetRobot()

void Constraint::SetRobot ( Robot *const  _r)
virtualinherited

Change the subject of this constraint.

Parameters
_rThe new robot to constrain, or null to represent any robot.

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