Robotics Library  0.6.2
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends | List of all members
rl::mdl::Model Class Reference

#include <Model.h>

Inheritance diagram for rl::mdl::Model:
Inheritance graph
[legend]

Public Member Functions

 Model ()
 
virtual ~Model ()
 
void add (Compound *compound, const Frame *a, const Frame *b)
 
void add (Frame *frame)
 
void add (Transform *transform, const Frame *a, const Frame *b)
 
bool areColliding (const ::std::size_t &i, const ::std::size_t &j) const
 
Modelclone () const
 
void getAcceleration (::rl::math::Vector &qdd) const
 
void getAccelerationUnits (::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &units) const
 
::std::size_t getBodies () const
 
BodygetBody (const ::std::size_t &i) const
 
::std::size_t getDof () const
 
::std::size_t getDofPosition () const
 
const ::rl::math::TransformgetFrame (const ::std::size_t &i) const
 
JointgetJoint (const ::std::size_t &i) const
 
::std::size_t getJoints () const
 
const ::rl::math::MotionVectorgetOperationalAcceleration (const ::std::size_t &i) const
 
::std::size_t getOperationalDof () const
 
const ::rl::math::ForceVectorgetOperationalForce (const ::std::size_t &i) const
 
const ::rl::math::TransformgetOperationalPosition (const ::std::size_t &i) const
 
const ::rl::math::MotionVectorgetOperationalVelocity (const ::std::size_t &i) const
 
const ::std::string & getManufacturer () const
 
void getMaximum (::rl::math::Vector &max) const
 
void getMinimum (::rl::math::Vector &min) const
 
const ::std::string & getName () const
 
void getPosition (::rl::math::Vector &q) const
 
void getPositionUnits (::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &units) const
 
void getTorque (::rl::math::Vector &tau) const
 
void getTorqueUnits (::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &units) const
 
void getSpeed (::rl::math::Vector &speed) const
 
void getSpeedUnits (::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &units) const
 
void getVelocity (::rl::math::Vector &qd) const
 
void getVelocityUnits (::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &units) const
 
bool isColliding (const ::std::size_t &i) const
 
void replace (Compound *compound, Transform *transform)
 
void replace (Transform *transform, Compound *compound)
 
void remove (Compound *compound)
 
void remove (Frame *frame)
 
void remove (Transform *transform)
 
void setAcceleration (const ::rl::math::Vector &qdd)
 
void setManufacturer (const ::std::string &manufacturer)
 
void setName (const ::std::string &name)
 
void setOperationalVelocity (const ::std::size_t &i, const ::rl::math::MotionVector &v) const
 
void setPosition (const ::rl::math::Vector &q)
 
void setTorque (const ::rl::math::Vector &tau)
 
void setVelocity (const ::rl::math::Vector &qd)
 
::rl::math::Transformtool (const ::std::size_t &i=0)
 
const ::rl::math::Transformtool (const ::std::size_t &i=0) const
 
virtual void update ()
 
::rl::math::Transformworld ()
 
const ::rl::math::Transformworld () const
 

Protected Types

typedef ::boost::adjacency_list< ::boost::listS, ::boost::listS, ::boost::bidirectionalS, ::boost::property< ::boost::vertex_color_t, Compound *, ::boost::shared_ptr< Frame > >, ::boost::property< ::boost::edge_weight_t, Compound *, ::boost::shared_ptr< Transform > >, ::boost::no_property, ::boost::listS > Tree
 
typedef ::boost::graph_traits< Tree >::edge_descriptor Edge
 
typedef ::boost::graph_traits< Tree >::edge_iterator EdgeIterator
 
typedef ::std::pair< EdgeIterator, EdgeIteratorEdgeIteratorPair
 
typedef ::boost::graph_traits< Tree >::in_edge_iterator InEdgeIterator
 
typedef ::std::pair< InEdgeIterator, InEdgeIteratorInEdgeIteratorPair
 
typedef ::boost::graph_traits< Tree >::out_edge_iterator OutEdgeIterator
 
typedef ::std::pair< OutEdgeIterator, OutEdgeIteratorOutEdgeIteratorPair
 
typedef ::boost::graph_traits< Tree >::vertex_descriptor Vertex
 
typedef ::boost::graph_traits< Tree >::vertex_iterator VertexIterator
 
typedef ::std::pair< VertexIterator, VertexIteratorVertexIteratorPair
 

