ALBA
albaInteractor6DOFCameraMove.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaInteractor6DOFCameraMove
5 Authors: Michele Diegoli & Marco Petrone
6
7 Copyright (c) BIC
8 All rights reserved. See Copyright.txt or
9
10
11 This software is distributed WITHOUT ANY WARRANTY; without even
12 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13 PURPOSE. See the above copyright notice for more information.
14
15=========================================================================*/
16
17#ifndef __albaInteractor6DOFCameraMove_h
18#define __albaInteractor6DOFCameraMove_h
19
20#include "albaInteractor6DOF.h"
21#include "albaMTime.h"
22
23//----------------------------------------------------------------------------
24// forward declarations :
25//----------------------------------------------------------------------------
26class vtkCamera;
27
34{
35public:
37
40
42 virtual void OnEvent(albaEventBase *event);
43
44protected:
47
48 virtual void Update();
49
50 //double m_ObjectOrientation[3]; ///< orientation of the object at last Update
51 //double m_ObjectPosition[3]; ///< position of the object at last Update
52 double m_StartCameraPosition[4];
53 double m_StartFocalPoint[4];
54 double m_StartViewUp[4];
55 double m_StartOrientation[4];
56 double m_OldZ;
57
58// bool m_ActiveCameraToCurrentCameraFlag;
59 vtkCamera* m_CurrentCamera;
61
62private:
64 void operator=(const albaInteractor6DOFCameraMove&); // Not implemented.
65
67 friend class albaInteractor6DOFCameraMoveTest;
68
69};
70
71#endif
Generic spatial position tracking device.
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
implements 6DOF move of camera in the scene.
virtual void OnEvent(albaEventBase *event)
Process events coming from tracker.
albaMTime m_UpdateTime
Timestamp of the last update of the tracker to world transformation.
vtkCamera * m_CurrentCamera
Stores camera to which the interaction is currently assigned.
albaTypeMacro(albaInteractor6DOFCameraMove, albaInteractor6DOF)
virtual int StartInteraction(albaDeviceButtonsPadTracker *tracker, albaMatrix *pose=NULL)
Start the interaction with the selected object.
base class for 3D interaction modalities with 6DOF
albaMTime - record modification timestamp.
Definition: albaMTime.h:38
albaMatrix - Time stamped 4x4 Matrix.
Definition: albaMatrix.h:44