Aikido
aikido::constraint::dart Namespace Reference

Namespaces

 detail
 

Classes

class  CollisionFree
 A testable that uses a collision detector to check whether a metakeleton state (configuration) results in collision between and within specified collision groups. More...
 
class  CollisionFreeOutcome
 TestableOutcome derivative class intended as (optional) input to isSatisfied method in CollisionFree class. More...
 
class  FrameDifferentiable
 A pose constraint on _jacobianNode's transform w.r.t. More...
 
class  FramePairDifferentiable
 A differentiable constraint which constrains relative transform of jacobianNodeTarget w.r.t. More...
 
class  FrameTestable
 Transforms a SE(3) Testable into a MetaSkeleton-Testable by performing forward kinematics on a configuration (metaskeleton state) and checking the resulting SE(3) pose of the asked frame. More...
 
class  InverseKinematicsSampleable
 Transforms a SE3-Sampleable into a MetaSkeleton-Sampleable that samples a configuration of a metaskeleton. More...
 
class  TSR
 TSRs describe end-effector constraint sets as subsets of SE(3). More...
 

Typedefs

using CollisionFreePtr = std::shared_ptr< CollisionFree >
 
using ConstCollisionFreePtr = std::shared_ptr< const CollisionFree >
 
using WeakCollisionFreePtr = std::weak_ptr< CollisionFree >
 
using WeakConstCollisionFreePtr = std::weak_ptr< const CollisionFree >
 
using UniqueCollisionFreePtr = std::unique_ptr< CollisionFree >
 
using UniqueConstCollisionFreePtr = std::unique_ptr< const CollisionFree >
 
using TSRPtr = std::shared_ptr< TSR >
 
using ConstTSRPtr = std::shared_ptr< const TSR >
 
using WeakTSRPtr = std::weak_ptr< TSR >
 
using WeakConstTSRPtr = std::weak_ptr< const TSR >
 
using UniqueTSRPtr = std::unique_ptr< TSR >
 
using UniqueConstTSRPtr = std::unique_ptr< const TSR >
 

Functions

template<class Space >
std::unique_ptr< DifferentiablecreateDifferentiableBoundsFor (std::shared_ptr< Space > _stateSpace)
 Create differentiable bounds that can be applied to the given StateSpace. More...
 
template<class Space >
std::unique_ptr< ProjectablecreateProjectableBoundsFor (std::shared_ptr< Space > _stateSpace)
 Create a Projectable that can be used to project a state from the given StateSpace back within bounds set on the StateSpace. More...
 
template<class Space >
std::unique_ptr< TestablecreateTestableBoundsFor (std::shared_ptr< Space > _stateSpace)
 Create a Testable constraint that can be used to determine if a given state lies within bounds set on the StateSpace. More...
 
template<class Space >
std::unique_ptr< SampleablecreateSampleableBoundsFor (std::shared_ptr< Space > _stateSpace, std::unique_ptr< common::RNG > _rng)
 Create a Sampleable constraint that can be used to sample a state that is guarenteed to lie within bounds define on the StateSpace. More...
 
std::unique_ptr< DifferentiablecreateDifferentiableBounds (std::shared_ptr< const statespace::dart::JointStateSpace > _stateSpace)
 Create differentiable bounds that can be applied to the given StateSpace The differentiable bounds are created from the joint limits set on the dart joint wrapped by the JointStateSpace. More...
 
std::unique_ptr< DifferentiablecreateDifferentiableBounds (statespace::dart::ConstMetaSkeletonStateSpacePtr _metaSkeleton)
 Create a set of Differentiable constraints for each joint in the MetaSkeleton wrapped by the state space. More...
 
std::unique_ptr< ProjectablecreateProjectableBounds (std::shared_ptr< const statespace::dart::JointStateSpace > _stateSpace)
 Create a Projectable that can be used to project the value of a joint back within joint limits. More...
 
std::unique_ptr< ProjectablecreateProjectableBounds (statespace::dart::ConstMetaSkeletonStateSpacePtr _metaSkeleton)
 Create a set of Projectable constraints for each joint in the MetaSkeleton wrapped by the state space. More...
 
