ALBA
albaAnimate.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaAnimate
5 Authors: Paolo Quadrani
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 __albaAnimate_H__
18#define __albaAnimate_H__
19
20#include "albaObserver.h"
21#include "albaServiceClient.h"
22#include "albaAbsLogicManager.h"
23
24class albaVME;
25class albaTagArray;
26class albaGUIButton;
27class vtkRenderer;
28class albaGUI;
30
31//----------------------------------------------------------------------------
32// albaAnimate :
33//----------------------------------------------------------------------------
38class albaAnimate : public albaObserver, public albaServiceClient
39{
40public:
41
42 albaAnimate(vtkRenderer *renderer, albaVME *vme, albaObserver *listener = NULL);
44 void OnEvent(albaEventBase *alba_event);
45 void SetListener(albaObserver *listener);
46
49
51 void SetInputVME(albaVME *vme);
52
54 void ResetKit();
55
57 void FlyTo(const char *fly_position);
58
61
64
65protected:
67 void SetCurrentSelection(int pos);
68
70 void FlyTo();
71
73 void RetrieveStoredPositions(bool update_listbox = true);
74
77
80
82 void DeleteViewPoint(int pos = 0);
83
85 void CreateGui();
86
89
90
93
95 void StorePoseToFile(albaString &fileName);
96
97
98
100
103
106 vtkRenderer *m_Renderer;
108
110 wxListBox *m_PositionList;
119};
120#endif // __albaAnimate_H__
This component allow to manage camera animation into a view.
Definition: albaAnimate.h:39
albaVME * m_Root
Definition: albaAnimate.h:102
void SetListener(albaObserver *listener)
albaGUI * m_Gui
Definition: albaAnimate.h:107
albaGUIButton * m_StorePositionButton
Definition: albaAnimate.h:111
void FlyTo(const char *fly_position)
Allow to fly on specified position present into the stored positions.
albaGUIMovieCtrl * m_AnimatePlayer
Definition: albaAnimate.h:117
albaTagArray * m_StoredPositions
Definition: albaAnimate.h:105
void FlyTo()
Move the camera to the target position.
void RetrieveStoredPositions(bool update_listbox=true)
Read root node's tags to retrieve previous stored camera positions.
albaGUI * GetGui()
Return albaAnimate User Interface.
void OnEvent(albaEventBase *alba_event)
process the events sent by subjects
int m_InterpolateFlag
Definition: albaAnimate.h:118
void StorePoseToFile(albaString &fileName)
Store poses to file.
void CreateGui()
Create the GUI for the FlyTo animation.
wxListBox * m_PositionList
Definition: albaAnimate.h:110
void StoreViewPoint()
Store a view position into the root's tag array.
albaTagArray * m_Tags
Definition: albaAnimate.h:104
void EnableWidgets()
Enable-Disable the GUI's widgets.
vtkRenderer * m_Renderer
Definition: albaAnimate.h:106
void SetStoredPositions(albaTagArray *positions)
Set the list of stored position given by the user.
void DeleteViewPoint(int pos=0)
Delete the view position.
wxString m_SelectedPosition
Definition: albaAnimate.h:109
albaGUIButton * m_RenamePositionButton
Definition: albaAnimate.h:113
void LoadPoseFromFile(albaString &fileName)
Load poses from file.
albaGUIButton * m_ExportPositionButton
Definition: albaAnimate.h:116
albaGUIButton * m_RefreshPositionButton
Definition: albaAnimate.h:114
void RenameViewPoint()
Rename the view position.
albaAnimate(vtkRenderer *renderer, albaVME *vme, albaObserver *listener=NULL)
void ResetKit()
delete All entries in listbox.
albaGUIButton * m_DeletePositionButton
Definition: albaAnimate.h:112
albaObserver * m_Listener
Definition: albaAnimate.h:99
albaTagArray * GetStoredPositions()
Return the tag-array containing the stored positions (tag) list.
albaGUIButton * m_ImportPositionButton
Definition: albaAnimate.h:115
albaVME * m_Vme
Definition: albaAnimate.h:101
void SetCurrentSelection(int pos)
Select the item into the listbox and update the validator of the widget.
void SetInputVME(albaVME *vme)
set the vme that hold the tag-array where the ViewPoint are stored
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
albaGUIButton inherit from wxButton.
Definition: albaGUIButton.h:35
albaGUIMovieCtrl is a wxPanel with a set of widget to handle time.
albaGUI is a panel with function to easily create GUI.
Definition: albaGUI.h:110
Interface implementing the Observer of the Subject/Observer design pattern.
Definition: albaObserver.h:36
albaString - performs common string operations on c-strings.
Definition: albaString.h:43
An attribute used to store an associtive array of <key,value> pairs, where value is multi component.
Definition: albaTagArray.h:37
albaVME -
Definition: albaVME.h:150