ALBA
albaGizmoInteractionDebugger.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaGizmoInteractionDebugger
5 Authors: Stefano Perticoni
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 __albaGizmoInteractionDebugger_h
18#define __albaGizmoInteractionDebugger_h
19
20
21//----------------------------------------------------------------------------
22// Include:
23//----------------------------------------------------------------------------
24#include "albaDefines.h"
25#include "albaGizmoInterface.h"
26#include "albaMatrix.h"
28
29//---------------------------------------------------------------------------
30// forward refs:
31//---------------------------------------------------------------------------
34
35
36class albaEvent;
37class albaVME;
38class albaVMEGizmo;
39class albaVME;
40
41class vtkLineSource;
42class vtkSphereSource;
43class vtkPlaneSource;
44class vtkAppendPolyData;
45
46class albaVMEPolylineGraph;
48
54{
55public:
56
58 albaGizmoInteractionDebugger(albaVME* inputVme, albaObserver *Listener = NULL, const char *name = "GizmoPath", bool testMode = false);
59
61
63 void SetConstraintPolylineGraph(albaVMEPolylineGraph* constraintPolylineGraph);
64
66 void SetCurvilinearAbscissa(vtkIdType branchId, double s);
67
70
72 vtkIdType GetActiveBranchId();;
73
75 void SetGizmoLength (double lineLength);
76
79 void Show(bool show) ;
80
82 void OnEvent(albaEventBase *alba_event);
83
85 void SetInput(albaVME *vme) {return;};
86
88 void SetColor(double col[3]);
89
92
93protected:
94
95
96
97 void Constructor(albaVME *imputVme, albaObserver *listener, const char *name, bool testMode = false);
98 void Destructor();
99
104
106
108 albaVMEGizmo *m_VmeGizmo;
111
112 vtkLineSource *m_LineSource;
113 vtkSphereSource *m_SphereSource;
114 vtkPlaneSource *m_PlaneSource;
115 vtkAppendPolyData *m_AppendPolyData;
116
118
120 {
121 FREE = 0,
125 };
126
127};
128
129#endif
Decorate input vme with curvilinear abscissa interface for albaVMEPolylineGraph constrained interacti...
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
albaEvent - Class implementing ALBA application events.
Definition: albaEvent.h:55
albaGUI is a panel with function to easily create GUI.
Definition: albaGUI.h:110
Gizmo Helper Object for interaction stuff debug: this class should be expanded and refactored increme...
void SetGizmoLength(double lineLength)
Set the length of the gizmo.
void SetConstraintPolylineGraph(albaVMEPolylineGraph *constraintPolylineGraph)
Set the constraint polyline graph.
albaCurvilinearAbscissaOnSkeletonHelper * m_CurvilinearAbscissaHelper
void SetCurvilinearAbscissa(vtkIdType branchId, double s)
Set curvilinear abscissa along given constraint skeleton branch.
void SetColor(double col[3])
Set the gizmo color.
void LogTransformEvent(albaEvent *e)
void OnEvent(albaEventBase *alba_event)
Events handling method.
albaInteractorGenericMouse * m_LeftMouseInteractor
albaGUI * GetGui()
Get the gizmo gui.
void Show(bool show)
Show/Hide the gizmos using actor visibility instead of pipe creation/destruction: this is used for fa...
void SetInput(albaVME *vme)
Not used since this gizmo is not moving anything.
vtkIdType GetActiveBranchId()
Get the active branch ie the branch to which gizmo is currently constrained.
albaGizmoInteractionDebugger(albaVME *inputVme, albaObserver *Listener=NULL, const char *name="GizmoPath", bool testMode=false)
inputVME is used just to put the gizmo on the vme tree: this gizmo is not moving anything but itself
albaInteractorCompositorMouse * m_GizmoInteractor
double GetCurvilinearAbscissa()
Get curvilinear abscissa along given constraint skeleton branch.
void Constructor(albaVME *imputVme, albaObserver *listener, const char *name, bool testMode=false)
Base class for operations and views gizmos.
Associates instances of albaInteractorGenericMouse to mouse buttons and ctrl/shift keys combinations.
Constrained interaction with mouse device.
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
albaVME -
Definition: albaVME.h:150