OrbitCamera.h 534 Bytes
Newer Older
Anakin's avatar
Anakin committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
#pragma once
#include "CameraInterface.h"


class OrbitCamera : public CameraInterface
{
public:
	explicit OrbitCamera();
	virtual ~OrbitCamera();

	// attributes
private:
	double m_phi;
	double m_theta;
	double m_roh;
Anakin's avatar
Anakin committed
16
	QVector3D m_center;
Anakin's avatar
Anakin committed
17 18 19 20 21 22 23 24 25

	// functions
public:
	virtual void rotateAction(QVector2D diff) Q_DECL_OVERRIDE;
	virtual void moveAction(QVector2D diff) Q_DECL_OVERRIDE;
	virtual void wheelAction(double value) Q_DECL_OVERRIDE;
	virtual void recalculateMatrix() Q_DECL_OVERRIDE;
	virtual void resetView() Q_DECL_OVERRIDE;
};