DART  6.10.1
dart::dynamics::RevoluteJoint Class Reference

class RevoluteJoint More...

#include <RevoluteJoint.hpp>

Inheritance diagram for dart::dynamics::RevoluteJoint:
dart::common::EmbedPropertiesOnTopOf< DerivedT, PropertiesDataT, CompositeBases > dart::common::CompositeJoiner< EmbedProperties< DerivedT, PropertiesDataT >, CompositeBases... >

Public Types

using UniqueProperties = detail::RevoluteJointUniqueProperties
 
using Properties = detail::RevoluteJointProperties
 
using Base = detail::RevoluteJointBase
 
using Impl = EmbedProperties< DerivedT, PropertiesDataT >
 
using Derived = typename Impl::Derived
 
using AspectPropertiesData = typename Impl::AspectPropertiesData
 
using AspectProperties = typename Impl::AspectProperties
 
using Aspect = typename Impl::Aspect
 

Public Member Functions

bool hasRevoluteJointAspect () const
 Check if this Composite currently has RevoluteJointAspect . More...
 
AspectgetRevoluteJointAspect ()
 Get a(an) RevoluteJointAspect from this Composite. More...
 
const AspectgetRevoluteJointAspect () const
 Get a(an) RevoluteJointAspect from this Composite. More...
 
AspectgetRevoluteJointAspect (const bool createIfNull)
 Get a(an) RevoluteJointAspect from this Composite. More...
 
void setRevoluteJointAspect (const Aspect *aspect)
 Make a clone of RevoluteJointAspect and place the clone into this Composite. More...
 
void setRevoluteJointAspect (std::unique_ptr< Aspect > &&aspect)
 Use move semantics to place RevoluteJointAspect into this Composite. More...
 
template<typename... Args>
AspectcreateRevoluteJointAspect (Args &&... args)
 Construct a(an) RevoluteJointAspect inside of this Composite. More...
 
void removeRevoluteJointAspect ()
 Remove a(an) RevoluteJointAspect from this Composite. More...
 
std::unique_ptr< AspectreleaseRevoluteJointAspect ()
 Remove a(an) RevoluteJointAspect from this Composite, but return its unique_ptr instead of letting it be deleted. More...
 
 RevoluteJoint (const RevoluteJoint &)=delete
 
virtual ~RevoluteJoint ()
 Destructor. More...
 
void setProperties (const Properties &_properties)
 Set the Properties of this RevoluteJoint. More...
 
void setProperties (const UniqueProperties &_properties)
 Set the Properties of this RevoluteJoint. More...
 
void setAspectProperties (const AspectProperties &properties)
 Set the AspectProperties of this RevoluteJoint. More...
 
Properties getRevoluteJointProperties () const
 Get the Properties of this RevoluteJoint. More...
 
void copy (const RevoluteJoint &_otherJoint)
 Copy the Properties of another RevoluteJoint. More...
 
void copy (const RevoluteJoint *_otherJoint)
 Copy the Properties of another RevoluteJoint. More...
 
RevoluteJointoperator= (const RevoluteJoint &_otherJoint)
 Copy the Properties of another RevoluteJoint. More...
 
const std::string & getType () const override
 
bool isCyclic (std::size_t _index) const override
 
void setAxis (const Eigen::Vector3d &_axis)
 
const Eigen::Vector3d & getAxis () const
 
GenericJoint< math::R1Space >::JacobianMatrix getRelativeJacobianStatic (const GenericJoint< math::R1Space >::Vector &positions) const override
 
const AspectPropertiesgetAspectProperties () const
 

Static Public Member Functions

static const std::string & getStaticType ()
 Get joint type for this class. More...
 

Protected Member Functions

 RevoluteJoint (const Properties &properties)
 Constructor called by Skeleton class. More...
 
Jointclone () const override
 
void updateDegreeOfFreedomNames () override
 
void updateRelativeTransform () const override
 
