DART 6.10.1
Loading...
Searching...
No Matches
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 .
 
Aspect * getRevoluteJointAspect ()
 Get a(an) RevoluteJointAspect from this Composite.
 
const Aspect * getRevoluteJointAspect () const
 Get a(an) RevoluteJointAspect from this Composite.
 
Aspect * getRevoluteJointAspect (const bool createIfNull)
 Get a(an) RevoluteJointAspect from this Composite.
 
void setRevoluteJointAspect (const Aspect *aspect)
 Make a clone of RevoluteJointAspect and place the clone into this Composite.
 
void setRevoluteJointAspect (std::unique_ptr< Aspect > &&aspect)
 Use move semantics to place RevoluteJointAspect into this Composite.
 
template<typename... Args>
Aspect * createRevoluteJointAspect (Args &&... args)
 Construct a(an) RevoluteJointAspect inside of this Composite.
 
void removeRevoluteJointAspect ()
 Remove a(an) RevoluteJointAspect from this Composite.
 
std::unique_ptr< Aspect > releaseRevoluteJointAspect ()
 Remove a(an) RevoluteJointAspect from this Composite, but return its unique_ptr instead of letting it be deleted.
 
 RevoluteJoint (const RevoluteJoint &)=delete
 
virtual ~RevoluteJoint ()
 Destructor.
 
void setProperties (const Properties &_properties)
 Set the Properties of this RevoluteJoint.
 
void setProperties (const UniqueProperties &_properties)
 Set the Properties of this RevoluteJoint.
 
void setAspectProperties (const AspectProperties &properties)
 Set the AspectProperties of this RevoluteJoint.
 
Properties getRevoluteJointProperties () const
 Get the Properties of this RevoluteJoint.
 
void copy (const RevoluteJoint &_otherJoint)
 Copy the Properties of another RevoluteJoint.
 
void copy (const RevoluteJoint *_otherJoint)
 Copy the Properties of another RevoluteJoint.
 
RevoluteJoint & operator= (const RevoluteJoint &_otherJoint)
 Copy the Properties of another RevoluteJoint.
 
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 AspectProperties & getAspectProperties () const
 

Static Public Member Functions

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

Protected Member Functions

 RevoluteJoint (const Properties &properties)
 Constructor called by Skeleton class.
 
Joint * clone () 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.
 

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 ( ) const
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 Symbol 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.