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

SIG_RotationalJoint.h

00001 #ifndef SIGEL_ROBOT_SIG_ROTATIONALJOINT_H
00002 #define SIGEL_ROBOT_SIG_ROTATIONALJOINT_H
00003 
00004 namespace SIGEL_Robot { class SIG_RotationalJoint; }
00005 
00006 #include "qstring.h"
00007 #include "pointvector.h"
00008 
00009 #include "SIGEL_Robot/SIG_Joint.h"
00010 
00011 namespace SIGEL_Robot {
00018   class SIG_RotationalJoint : public SIG_Joint {
00019   private:
00020     DL_vector leftBase, rightBase;
00021     DL_vector leftDir, rightDir;
00022     DL_vector leftHand, rightHand;
00023     DL_Scalar minimum, maximum, initial;
00024   public:
00025     SIG_RotationalJoint (SIG_Robot *par, QString n, int nr = -1);
00026     SIG_RotationalJoint (SIG_Robot *par, QTextStream & tx);
00027     virtual ~SIG_RotationalJoint (void);
00028     virtual JointType getJointType (void) const;
00029     void setLeftPoints (DL_vector B, DL_vector D, DL_vector H);
00030     void setRightPoints (DL_vector B, DL_vector D, DL_vector H);
00031     void setRange (DL_Scalar mn, DL_Scalar mx, DL_Scalar ii);
00032     DL_vector getLeftBase (void) const;
00033     DL_vector getLeftDir (void) const;
00034     DL_vector getLeftHand (void) const;
00035     DL_vector getRightBase (void) const;
00036     DL_vector getRightDir (void) const;
00037     DL_vector getRightHand (void) const;
00038     DL_Scalar getMin (void) const;
00039     DL_Scalar getMax (void) const;
00040     DL_Scalar getIni (void) const;
00041 
00042     virtual void transformPoints (SIG_Link *side,
00043                                   DL_vector mov, DL_matrix rot);
00044     virtual void getGeomRelation
00045       (DL_vector &t, DL_matrix &o, SIG_Link *origin);
00046     virtual void getMDH (SIG_Link * & predecessor,
00047                          double & a, double & alpha,
00048                          double & d, double & theta,
00049                          double & screwD, double & screwTheta);
00050     virtual void writeToFileTransfer (QTextStream & tx);
00051   };
00052 }
00053 
00054 #endif // SIGEL_ROBOT_SIG_ROTATIONALJOINT_H

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