summaryrefslogtreecommitdiff
path: root/camera.h
diff options
context:
space:
mode:
authorIan C <ianc@noddybox.co.uk>2006-05-02 19:12:46 +0000
committerIan C <ianc@noddybox.co.uk>2006-05-02 19:12:46 +0000
commit99778e9b85bd4a16a9055587a273446068577100 (patch)
tree5bd5c5a0fb48f52f306a2a8b19de200800ada7df /camera.h
parentf77e2736cea27ddbcaa44ffb28b326846891029e (diff)
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'camera.h')
-rw-r--r--camera.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/camera.h b/camera.h
new file mode 100644
index 0000000..d1c39c0
--- /dev/null
+++ b/camera.h
@@ -0,0 +1,58 @@
+//
+// glgrav - OpenGL N-Body gravity simulator
+//
+// Copyright (C) 2003 Ian Cowburn (ianc@noddybox.demon.co.uk)
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// -------------------------------------------------------------------------
+//
+// Camera handling
+//
+// $Id$
+//
+#ifndef CAMERA_H
+
+#define CAMERA_H
+
+#include "global.h"
+#include "matrix.h"
+
+class Camera
+ {
+ public:
+ Camera();
+ virtual ~Camera();
+
+ // Initially the camera always looks along the Z axis
+ //
+ void setPos(GLfloat x, GLfloat y, GLfloat z);
+
+ void addSpeed(GLfloat speed);
+ void roll(double angle);
+ void pitch(double angle);
+
+ void setView() const;
+
+ private:
+ GLfloat px,py,pz;
+ Matrix direction;
+ Matrix left;
+ Matrix up;
+ };
+
+#endif
+
+// END OF FILE //