std::unique_ptr< TestablecreateTestableBounds (std::shared_ptr< const statespace::dart::JointStateSpace > _stateSpace)
 Create a Testable constraint that can be used to determine if the value of a joint is within the joint limits. More...
 
std::unique_ptr< TestablecreateTestableBounds (statespace::dart::ConstMetaSkeletonStateSpacePtr _metaSkeleton)
 Create a set of Testable constraints for each joint in the MetaSkeleton wrapped by the state space. More...
 
std::unique_ptr< SampleablecreateSampleableBounds (std::shared_ptr< const statespace::dart::JointStateSpace > _stateSpace, std::unique_ptr< common::RNG > _rng)
 Create a Sampleabe constraint that can be used to sample values for the joint that are guarenteed to be within joint limits. More...
 
std::unique_ptr< SampleablecreateSampleableBounds (statespace::dart::ConstMetaSkeletonStateSpacePtr _metaSkeleton, std::unique_ptr< common::RNG > _rng)
 Create a Sampleable constraint that can be used to sampel values for all joints in a MetaSkeleton. More...
 

Typedef Documentation

◆ CollisionFreePtr

using aikido::constraint::dart::CollisionFreePtr = typedef std::shared_ptr< CollisionFree >

◆ ConstCollisionFreePtr

using aikido::constraint::dart::ConstCollisionFreePtr = typedef std::shared_ptr< const CollisionFree >

◆ ConstTSRPtr

using aikido::constraint::dart::ConstTSRPtr = typedef std::shared_ptr< const TSR >

◆ TSRPtr

using aikido::constraint::dart::TSRPtr = typedef std::shared_ptr< TSR >

◆ UniqueCollisionFreePtr

◆ UniqueConstCollisionFreePtr

using aikido::constraint::dart::UniqueConstCollisionFreePtr = typedef std::unique_ptr< const CollisionFree >

◆ UniqueConstTSRPtr

using aikido::constraint::dart::UniqueConstTSRPtr = typedef std::unique_ptr< const TSR >

◆ UniqueTSRPtr

using aikido::constraint::dart::UniqueTSRPtr = typedef std::unique_ptr< TSR >

◆ WeakCollisionFreePtr

◆ WeakConstCollisionFreePtr

◆ WeakConstTSRPtr

using aikido::constraint::dart::WeakConstTSRPtr = typedef std::weak_ptr< const TSR >

◆ WeakTSRPtr

using aikido::constraint::dart::WeakTSRPtr = typedef std::weak_ptr< TSR >

Function Documentation

◆ createDifferentiableBounds() [1/2]

std::unique_ptr<Differentiable> aikido::constraint::dart::createDifferentiableBounds ( statespace::dart::ConstMetaSkeletonStateSpacePtr  _metaSkeleton)

Create a set of Differentiable constraints for each joint in the MetaSkeleton wrapped by the state space.

The bounds are created from the joint limits set on the joints of the MetaSkeleton. A no-op Differentiable is created for joints that have no limits.

Parameters
_metaSkeletonThe MetaSkeletonStateSpace where the Differentiable will be applied

◆ createDifferentiableBounds() [2/2]

std::unique_ptr<Differentiable> aikido::constraint::dart::createDifferentiableBounds ( std::shared_ptr< const statespace::dart::JointStateSpace _stateSpace)

Create differentiable bounds that can be applied to the given StateSpace The differentiable bounds are created from the joint limits set on the dart joint wrapped by the JointStateSpace.

If the space has no bounds, a no-op Differtiable is created.

Parameters
_stateSpaceThe StateSpace where the Differentiable will be applied

◆ createDifferentiableBoundsFor()

template<class Space >
std::unique_ptr< Differentiable > aikido::constraint::dart::createDifferentiableBoundsFor ( std::shared_ptr< Space >  _stateSpace)

Create differentiable bounds that can be applied to the given StateSpace.

Parameters
_stateSpaceThe StateSpace where the Differentiable will be applied

◆ createProjectableBounds() [1/2]

std::unique_ptr<Projectable> aikido::constraint::dart::createProjectableBounds ( statespace::dart::ConstMetaSkeletonStateSpacePtr  _metaSkeleton)

