diff options
Diffstat (limited to 'eigen/demos/opengl/quaternion_demo.h')
-rw-r--r-- | eigen/demos/opengl/quaternion_demo.h | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/eigen/demos/opengl/quaternion_demo.h b/eigen/demos/opengl/quaternion_demo.h deleted file mode 100644 index dbff46c..0000000 --- a/eigen/demos/opengl/quaternion_demo.h +++ /dev/null @@ -1,114 +0,0 @@ -// This file is part of Eigen, a lightweight C++ template library -// for linear algebra. -// -// Copyright (C) 2008 Gael Guennebaud <gael.guennebaud@inria.fr> -// -// This Source Code Form is subject to the terms of the Mozilla -// Public License v. 2.0. If a copy of the MPL was not distributed -// with this file, You can obtain one at http://mozilla.org/MPL/2.0/. - -#ifndef EIGEN_QUATERNION_DEMO_H -#define EIGEN_QUATERNION_DEMO_H - -#include "gpuhelper.h" -#include "camera.h" -#include "trackball.h" -#include <map> -#include <QTimer> -#include <QtGui/QApplication> -#include <QtOpenGL/QGLWidget> -#include <QtGui/QMainWindow> - -class RenderingWidget : public QGLWidget -{ - Q_OBJECT - - typedef std::map<float,Frame> TimeLine; - TimeLine m_timeline; - Frame lerpFrame(float t); - - Frame mInitFrame; - bool mAnimate; - float m_alpha; - - enum TrackMode { - TM_NO_TRACK=0, TM_ROTATE_AROUND, TM_ZOOM, - TM_LOCAL_ROTATE, TM_FLY_Z, TM_FLY_PAN - }; - - enum NavMode { - NavTurnAround, - NavFly - }; - - enum LerpMode { - LerpQuaternion, - LerpEulerAngles - }; - - enum RotationMode { - RotationStable, - RotationStandard - }; - - Camera mCamera; - TrackMode mCurrentTrackingMode; - NavMode mNavMode; - LerpMode mLerpMode; - RotationMode mRotationMode; - Vector2i mMouseCoords; - Trackball mTrackball; - - QTimer m_timer; - - void setupCamera(); - - std::vector<Vector3f> mVertices; - std::vector<Vector3f> mNormals; - std::vector<int> mIndices; - - protected slots: - - virtual void animate(void); - virtual void drawScene(void); - - virtual void grabFrame(void); - virtual void stopAnimation(); - - virtual void setNavMode(int); - virtual void setLerpMode(int); - virtual void setRotationMode(int); - virtual void resetCamera(); - - protected: - - virtual void initializeGL(); - virtual void resizeGL(int width, int height); - virtual void paintGL(); - - //-------------------------------------------------------------------------------- - virtual void mousePressEvent(QMouseEvent * e); - virtual void mouseReleaseEvent(QMouseEvent * e); - virtual void mouseMoveEvent(QMouseEvent * e); - virtual void keyPressEvent(QKeyEvent * e); - //-------------------------------------------------------------------------------- - - public: - EIGEN_MAKE_ALIGNED_OPERATOR_NEW - - RenderingWidget(); - ~RenderingWidget() { } - - QWidget* createNavigationControlWidget(); -}; - -class QuaternionDemo : public QMainWindow -{ - Q_OBJECT - public: - QuaternionDemo(); - protected: - RenderingWidget* mRenderingWidget; -}; - -#endif // EIGEN_QUATERNION_DEMO_H |