ALBA
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends | List of all members
albaGizmoRotateFan Class Reference

#include <albaGizmoRotateFan.h>

Inheritance diagram for albaGizmoRotateFan:
Inheritance graph
[legend]
Collaboration diagram for albaGizmoRotateFan:
Collaboration graph
[legend]

Public Types

enum  AXIS { X = 0 , Y , Z }
 
- Public Types inherited from albaGizmoInterface
enum  MODALITY { G_LOCAL = 0 , G_GLOBAL }
 

Public Member Functions

 albaGizmoRotateFan (albaVME *input, albaObserver *listener=NULL)
 
virtual ~albaGizmoRotateFan ()
 
void SetInput (albaVME *vme)
 
albaVMEGetInput ()
 
void SetListener (albaObserver *Listener)
 
virtual void OnEvent (albaEventBase *alba_event)
 
void SetAxis (int axis)
 
int GetAxis ()
 
void Show (bool show)
 
void SetRadius (double radius)
 
double GetRadius ()
 
void SetAbsPose (albaMatrix *absPose)
 
void SetMediator (albaObserver *mediator)
 
- Public Member Functions inherited from albaGizmoInterface
void SetName (albaString name)
 
albaString GetName ()
 
virtual void SetInput (albaVME *vme)
 
albaVMEGetInput ()
 
void SetMediator (albaObserver *mediator)
 
albaObserverGetMediator ()
 
void SetAutoscale (bool autoscale)
 
bool GetAutoscale ()
 
void SetRenderWindowHeightPercentage (double percentage)
 
double GetRenderWindowHeightPercentage ()
 
void SetAlwaysVisible (bool alwaysVisible)
 
bool GetAlwaysVisible ()
 
void SetListener (albaObserver *listener)
 
albaObserverGetListener ()
 
virtual void OnEvent (albaEventBase *alba_event)
 
virtual void Show (bool show)
 
void SetModalityToLocal ()
 
void SetModalityToGlobal ()
 
int GetModality ()
 
virtual void SetAbsPose (albaMatrix *absPose)
 
virtual albaMatrixGetAbsPose ()
 
virtual albaGUIGetGui ()
 
- Public Member Functions inherited from albaObserver
 albaObserver ()
 
virtual ~albaObserver ()
 
virtual void OnEvent (albaEventBase *e)=0
 

Protected Types

enum  MIRROR_STATUS { OFF = 0 , ON }
 

Protected Member Functions

void CreatePipeline ()
 
void SetColor (double col[3])
 
void SetColor (double colR, double colG, double colB)
 
double PointPickedToStartTheta (double xp, double yp, double zp)
 
void SetRefSysMatrix (albaMatrix *matrix)
 
- Protected Member Functions inherited from albaGizmoInterface
 albaGizmoInterface ()
 
virtual ~albaGizmoInterface ()
 
void SendTransformMatrix (albaMatrix *matrix, int eventId, long arg)
 
virtual void OnEventGizmoGui (albaEventBase *alba_event)
 
virtual void OnEventGizmoComponents (albaEventBase *alba_event)
 

Protected Attributes

albaVMEm_InputVme
 
albaObserverm_Listener
 
int m_ActiveAxis
 
vtkSphereSource * m_Sphere
 
vtkTransform * m_RotateFanTransform
 
vtkTransformPolyDataFilter * m_RotateFanTPDF
 
vtkTransform * m_ChangeFanAxisTransform
 
vtkTransformPolyDataFilter * m_ChangeFanAxisTPDF
 
albaVMEGizmo * m_GizmoFan
 
double m_StartTheta
 
double m_EndTheta
 
int m_MirrorStatus
 
vtkTransform * m_MirrorTr
 
vtkTransform * m_BufferTr
 
vtkTransformPolyDataFilter * m_MirrorTPDF
 
albaRefSysm_RefSys
 
- Protected Attributes inherited from albaGizmoInterface
albaObserverm_Mediator
 
albaString m_Name
 
albaVMEm_InputVME
 
int m_Modality
 
albaObserverm_Listener
 
albaVMEm_RefSysVME
 
bool m_Visibility
 
double m_RenderWindowHeightPercentage
 
bool m_AlwaysVisible
 
bool m_Autoscale
 

Friends

class albaGizmoRotateFanTest
 

Detailed Description

Basic gizmo component used to give rotation angle feedback.

This gizmo draws a fan centered at rotation origin giving visual feedback for rotation angle value.

z               x              y
^               ^              ^
|               |              |p
|   /|          |  /|          |   /|
| /  |          |/  |          | /  |
x-------> y     y-------> z    z-------> x

    X               Y            Z

This component notifies the listener with the activeGizmoAxis
and the localRotationAngle around the activGizmoAxis

albaString activeGizmoAxis = *(event->GetString()); // "X", "Y" or "Z" string double localRotationAngle = event->GetDouble();

See also
albaGizmoRotate

Definition at line 58 of file albaGizmoRotateFan.h.

Member Enumeration Documentation

◆ AXIS

axis enum

Enumerator

Definition at line 84 of file albaGizmoRotateFan.h.

◆ MIRROR_STATUS

Enumerator
OFF 
ON 

Definition at line 159 of file albaGizmoRotateFan.h.

Constructor & Destructor Documentation

◆ albaGizmoRotateFan()

albaGizmoRotateFan::albaGizmoRotateFan ( albaVME input,
albaObserver listener = NULL 
)

◆ ~albaGizmoRotateFan()

virtual albaGizmoRotateFan::~albaGizmoRotateFan ( )
virtual

Member Function Documentation

◆ SetInput()

void albaGizmoRotateFan::SetInput ( albaVME vme)
virtual

Set the gizmo generating vme; the gizmo will be centered on this vme.