Create a set of Projectable constraints for each joint in the MetaSkeleton wrapped by the state space.

The constraints can be used to project a state back within the joint limits set on the MetaSkeleton.

Parameters
_metaSkeletonThe MetaSkeletonStateSpace where the Projectable will be applied.

◆ createProjectableBounds() [2/2]

std::unique_ptr<Projectable> aikido::constraint::dart::createProjectableBounds ( std::shared_ptr< const statespace::dart::JointStateSpace _stateSpace)

Create a Projectable that can be used to project the value of a joint back within joint limits.

The Projectable is created from the joint limits set for the joint wrapped by the given JointStateSpace.

Parameters
_stateSpaceThe JointStateSpace where the Projectable will be applied.

◆ createProjectableBoundsFor()

template<class Space >
std::unique_ptr< Projectable > aikido::constraint::dart::createProjectableBoundsFor ( std::shared_ptr< Space >  _stateSpace)

Create a Projectable that can be used to project a state from the given StateSpace back within bounds set on the StateSpace.

Parameters
_stateSpaceThe StateSpace where the Projectable will be applied.

◆ createSampleableBounds() [1/2]

std::unique_ptr<Sampleable> aikido::constraint::dart::createSampleableBounds ( statespace::dart::ConstMetaSkeletonStateSpacePtr  _metaSkeleton,
std::unique_ptr< common::RNG _rng 
)

Create a Sampleable constraint that can be used to sampel values for all joints in a MetaSkeleton.

The sampled joint values are guarenteed to lie within joint limits defined on the MetaSkeleton.

Parameters
_metaSkeletonThe MetaSkeletonStateSpace where the Sampleable will be applied
_rngThe random number generator to be used by the Sampleable

◆ createSampleableBounds() [2/2]

std::unique_ptr<Sampleable> aikido::constraint::dart::createSampleableBounds ( std::shared_ptr< const statespace::dart::JointStateSpace _stateSpace,
std::unique_ptr< common::RNG _rng 
)

Create a Sampleabe constraint that can be used to sample values for the joint that are guarenteed to be within joint limits.

The Sampleable is created from the joint limits set on the joint wrapped by the given JointStateSpace.

Parameters
_stateSpaceThe JointStateSpace where the Sampleable will be applied
_rngThe random number generator to be used by the Sampleable

◆ createSampleableBoundsFor()

template<class Space >
std::unique_ptr< Sampleable > aikido::constraint::dart::createSampleableBoundsFor ( std::shared_ptr< Space >  _stateSpace,
std::unique_ptr< common::RNG _rng 
)

Create a Sampleable constraint that can be used to sample a state that is guarenteed to lie within bounds define on the StateSpace.

Parameters
_stateSpaceThe StateSpace where the Sampleable will be applied.
_rngThe random number generator to be used by the Sampleable

◆ createTestableBounds() [1/2]

std::unique_ptr<Testable> aikido::constraint::dart::createTestableBounds ( statespace::dart::ConstMetaSkeletonStateSpacePtr  _metaSkeleton)

Create a set of Testable constraints for each joint in the MetaSkeleton wrapped by the state space.

The constraints can be used to determine if a state is within the joint limits defined on all joints of the MetaSkeleton.

Parameters
_metaSkeletonThe MetaSkeletonStateSpace where the Testable will be applied.

◆ createTestableBounds() [2/2]

std::unique_ptr<Testable> aikido::constraint::dart::createTestableBounds ( std::shared_ptr< const statespace::dart::JointStateSpace _stateSpace)

Create a Testable constraint that can be used to determine if the value of a joint is within the joint limits.

The Testable is created from the joint limits set on the joint wrapped by the given JointStateSpace.

Parameters
_stateSpaceThe JointStateSpace where the Testable will be applied

◆ createTestableBoundsFor()

template<class Space >
std::unique_ptr< Testable > aikido::constraint::dart::createTestableBoundsFor ( std::shared_ptr< Space >  _stateSpace)

Create a Testable constraint that can be used to determine if a given state lies within bounds set on the StateSpace.

Parameters
_stateSpaceThe StateSpace where the Testable will be applied