Protected Member Functions

void update (const Vertex &u)
 

Protected Attributes

::std::vector< Body * > bodies
 
::std::vector< Element * > elements
 
::std::vector< Frame * > frames
 
::std::vector< Joint * > joints
 
::std::vector< Vertexleaves
 
::std::string manufacturer
 
::std::string name
 
Vertex root
 
::std::vector< Edgetools
 
::std::vector< Transform * > transforms
 
Tree tree
 

Friends

class Compound
 

Member Typedef Documentation

◆ Edge

typedef ::boost::graph_traits< Tree >::edge_descriptor rl::mdl::Model::Edge
protected

◆ EdgeIterator

typedef ::boost::graph_traits< Tree >::edge_iterator rl::mdl::Model::EdgeIterator
protected

◆ EdgeIteratorPair

typedef ::std::pair< EdgeIterator, EdgeIterator > rl::mdl::Model::EdgeIteratorPair
protected

◆ InEdgeIterator

typedef ::boost::graph_traits< Tree >::in_edge_iterator rl::mdl::Model::InEdgeIterator
protected

◆ InEdgeIteratorPair

◆ OutEdgeIterator

typedef ::boost::graph_traits< Tree >::out_edge_iterator rl::mdl::Model::OutEdgeIterator
protected

◆ OutEdgeIteratorPair

◆ Tree

typedef ::boost::adjacency_list< ::boost::listS, ::boost::listS, ::boost::bidirectionalS, ::boost::property< ::boost::vertex_color_t, Compound*, ::boost::shared_ptr< Frame > >, ::boost::property< ::boost::edge_weight_t, Compound*, ::boost::shared_ptr< Transform > >, ::boost::no_property, ::boost::listS > rl::mdl::Model::Tree
protected

◆ Vertex

typedef ::boost::graph_traits< Tree >::vertex_descriptor rl::mdl::Model::Vertex
protected

◆ VertexIterator

typedef ::boost::graph_traits< Tree >::vertex_iterator rl::mdl::Model::VertexIterator
protected

◆ VertexIteratorPair

Constructor & Destructor Documentation

◆ Model()

rl::mdl::Model::Model ( )

◆ ~Model()

rl::mdl::Model::~Model ( )
virtual

Member Function Documentation

◆ add() [1/3]

void rl::mdl::Model::add ( Compound compound,
const Frame a,
const Frame b 
)

◆ add() [2/3]

void rl::mdl::Model::add ( Frame frame)

◆ add() [3/3]

void rl::mdl::Model::add ( Transform transform,
const Frame a,
const Frame b 
)

◆ areColliding()

bool rl::mdl::Model::areColliding ( const ::std::size_t &  i,
const ::std::size_t &  j 
) const

◆ clone()

Model * rl::mdl::Model::clone ( ) const

◆ getAcceleration()

void rl::mdl::Model::getAcceleration ( ::rl::math::Vector qdd) const

◆ getAccelerationUnits()

void rl::mdl::Model::getAccelerationUnits ( ::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &  units) const

◆ getBodies()

std::size_t rl::mdl::Model::getBodies ( ) const

◆ getBody()

Body * rl::mdl::Model::getBody ( const ::std::size_t &  i) const

◆ getDof()

std::size_t rl::mdl::Model::getDof ( ) const

◆ getDofPosition()

std::size_t rl::mdl::Model::getDofPosition ( ) const

◆ getFrame()

const ::rl::math::Transform & rl::mdl::Model::getFrame ( const ::std::size_t &  i) const

◆ getJoint()

Joint * rl::mdl::Model::getJoint ( const ::std::size_t &  i) const

◆ getJoints()

std::size_t rl::mdl::Model::getJoints ( ) const

◆ getManufacturer()

const ::std::string & rl::mdl::Model::getManufacturer ( ) const

◆ getMaximum()

void rl::mdl::Model::getMaximum ( ::rl::math::Vector max) const

◆ getMinimum()

void rl::mdl::Model::getMinimum ( ::rl::math::Vector min) const

◆ getName()

const ::std::string & rl::mdl::Model::getName ( ) const

◆ getOperationalAcceleration()

const ::rl::math::MotionVector & rl::mdl::Model::getOperationalAcceleration ( const ::std::size_t &  i) const

◆ getOperationalDof()

std::size_t rl::mdl::Model::getOperationalDof ( ) const

◆ getOperationalForce()

