summaryrefslogtreecommitdiff
path: root/src/gui/Camera.h
diff options
context:
space:
mode:
authorJakob Odersky <jodersky@gmail.com>2011-04-04 22:13:09 +0000
committerJakob Odersky <jodersky@gmail.com>2011-04-04 22:13:09 +0000
commit5e4537347bd24712211261e412bc9bfd684c60e7 (patch)
tree7fcbf19fbbaae0fcc0b080a30f09ff786ff6782f /src/gui/Camera.h
parent199fd6d577b914d083db9dd845e0b7f94960eac3 (diff)
downloadvhc-5e4537347bd24712211261e412bc9bfd684c60e7.tar.gz
vhc-5e4537347bd24712211261e412bc9bfd684c60e7.tar.bz2
vhc-5e4537347bd24712211261e412bc9bfd684c60e7.zip
Continuation de l'interface graphique, changements du visitor pattern.
Diffstat (limited to 'src/gui/Camera.h')
-rw-r--r--src/gui/Camera.h22
1 files changed, 16 insertions, 6 deletions
diff --git a/src/gui/Camera.h b/src/gui/Camera.h
index fa17c58..75e07b2 100644
--- a/src/gui/Camera.h
+++ b/src/gui/Camera.h
@@ -8,20 +8,30 @@
#ifndef CAMERA_H_
#define CAMERA_H_
#include <math.h>
+#include <QtOpenGL>
#include "exception.h"
class Camera {
private:
- double _x;
- double _y;
- double _z;
-
public:
- Camera(double x, double y, double z): _x(x), _y(y), _z(z) {};
- virtual ~Camera();
+ double r;
+ double theta;
+ double phi;
+
+ Camera(double r, double theta, double phi): r(r), theta(theta), phi(phi) {};
+ virtual ~Camera() {};
+
+
+ void setView() {
+ double eyeX, eyeY, eyeZ;
+ toCarthesian(r, theta, phi, eyeX, eyeY, eyeZ);
+ gluLookAt(eyeX,eyeY,eyeZ,
+ 0,0,0,
+ 0,1,0);
+ }
static double sign(double value) {return (value > 0) - (value < 0);}