void updateRelativeJacobian (bool _mandatory=true) const override
 
void updateRelativeJacobianTimeDeriv () const override
 

Protected Attributes

AspectProperties mAspectProperties
 Aspect::Properties data, directly accessible to your derived class. More...
 

Friends

class Skeleton
 

Detailed Description

Member Typedef Documentation

◆ Aspect

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
using dart::common::EmbedPropertiesOnTopOf< DerivedT, PropertiesDataT, CompositeBases >::Aspect = typename Impl::Aspect
inherited

◆ AspectProperties

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
using dart::common::EmbedPropertiesOnTopOf< DerivedT, PropertiesDataT, CompositeBases >::AspectProperties = typename Impl::AspectProperties
inherited

◆ AspectPropertiesData

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
using dart::common::EmbedPropertiesOnTopOf< DerivedT, PropertiesDataT, CompositeBases >::AspectPropertiesData = typename Impl::AspectPropertiesData
inherited

◆ Base

◆ Derived

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
using dart::common::EmbedPropertiesOnTopOf< DerivedT, PropertiesDataT, CompositeBases >::Derived = typename Impl::Derived
inherited

◆ Impl

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
using dart::common::EmbedPropertiesOnTopOf< DerivedT, PropertiesDataT, CompositeBases >::Impl = EmbedProperties<DerivedT, PropertiesDataT>
inherited

◆ Properties

◆ UniqueProperties

Constructor & Destructor Documentation

◆ RevoluteJoint() [1/2]

dart::dynamics::RevoluteJoint::RevoluteJoint ( const RevoluteJoint )
delete

◆ ~RevoluteJoint()

dart::dynamics::RevoluteJoint::~RevoluteJoint ( )
virtual

Destructor.

◆ RevoluteJoint() [2/2]

dart::dynamics::RevoluteJoint::RevoluteJoint ( const Properties properties)
protected

Constructor called by Skeleton class.

Member Function Documentation

◆ clone()

Joint * dart::dynamics::RevoluteJoint::clone ( ) const
overrideprotected

◆ copy() [1/2]

void dart::dynamics::RevoluteJoint::copy ( const RevoluteJoint _otherJoint)

Copy the Properties of another RevoluteJoint.

◆ copy() [2/2]

void dart::dynamics::RevoluteJoint::copy ( const RevoluteJoint _otherJoint)

Copy the Properties of another RevoluteJoint.

◆ createRevoluteJointAspect()

template<typename... Args>
Aspect* dart::dynamics::RevoluteJoint::createRevoluteJointAspect ( Args &&...  args)
inline

Construct a(an) RevoluteJointAspect inside of this Composite.

◆ getAspectProperties()

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
const AspectProperties& dart::common::EmbedProperties< DerivedT, PropertiesDataT >::getAspectProperties
inlineinherited

◆ getAxis()

const Eigen::Vector3d & dart::dynamics::RevoluteJoint::getAxis ( ) const

◆ getRelativeJacobianStatic()

GenericJoint< math::R1Space >::JacobianMatrix dart::dynamics::RevoluteJoint::getRelativeJacobianStatic ( const GenericJoint< math::R1Space >::Vector &  positions) const
override

◆ getRevoluteJointAspect() [1/3]

Aspect* dart::dynamics::RevoluteJoint::getRevoluteJointAspect ( )
inline

Get a(an) RevoluteJointAspect from this Composite.

◆ getRevoluteJointAspect() [2/3]

const Aspect* dart::dynamics::RevoluteJoint::getRevoluteJointAspect ( ) const
inline

Get a(an) RevoluteJointAspect from this Composite.

◆ getRevoluteJointAspect() [3/3]

Aspect* dart::dynamics::RevoluteJoint::getRevoluteJointAspect ( const bool  createIfNull)
inline

Get a(an) RevoluteJointAspect from this Composite.

If _createIfNull is true, then a(an) RevoluteJointAspect will be generated if one does not already exist.