const ::rl::math::ForceVector & rl::mdl::Model::getOperationalForce ( const ::std::size_t &  i) const

◆ getOperationalPosition()

const ::rl::math::Transform & rl::mdl::Model::getOperationalPosition ( const ::std::size_t &  i) const

◆ getOperationalVelocity()

const ::rl::math::MotionVector & rl::mdl::Model::getOperationalVelocity ( const ::std::size_t &  i) const

◆ getPosition()

void rl::mdl::Model::getPosition ( ::rl::math::Vector q) const

◆ getPositionUnits()

void rl::mdl::Model::getPositionUnits ( ::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &  units) const

◆ getSpeed()

void rl::mdl::Model::getSpeed ( ::rl::math::Vector speed) const

◆ getSpeedUnits()

void rl::mdl::Model::getSpeedUnits ( ::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &  units) const

◆ getTorque()

void rl::mdl::Model::getTorque ( ::rl::math::Vector tau) const

◆ getTorqueUnits()

void rl::mdl::Model::getTorqueUnits ( ::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &  units) const

◆ getVelocity()

void rl::mdl::Model::getVelocity ( ::rl::math::Vector qd) const

◆ getVelocityUnits()

void rl::mdl::Model::getVelocityUnits ( ::Eigen::Matrix< ::rl::math::Unit, ::Eigen::Dynamic, 1 > &  units) const

◆ isColliding()

bool rl::mdl::Model::isColliding ( const ::std::size_t &  i) const

◆ remove() [1/3]

void rl::mdl::Model::remove ( Compound compound)

◆ remove() [2/3]

void rl::mdl::Model::remove ( Frame frame)

◆ remove() [3/3]

void rl::mdl::Model::remove ( Transform transform)

◆ replace() [1/2]

void rl::mdl::Model::replace ( Compound compound,
Transform transform 
)

◆ replace() [2/2]

void rl::mdl::Model::replace ( Transform transform,
Compound compound 
)

◆ setAcceleration()

void rl::mdl::Model::setAcceleration ( const ::rl::math::Vector qdd)

◆ setManufacturer()

void rl::mdl::Model::setManufacturer ( const ::std::string &  manufacturer)

◆ setName()

void rl::mdl::Model::setName ( const ::std::string &  name)

◆ setOperationalVelocity()

void rl::mdl::Model::setOperationalVelocity ( const ::std::size_t &  i,
const ::rl::math::MotionVector v 
) const

◆ setPosition()

void rl::mdl::Model::setPosition ( const ::rl::math::Vector q)

◆ setTorque()

void rl::mdl::Model::setTorque ( const ::rl::math::Vector tau)

◆ setVelocity()

void rl::mdl::Model::setVelocity ( const ::rl::math::Vector qd)

◆ tool() [1/2]

rl::math::Transform & rl::mdl::Model::tool ( const ::std::size_t &  i = 0)

◆ tool() [2/2]

const ::rl::math::Transform & rl::mdl::Model::tool ( const ::std::size_t &  i = 0) const

◆ update() [1/2]

void rl::mdl::Model::update ( )
virtual

Reimplemented in rl::mdl::Kinematic, and rl::mdl::Dynamic.

◆ update() [2/2]

void rl::mdl::Model::update ( const Vertex u)
protected

◆ world() [1/2]

rl::math::Transform & rl::mdl::Model::world ( )

◆ world() [2/2]

const ::rl::math::Transform & rl::mdl::Model::world ( ) const

Friends And Related Function Documentation

◆ Compound

friend class Compound
friend

Member Data Documentation

◆ bodies

::std::vector< Body* > rl::mdl::Model::bodies
protected

◆ elements

::std::vector< Element* > rl::mdl::Model::elements
protected

◆ frames

::std::vector< Frame* > rl::mdl::Model::frames
protected

◆ joints

::std::vector< Joint* > rl::mdl::Model::joints
protected

◆ leaves

::std::vector< Vertex > rl::mdl::Model::leaves
protected

◆ manufacturer

::std::string rl::mdl::Model::manufacturer
protected

◆ name

::std::string rl::mdl::Model::name
protected

◆ root

Vertex rl::mdl::Model::root
protected

◆ tools

::std::vector< Edge > rl::mdl::Model::tools
protected

◆ transforms

::std::vector< Transform* > rl::mdl::Model::transforms
protected

◆ tree

Tree rl::mdl::Model::tree
protected

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