Blender  V2.59
Classes | Public Types | Public Member Functions | Protected Member Functions
iTaSC::Armature Class Reference

#include <Armature.hpp>

Inheritance diagram for iTaSC::Armature:
Inheritance graph
[legend]

List of all members.

Classes

struct  Effector_struct
struct  Joint_struct
struct  JointConstraint_struct

Public Types

enum  ID {
  ID_JOINT = 1, ID_JOINT_RX = 2, ID_JOINT_RY = 3, ID_JOINT_RZ = 4,
  ID_JOINT_TX = 2, ID_JOINT_TY = 3, ID_JOINT_TZ = 4
}
typedef std::vector
< Effector_struct
EffectorList
typedef std::vector
< JointConstraint_struct * > 
JointConstraintList
typedef std::vector< Joint_structJointList

Public Member Functions

 Armature ()
virtual ~Armature ()
bool addSegment (const std::string &segment_name, const std::string &hook_name, const Joint &joint, const double &q_rest, const Frame &f_tip=F_identity, const Inertia &M=Inertia::Zero())
int addConstraint (const std::string &segment_name, ConstraintCallback _function, void *_param=NULL, bool _freeParam=false, bool _substep=false)
int addLimitConstraint (const std::string &segment_name, unsigned int dof, double _min, double _max)
double getMaxJointChange ()
double getMaxEndEffectorChange ()
bool getSegment (const std::string &segment_name, const unsigned int q_size, const Joint *&p_joint, double &q_rest, double &q, const Frame *&p_tip)
bool getRelativeFrame (Frame &result, const std::string &segment_name, const std::string &base_name=m_root)
virtual void finalize ()
virtual int addEndEffector (const std::string &name)
virtual const FramegetPose (const unsigned int end_effector)
virtual bool updateJoint (const Timestamp &timestamp, JointLockCallback &callback)
virtual void updateKinematics (const Timestamp &timestamp)
virtual void pushCache (const Timestamp &timestamp)
virtual void updateControlOutput (const Timestamp &timestamp)
virtual bool setControlParameter (unsigned int constraintId, unsigned int valueId, ConstraintAction action, double value, double timestep=0.0)
virtual void initCache (Cache *_cache)
virtual bool setJointArray (const KDL::JntArray &joints)
virtual const KDL::JntArraygetJointArray ()
virtual double getArmLength ()

Protected Member Functions

virtual void updateJacobian ()

Detailed Description

Definition at line 19 of file Armature.hpp.


Member Typedef Documentation

Definition at line 58 of file Armature.hpp.

Definition at line 82 of file Armature.hpp.

Definition at line 96 of file Armature.hpp.


Member Enumeration Documentation

Enumerator:
ID_JOINT 
ID_JOINT_RX 
ID_JOINT_RY 
ID_JOINT_RZ 
ID_JOINT_TX 
ID_JOINT_TY 
ID_JOINT_TZ 

Definition at line 60 of file Armature.hpp.


Constructor & Destructor Documentation

iTaSC::Armature::Armature ( )

Definition at line 22 of file Armature.cpp.

iTaSC::Armature::~Armature ( ) [virtual]

Definition at line 47 of file Armature.cpp.

References NULL.


Member Function Documentation

int iTaSC::Armature::addConstraint ( const std::string &  segment_name,
ConstraintCallback  _function,
void *  _param = NULL,
bool  _freeParam = false,
bool  _substep = false 
)
int iTaSC::Armature::addEndEffector ( const std::string &  name) [virtual]

Reimplemented from iTaSC::Object.

Definition at line 353 of file Armature.cpp.

References KDL::Tree::getSegments().

int iTaSC::Armature::addLimitConstraint ( const std::string &  segment_name,
unsigned int  dof,
double  _min,
double  _max 
)
bool iTaSC::Armature::addSegment ( const std::string &  segment_name,
const std::string &  hook_name,
const Joint joint,
const double &  q_rest,
const Frame f_tip = F_identity,
const Inertia M = Inertia::Zero() 
)
void iTaSC::Armature::finalize ( ) [virtual]
virtual double iTaSC::Armature::getArmLength ( ) [inline, virtual]

Definition at line 47 of file Armature.hpp.

const KDL::JntArray & iTaSC::Armature::getJointArray ( ) [virtual]

Definition at line 434 of file Armature.cpp.

double iTaSC::Armature::getMaxEndEffectorChange ( )

Definition at line 277 of file Armature.cpp.

References KDL::diff(), i, KDL::Vector::Norm(), KDL::Twist::rot, and KDL::Twist::vel.

Referenced by execute_scene().

double iTaSC::Armature::getMaxJointChange ( )

Definition at line 263 of file Armature.cpp.

References fabs(), and i.

Referenced by execute_scene().

const Frame & iTaSC::Armature::getPose ( const unsigned int  end_effector) [virtual]

Reimplemented from iTaSC::Object.

Definition at line 650 of file Armature.cpp.

References iTaSC::F_identity, and iTaSC::ControlledObject::m_nee.

Referenced by base_callback().

bool iTaSC::Armature::getRelativeFrame ( Frame result,
const std::string &  segment_name,
const std::string &  base_name = m_root 
)

Definition at line 657 of file Armature.cpp.

References KDL::TreeFkSolverPos_recursive::JntToCart().

Referenced by base_callback(), and execute_scene().

bool iTaSC::Armature::getSegment ( const std::string &  segment_name,
const unsigned int  q_size,
const Joint *&  p_joint,
double &  q_rest,
double &  q,
const Frame *&  p_tip 
)
void iTaSC::Armature::initCache ( Cache _cache) [virtual]
void iTaSC::Armature::pushCache ( const Timestamp timestamp) [virtual]
bool iTaSC::Armature::setControlParameter ( unsigned int  constraintId,
unsigned int  valueId,
ConstraintAction  action,
double  value,
double  timestep = 0.0 
) [virtual]
bool iTaSC::Armature::setJointArray ( const KDL::JntArray joints) [virtual]

Definition at line 423 of file Armature.cpp.

References KDL::JntArray::rows(), and updateJacobian().

Referenced by execute_scene().

void iTaSC::Armature::updateControlOutput ( const Timestamp timestamp) [virtual]
void iTaSC::Armature::updateJacobian ( ) [protected, virtual]
bool iTaSC::Armature::updateJoint ( const Timestamp timestamp,
JointLockCallback callback 
) [virtual]
void iTaSC::Armature::updateKinematics ( const Timestamp timestamp) [virtual]

Implements iTaSC::Object.

Definition at line 617 of file Armature.cpp.

References pushCache(), KDL::JntArray::rows(), and updateJacobian().


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