Reimplemented from albaGizmoInterface.

◆ GetInput()

albaVME * albaGizmoRotateFan::GetInput ( )
inline

Definition at line 67 of file albaGizmoRotateFan.h.

◆ SetListener()

void albaGizmoRotateFan::SetListener ( albaObserver Listener)
inline

Set the event receiver object.

Definition at line 74 of file albaGizmoRotateFan.h.

◆ OnEvent()

virtual void albaGizmoRotateFan::OnEvent ( albaEventBase alba_event)
virtual

Events handling.

Reimplemented from albaGizmoInterface.

◆ SetAxis()

void albaGizmoRotateFan::SetAxis ( int  axis)

Set/Get gizmo axis, default axis is X.

◆ GetAxis()

int albaGizmoRotateFan::GetAxis ( )

Get gizmo axis.

◆ Show()

void albaGizmoRotateFan::Show ( bool  show)
virtual

Show gizmo.

Reimplemented from albaGizmoInterface.

◆ SetRadius()

void albaGizmoRotateFan::SetRadius ( double  radius)

Set/Get the radius of the gizmo.

◆ GetRadius()

double albaGizmoRotateFan::GetRadius ( )

◆ SetAbsPose()

void albaGizmoRotateFan::SetAbsPose ( albaMatrix absPose)
virtual

Set the abs pose.

Reimplemented from albaGizmoInterface.

◆ SetMediator()

void albaGizmoRotateFan::SetMediator ( albaObserver mediator)

Superclass override.

◆ CreatePipeline()

void albaGizmoRotateFan::CreatePipeline ( )
protected

gizmo data

Create vtk objects needed

◆ SetColor() [1/2]

void albaGizmoRotateFan::SetColor ( double  col[3])
protected

m_Gizmo color setting facilities for gizmo segments;

◆ SetColor() [2/2]

void albaGizmoRotateFan::SetColor ( double  colR,
double  colG,
double  colB 
)
protected

◆ PointPickedToStartTheta()

double albaGizmoRotateFan::PointPickedToStartTheta ( double  xp,
double  yp,
double  zp 
)
protected

Get the start theta from abs pick coordinates.

◆ SetRefSysMatrix()

void albaGizmoRotateFan::SetRefSysMatrix ( albaMatrix matrix)
protected

Set the reference system matrix.

Reference system type is set to CUSTOM.

Friends And Related Function Documentation

◆ albaGizmoRotateFanTest

friend class albaGizmoRotateFanTest
friend

Test Friend.

Definition at line 178 of file albaGizmoRotateFan.h.

Member Data Documentation

◆ m_InputVme

albaVME* albaGizmoRotateFan::m_InputVme
protected

Register input vme.

Definition at line 118 of file albaGizmoRotateFan.h.

◆ m_Listener

albaObserver* albaGizmoRotateFan::m_Listener
protected

Register the event receiver object.

Definition at line 122 of file albaGizmoRotateFan.h.

◆ m_ActiveAxis

int albaGizmoRotateFan::m_ActiveAxis
protected

Register the gizmo axis.

Definition at line 125 of file albaGizmoRotateFan.h.

◆ m_Sphere

vtkSphereSource* albaGizmoRotateFan::m_Sphere
protected

Create the sphere.

Definition at line 128 of file albaGizmoRotateFan.h.

◆ m_RotateFanTransform

vtkTransform* albaGizmoRotateFan::m_RotateFanTransform
protected

Transform to rotate the fan around Z axis after creation to match new m_StartTheta angle.

Definition at line 132 of file albaGizmoRotateFan.h.

◆ m_RotateFanTPDF

vtkTransformPolyDataFilter* albaGizmoRotateFan::m_RotateFanTPDF
protected

Definition at line 134 of file albaGizmoRotateFan.h.

◆ m_ChangeFanAxisTransform

vtkTransform* albaGizmoRotateFan::m_ChangeFanAxisTransform
protected

sphere transform

Definition at line 137 of file albaGizmoRotateFan.h.

◆ m_ChangeFanAxisTPDF

vtkTransformPolyDataFilter* albaGizmoRotateFan::m_ChangeFanAxisTPDF
protected

rotate PDF for sphere

Definition at line 140 of file albaGizmoRotateFan.h.

◆ m_GizmoFan

albaVMEGizmo* albaGizmoRotateFan::m_GizmoFan
protected

Fan gizmo.

Definition at line 143 of file albaGizmoRotateFan.h.

◆ m_StartTheta

double albaGizmoRotateFan::m_StartTheta
protected

Start angle and end angle.

Definition at line 156 of file albaGizmoRotateFan.h.

◆ m_EndTheta

double albaGizmoRotateFan::m_EndTheta
protected

Definition at line 157 of file albaGizmoRotateFan.h.

◆ m_MirrorStatus

int albaGizmoRotateFan::m_MirrorStatus
protected

Register the mirror status of the fan; default status is off.

Definition at line 162 of file albaGizmoRotateFan.h.

◆ m_MirrorTr

vtkTransform* albaGizmoRotateFan::m_MirrorTr
protected

Definition at line 164 of file albaGizmoRotateFan.h.

◆ m_BufferTr

vtkTransform* albaGizmoRotateFan::m_BufferTr
protected

Definition at line 165 of file albaGizmoRotateFan.h.

◆ m_MirrorTPDF

vtkTransformPolyDataFilter* albaGizmoRotateFan::m_MirrorTPDF
protected

Definition at line 166 of file albaGizmoRotateFan.h.

◆ m_RefSys

albaRefSys* albaGizmoRotateFan::m_RefSys
protected

Definition at line 175 of file albaGizmoRotateFan.h.


The documentation for this class was generated from the following file: