/* gl/sphere.h This file is part of the Osirion project and is distributed under the terms of the GNU General Public License version 2 */ #ifndef __INCLUDED_GL_SPHERE_H__ #define __INCLUDED_GL_SPHERE_H__ #include "render/gl.h" namespace render { /// a drawable OpenGL block shape class Sphere { public: /// create a new sphere Sphere(math::Vector3f p = math::Vector3f(), float r = 1.0f); /// copy constructor Sphere(const Sphere &other); /// destructor ~Sphere(); /// assignment operator Sphere& operator=(const Sphere &other); /// radius of the sphere float radius; /// position of the sphere math::Vector3f position; /// draw the sphere void draw(); /// Top color math::Color topcolor; /// bottom color math::Color bottomcolor; private: float *sintable; float *costable; }; } // namespace gl #endif // __INCLUDED_GL_SPHERE_H__