Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members  

SIG_DynaMechsLink.h

00001 #ifndef SIGEL_SIMULATION_SIG_DYNAMECHSLINK_H
00002 #define SIGEL_SIMULATION_SIG_DYNAMECHSLINK_H
00003 
00004 #include "SIGEL_Robot/SIG_Link.h"
00005 
00006 #include <dm.h>
00007 #include <dmRigidBody.hpp>
00008 #include <dmZScrewTxLink.hpp>
00009 
00010 #include <qlist.h>
00011 
00012 namespace SIGEL_Simulation
00013 {
00014 
00015 class SIG_DynaMechsLink
00016   {
00017 
00018   public:
00019 
00020     SIG_DynaMechsLink( int dynaMechsLinkNumber,
00021                        SIGEL_Robot::SIG_Link const *link,
00022                        dmRigidBody *dynaMechsLink,
00023                        double screwD,
00024                        double screwTheta );
00025 
00026     int const dynaMechsLinkNumber;
00027 
00028     SIGEL_Robot::SIG_Link const * const link;
00029 
00030     double const screwD;
00031 
00032     double const screwTheta;
00033 
00034     dmZScrewTxLink *screwLink;
00035 
00036     dmRigidBody * const dynaMechsLink;
00037 
00038     NEWMAT::Matrix transformation;
00039 
00040     QList< SIG_DynaMechsLink > successors;
00041 
00042     void forwardKinematics( SIG_DynaMechsLink *caller );
00043 
00044     NEWMAT::Matrix buildXRotationMatrix( double angle );
00045 
00046     NEWMAT::Matrix buildZRotationMatrix( double angle );
00047 
00048     NEWMAT::Matrix buildTranslationMatrix( double x,
00049                                            double y,
00050                                            double z );
00051   };
00052 
00053 }
00054 
00055 #endif // SIGEL_SIMULATION_SIG_DYNAMECHSLINK_H

Generated at Mon Sep 3 01:32:19 2001 for PG 368 - SIGEL by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000