DH_Chain< DataType, dim > Class Template Reference

#include <DH_Chain.h>

List of all members.

Public Types

typedef Joint< DataType, dim > JointType
typedef DH_Link< DataType, dim > LinkType
typedef Scene< DataType, dim > SceneType

Public Member Functions

 DH_Chain ()
 DH_Chain (const DH_Chain &v)
 ~DH_Chain ()
virtual void AddJoint (JointType *j)
virtual void AddJoint (JointType &j)
void addLink (LinkType *l)
void addLink (LinkType &l)
void addNativeLink (LinkType *l)
void addNativeLink (LinkType &l)
int GetNumNativeLinks () const
LinkTypeGetNthNative (int i)
void addTernLink (int link, int nativeLink)
int GetNumTernLinks () const
int GetNumLinks () const
LinkTypeGetNthLink (int i)
void calcDHMat (int baseLink, int targetLink)
void calcNativeDHMat (SceneType &TheScene, LinkType *native, int baseLink, int targetLink)
void updateLinks ()
void setParentChain (int val)
int getParentChain ()
void print (Scene< DataType, dim > &thisScene, int level)
virtual void Restart (std::ifstream &ifs, int &pos, double &t, double &dt)
virtual void Checkpointing (std::ofstream &ofs)
void setId (int val)

Protected Attributes

int id
std::vector< JointType * > joints
std::vector< LinkType * > links
std::vector< LinkType * > natives
std::vector< boost::array< int, 2 > > terNlinks
bool mobile
int parentChainId
MType tipDHMat
int num_terNlinks
int num_joints
int num_links
int num_natives

Friends

class Joint< DataType, dim >
class DH_Link< DataType, dim >
class SceneBase< DataType, dim >
class Scene< DataType, dim >

Detailed Description

template<class DataType, int dim>
class DH_Chain< DataType, dim >

Container used to expresss the pose of a connection of N DH_Links.


Member Typedef Documentation

template<class DataType , int dim>
typedef Joint<DataType,dim> DH_Chain< DataType, dim >::JointType
template<class DataType , int dim>
typedef DH_Link<DataType,dim> DH_Chain< DataType, dim >::LinkType
template<class DataType , int dim>
typedef Scene<DataType,dim> DH_Chain< DataType, dim >::SceneType

Constructor & Destructor Documentation

template<class DataType , int dim>
DH_Chain< DataType, dim >::~DH_Chain (  )  [inline]

Member Function Documentation

template<class DataType , int dim>
virtual void DH_Chain< DataType, dim >::AddJoint ( JointType j  )  [inline, virtual]
template<class DataType , int dim>
virtual void DH_Chain< DataType, dim >::AddJoint ( JointType j  )  [inline, virtual]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::addLink ( LinkType l  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::addLink ( LinkType l  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::addNativeLink ( LinkType l  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::addNativeLink ( LinkType l  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::addTernLink ( int  link,
int  nativeLink 
) [inline]
template<class DataType , int dim>
LinkType* DH_Chain< DataType, dim >::GetNthLink ( int  i  )  [inline]
template<class DataType , int dim>
LinkType* DH_Chain< DataType, dim >::GetNthNative ( int  i  )  [inline]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::GetNumLinks (  )  const [inline]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::GetNumNativeLinks (  )  const [inline]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::GetNumTernLinks (  )  const [inline]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::getParentChain (  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::setId ( int  val  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::setParentChain ( int  val  )  [inline]
template<class DataType , int dim>
void DH_Chain< DataType, dim >::updateLinks (  )  [inline]

Friends And Related Function Documentation

template<class DataType , int dim>
friend class DH_Link< DataType, dim > [friend]
template<class DataType , int dim>
friend class Joint< DataType, dim > [friend]
template<class DataType , int dim>
friend class Scene< DataType, dim > [friend]
template<class DataType , int dim>
friend class SceneBase< DataType, dim > [friend]

Member Data Documentation

template<class DataType , int dim>
int DH_Chain< DataType, dim >::id [protected]

index number in Scene DH_chains

Referenced by DH_Chain< DataType, dim >::DH_Chain().

template<class DataType , int dim>
bool DH_Chain< DataType, dim >::mobile [protected]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::num_joints [protected]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::num_links [protected]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::num_natives [protected]
template<class DataType , int dim>
int DH_Chain< DataType, dim >::num_terNlinks [protected]
template<class DataType , int dim>
std::vector<boost::array<int, 2> > DH_Chain< DataType, dim >::terNlinks [protected]

terNlinks[$i$][$a_i$][$b_i$] indicates the $ i^{th} $ ternery link fromed by links[$a_i$] and natives[$b_i$]. It relates a Part's or Assembly's $ oxyz $ (natives[$b_i$]->child points to a joint at $ oxyz $) to link[$a_i$] in the kinetic chain.
The three distinct joints are links[$a_i$]->parent, links[$a_i$]->child $ \equiv $ natives[$b_i$]->parent, and natives[$b_i$]->child.

Referenced by DH_Chain< DataType, dim >::addTernLink(), DH_Chain< DataType, dim >::Checkpointing(), DH_Chain< DataType, dim >::DH_Chain(), DH_Chain< DataType, dim >::GetNumTernLinks(), DH_Chain< DataType, dim >::print(), and DH_Chain< DataType, dim >::Restart().


The documentation for this class was generated from the following file:
Generated on Thu Jun 30 02:18:58 2016 for Motion - rigid body dynamics solver by  doxygen 1.6.3