◆ getRevoluteJointProperties()

RevoluteJoint::Properties dart::dynamics::RevoluteJoint::getRevoluteJointProperties ( ) const

Get the Properties of this RevoluteJoint.

◆ getStaticType()

const std::string & dart::dynamics::RevoluteJoint::getStaticType ( )
static

Get joint type for this class.

◆ getType()

const std::string & dart::dynamics::RevoluteJoint::getType ( ) const
override

◆ hasRevoluteJointAspect()

bool dart::dynamics::RevoluteJoint::hasRevoluteJointAspect ( ) const
inline

Check if this Composite currently has RevoluteJointAspect .

◆ isCyclic()

bool dart::dynamics::RevoluteJoint::isCyclic ( std::size_t  _index) const
override

◆ operator=()

RevoluteJoint & dart::dynamics::RevoluteJoint::operator= ( const RevoluteJoint _otherJoint)

Copy the Properties of another RevoluteJoint.

◆ releaseRevoluteJointAspect()

std::unique_ptr< Aspect > dart::dynamics::RevoluteJoint::releaseRevoluteJointAspect ( )
inline

Remove a(an) RevoluteJointAspect from this Composite, but return its unique_ptr instead of letting it be deleted.

This allows you to safely use move semantics to transfer a(an) RevoluteJointAspect between two Composites.

◆ removeRevoluteJointAspect()

void dart::dynamics::RevoluteJoint::removeRevoluteJointAspect ( )
inline

Remove a(an) RevoluteJointAspect from this Composite.

◆ setAspectProperties()

void dart::dynamics::RevoluteJoint::setAspectProperties ( const AspectProperties properties)

Set the AspectProperties of this RevoluteJoint.

◆ setAxis()

void dart::dynamics::RevoluteJoint::setAxis ( const Eigen::Vector3d &  _axis)

◆ setProperties() [1/2]

void dart::dynamics::RevoluteJoint::setProperties ( const Properties _properties)

Set the Properties of this RevoluteJoint.

◆ setProperties() [2/2]

void dart::dynamics::RevoluteJoint::setProperties ( const UniqueProperties _properties)

Set the Properties of this RevoluteJoint.

◆ setRevoluteJointAspect() [1/2]

void dart::dynamics::RevoluteJoint::setRevoluteJointAspect ( const Aspect aspect)
inline

Make a clone of RevoluteJointAspect and place the clone into this Composite.

If a(an) RevoluteJointAspect already exists in this Composite, the existing RevoluteJointAspect will be destroyed.

◆ setRevoluteJointAspect() [2/2]

void dart::dynamics::RevoluteJoint::setRevoluteJointAspect ( std::unique_ptr< Aspect > &&  aspect)
inline

Use move semantics to place RevoluteJointAspect into this Composite.

If a(an) RevoluteJointAspect already exists in this Composite, the existing RevoluteJointAspect will be destroyed.

◆ updateDegreeOfFreedomNames()

void dart::dynamics::RevoluteJoint::updateDegreeOfFreedomNames ( )
overrideprotected

◆ updateRelativeJacobian()

void dart::dynamics::RevoluteJoint::updateRelativeJacobian ( bool  _mandatory = true) const
overrideprotected

◆ updateRelativeJacobianTimeDeriv()

void dart::dynamics::RevoluteJoint::updateRelativeJacobianTimeDeriv ( ) const
overrideprotected

◆ updateRelativeTransform()

void dart::dynamics::RevoluteJoint::updateRelativeTransform ( ) const
overrideprotected

Friends And Related Function Documentation

◆ Skeleton

friend class Skeleton
friend

Member Data Documentation

◆ mAspectProperties

template<class DerivedT , typename PropertiesDataT , typename... CompositeBases>
AspectProperties dart::common::EmbedProperties< DerivedT, PropertiesDataT >::mAspectProperties
protectedinherited

Aspect::Properties data, directly accessible to your derived class.