gee_transformation.h

Go to the documentation of this file.
00001 /* -*- C++ -*- */
00002 
00003 /* COPYRIGHT
00004  *
00005  * This file is part of the Visual Effects Engine - VEE
00006  *
00007  * Read the "VEE-LICENSE" file for the license.
00008  *
00009  * Authors & Copyright:   
00010  *
00011  * Tommi Ilmonen, Tuukka Heikura, Marko Myllymaa and 
00012  * Janne Kontkanen 2001-2004
00013  *
00014  * Additional copyrights: Tekes 2003-2004
00015  *
00016  * firstname.lastname@hut.fi
00017  *
00018  */
00019 
00020 #ifndef GEE_TRANSFORMATION_H
00021 #define GEE_TRANSFORMATION_H
00022 
00023 #include <gee_geometry.h>
00024 
00025 #include <vee_clonable_pointer.h>
00026 #include <vee_matrix4.h>
00027 
00034 class GEE_Transformation : public GEE_Geometry
00035 {
00036 public:
00037   GEE_Transformation();
00038   virtual ~GEE_Transformation();
00039 
00040   virtual GEE_Geometry * clone() const;
00041   virtual GEE_Geometry * removeData(const VEE_Vector3 &loc, float radius);
00042   virtual void render(GEE_Renderer *);
00043   virtual bool getBoundingBox(VEE_BoundingBox *);
00044   virtual bool move(const VEE_Vector3 & offset);
00045 
00046   void setTransformation(const VEE_Matrix4 &t) { m_transformation = t; }
00047 
00048   VEE_Matrix4 &       transformation() { return m_transformation; }
00049   const VEE_Matrix4 & transformation() const { return m_transformation; }
00050 
00051   void setChild(GEE_Geometry *data) { m_child = data; }
00052 
00053 protected:
00054 
00055   VEE_Matrix4 m_transformation;
00056 
00057   VEE_ClonablePointer<GEE_Geometry> m_child;
00058 };
00059 
00060 #endif

Generated on Mon Mar 12 21:09:00 2007 for VEE - The Visual Effects Engine by  doxygen 1.4.6