Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

CmdTrans.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *cr                                                                       
00003  *cr            (C) Copyright 1995-2019 The Board of Trustees of the           
00004  *cr                        University of Illinois                       
00005  *cr                         All Rights Reserved                        
00006  *cr                                                                   
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  * RCS INFORMATION:
00011  *
00012  *      $RCSfile: CmdTrans.h,v $
00013  *      $Author: johns $        $Locker:  $                $State: Exp $
00014  *      $Revision: 1.33 $      $Date: 2019/01/17 21:20:58 $
00015  *
00016  ***************************************************************************
00017  * DESCRIPTION:
00018  * 
00019  * Command objects for transforming the current scene.
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 

Generated on Fri Nov 8 02:44:03 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002