use class for camera handling,
orbit does not work. Need to figure out why
This commit is contained in:
26
QtMeshViewer/Header/CameraInterface.h
Normal file
26
QtMeshViewer/Header/CameraInterface.h
Normal file
@@ -0,0 +1,26 @@
|
||||
#pragma once
|
||||
#include <QMatrix4x4>
|
||||
|
||||
class CameraInterface
|
||||
{
|
||||
public:
|
||||
explicit CameraInterface() {};
|
||||
virtual ~CameraInterface() {};
|
||||
|
||||
// attributes
|
||||
protected:
|
||||
QMatrix4x4 m_matrix;
|
||||
double m_zSpeed = 1.0;
|
||||
|
||||
// functions
|
||||
public:
|
||||
virtual void setZoomSpeed(int percent) { m_zSpeed = (double) percent / 100; };
|
||||
|
||||
virtual void rotateAction(QVector2D diff) = 0;
|
||||
virtual void moveAction(QVector2D diff) = 0;
|
||||
virtual void wheelAction(double value) = 0;
|
||||
virtual void resetView() { m_matrix = QMatrix4x4(); m_zSpeed = 1.0; };
|
||||
|
||||
virtual void recalculateMatrix() = 0;
|
||||
virtual QMatrix4x4 getMatrix() { recalculateMatrix(); return m_matrix; };
|
||||
};
|
||||
Reference in New Issue
Block a user