28#ifndef __albaGizmoCrossRotateAxis_H__
29#define __albaGizmoCrossRotateAxis_H__
37#include "vtkConeSource.h"
38#include "vtkTransform.h"
39#include "vtkTransformPolyDataFilter.h"
40#include "vtkDiskSource.h"
41#include "vtkCleanPolyData.h"
42#include "vtkTubeFilter.h"
54class vtkCleanPolyData;
56class vtkTransformPolyDataFilter;
58class vtkAppendPolyData;
154 void SetColor(
double colR,
double colG,
double colB);
Hold a reference to a T instance.
Implementation of the message object for the Subject/Observer design pattern.
Basic gizmo component used to perform constrained rotation around an axis.
void SetListener(albaObserver *Listener)
Set the event receiver object.
vtkTransform * m_FGRotationTr
vtkTubeFilter * m_LinesTubeFilter
vtkTransformPolyDataFilter * m_RightUpFeedbackConeTransformPDF
virtual void OnEvent(albaEventBase *alba_event)
Events handling.
albaGizmoCrossRotateAxis(albaVME *input, albaObserver *listener=NULL)
void SetGizmoDirection(int direction)
Set the gizmo visual representation: NS vs EW.
void SetColor(double colR, double colG, double colB)
vtkTransform * m_RightUpFeedbackConeTransform
vtkAppendPolyData * m_FeedbackStuffAppendPolydata
void SetInput(albaVME *vme)
Set the gizmo generating vme; the gizmo will be centered on this vme.
void CreateFeedbackGizmoPipeline()
Create motion feedback gizmo vtk objects.
vtkTubeFilter * m_FGCircleTF
albaVME * m_InputVme
Register input vme.
albaVMEGizmo * m_GizmoCross
Circle gizmo.
void ShowTranslationFeedbackArrows(bool show)
Show the translation feedback arrows
vtkTransform * m_RightDownFeedbackConeTransform
vtkDiskSource * m_FGCircle
int GetAxis()
Get the gizmo axis.
albaMatrix * GetAbsPose()
Get the gizmo abs pose.
void SetRotationAxis(int axis)
Set/Get the gizmo axis, default axis is X.
vtkTubeFilter * m_FGCircleTubeFilter
void SetColor(double col[3])
Gizmo color setting facilities for gizmo segments;.
vtkConeSource * m_FeedbackConeSource
vtkTransform * m_FGRotationTransform
albaVMEGizmo * m_RotationFeedbackGizmo
vtkLineSource * m_LineSourceWest
double GetRadius()
Get the radius of the gizmo.
vtkAppendPolyData * m_LinesAppendPolyData
albaAutoPointer< albaMatrix > m_AbsInputMatrix
vtkLineSource * m_LineSourceEast
Create the circle polydata.
vtkTransform * m_LinesRotationTransform
rotation transform
void Show(bool show)
Show the translation gizmo.
vtkCleanPolyData * m_FGCleanCircle
vtkTransformPolyDataFilter * m_RightDownFeedbackConeTransformPDF
virtual ~albaGizmoCrossRotateAxis()
albaInteractorGenericMouse * m_IsaGen
isa generic
bool m_IsActive
Register Gizmo status.
vtkTransform * m_LeftDownFeedbackConeTransform
vtkTransformPolyDataFilter * m_LinesRotatePDF
rotate PDF for gizmo
albaInteractorGenericInterface * GetInteractor()
Get the gizmo interactor.
double m_Radius
Register gizmo radius.
albaInteractorCompositorMouse * m_IsaComp
isa compositor
vtkTransformPolyDataFilter * m_LeftDownFeedbackConeTransformPDF
void Highlight(bool highlight)
Highlight gizmo.
int m_RotationAxis
Register the gizmo axis.
albaObserver * m_Listener
Register the event receiver object.
vtkLineSource * m_LineSourceSouth
void SetRefSysMatrix(albaMatrix *matrix)
Set the reference system matrix and the Pivot ref sys matrix.
vtkTransformPolyDataFilter * m_FGRotatePDF
void CreatePipeline()
Create moving gizmo vtk objects.
void CreateISA()
Create isa stuff.
void SetAbsPose(albaMatrix *absPose)
Set the abs pose.
vtkTransform * m_LeftUpFeedbackConeTransform
vtkLineSource * m_LineSourceNorth
vtkCleanPolyData * m_LinesCleanCircle
vtkTransformPolyDataFilter * m_LeftUpFeedbackConeTransformPDF
void SetIsActive(bool isActive)
Set/Get the activation status of the gizmo, When the gizmo is active it is sending pose matrices to t...
Base class for operations and views gizmos.
Associates instances of albaInteractorGenericMouse to mouse buttons and ctrl/shift keys combinations.
Abstract class for general purpose interactor.
Constrained interaction with mouse device.
albaMatrix - Time stamped 4x4 Matrix.
Interface implementing the Observer of the Subject/Observer design pattern.