00001 /* -*- C++ -*- */ 00002 00003 /* COPYRIGHT 00004 * 00005 * This file is part of the Simple Object Loader and Renderer - SOLAR 00006 * 00007 * Read the file "SOLAR-LICENSE" for the license. 00008 * 00009 * Authors & Copyright: 00010 * 00011 * Tommi Ilmonen, 2001-2003, except LWO-code by RJ, 2001-2003 00012 * 00013 * Tommi's email: firstname.lastname@hut.fi 00014 * 00015 */ 00016 00017 #ifndef SOLAR_ROTATING_OBJECT_HPP 00018 #define SOLAR_ROTATING_OBJECT_HPP 00019 00020 // #include <Solar/RotatingObject.hpp> 00021 #include <Solar/Object.hpp> 00022 00023 00024 namespace Solar { 00025 00027 class RotatingObject : public Object 00028 { 00029 public: 00030 RotatingObject(); 00031 virtual ~RotatingObject(); 00032 00033 virtual void update(float dt); 00034 00035 void setRotationAxis(const Fluid::Vector3 &axis) { m_rotationAxis = axis; } 00036 void setAngle(float radians) { m_angle = radians; } 00037 void setOmega(float o) { m_omega = o; } 00038 00039 protected: 00040 Fluid::Vector3 m_rotationAxis; 00041 float m_angle; 00042 float m_omega; 00043 }; 00044 00045 00046 } // namespace Solar 00047 00048 00049 00050 #endif