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

SIG_Body.h

00001 #ifndef SIGEL_ROBOT_SIG_BODY_H
00002 #define SIGEL_ROBOT_SIG_BODY_H
00003 
00004 namespace SIGEL_Robot { class SIG_Body; }
00005 #include <qstring.h>
00006 #include <CyberVRML97.h>
00007 #include <newmat.h>
00008 #include <cstdlib>
00009 #include <qlist.h>
00010 #include <qvector.h>
00011 #include <pointvector.h>
00012 #include <matrix.h>
00013 #include "SIGEL_Robot/SIG_Robot.h"
00014 #include "SIGEL_Robot/SIG_Link.h"
00015 #include "SIGEL_Robot/SIG_Geometry.h"
00016 
00017 namespace SIGEL_Robot
00018 {
00028         class SIG_Body {
00029         private:
00030                 SIG_Robot *parent;
00031                 QList<SIG_Link> usedByLinks;
00032                 QString geometryFile, directory;
00033                 SIG_Geometry *geometry;
00034    
00035         public:
00039                 SIG_Body (SIG_Robot *par, QString f, QString d);
00046                 SIG_Body (SIG_Robot *par, QTextStream & tx);
00050                 ~SIG_Body (void);
00051                 
00056                 void addUsingLink (SIG_Link* user);
00057 
00065                 void load ();
00066                 
00073                 NEWMAT::Matrix SIG_Body::createRotationMatrix( QArray< float > rotation );
00074                 
00084                 void readVRMLNode(Node *node, NEWMAT::Matrix transformation);
00085 
00093                 void setGeometry (SIG_Geometry *geo);
00094                 
00098                 SIG_Geometry const *getGeometry (void) const;
00099                 
00104                 void writeToFileTransfer (QTextStream & tx);
00105                 
00109                 QString getGeometryFile (void) const;
00110                 
00115                 QString getName (void) const;
00116         };
00117 }
00118 
00119 #endif // SIGEL_ROBOT_SIG_BODY_H

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