00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef CMDTRANS_H
00023 #define CMDTRANS_H
00024
00025 #include "Command.h"
00026 #include "Matrix4.h"
00027
00029 class CmdRotMat : public Command {
00030 public:
00032 enum { BY, TO };
00033 Matrix4 rotMat;
00034 int byOrTo;
00035
00036 protected:
00037 virtual void create_text(void);
00038
00039 public:
00040 CmdRotMat(const Matrix4& newrot, int by_or_to);
00041 };
00042
00043
00045 class CmdRotate : public Command {
00046 public:
00047 enum { BY, TO };
00048 char axis;
00049 float deg;
00050 int byOrTo;
00051 int steps;
00052
00053 protected:
00054 virtual void create_text(void);
00055
00056 public:
00058 CmdRotate(float a, char ax, int by_or_to);
00059
00063 CmdRotate(float a, char ax, int by_or_to, float inc);
00064 };
00065
00066
00068 class CmdTranslate : public Command {
00069 public:
00070 enum { BY, TO };
00071 float x, y, z;
00072 int byOrTo;
00073
00074 protected:
00075 virtual void create_text(void);
00076
00077 public:
00078 CmdTranslate(float nx, float ny, float nz, int by_or_to);
00079 };
00080
00081
00083 class CmdScale : public Command {
00084 public:
00085 enum { BY, TO };
00086 float s;
00087 int byOrTo;
00088
00089 protected:
00090 virtual void create_text(void);
00091
00092 public:
00093 CmdScale(float ns, int by_or_to);
00094 };
00095
00096
00098 class CmdRockOn : public Command {
00099 public:
00100 char axis;
00101 float deg;
00102 int steps;
00103
00104 protected:
00105 virtual void create_text(void);
00106
00107 public:
00108 CmdRockOn(float a, char ax, int nsteps);
00109 };
00110
00111
00113 class CmdRockOff : public Command {
00114 protected:
00115 virtual void create_text(void);
00116
00117 public:
00118 CmdRockOff() ;
00119 };
00120
00121 #endif
00122