Slicer  4.8
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkThreeDViewInteractorStyle Class Reference

Interactive manipulation of the camera. More...

#include <Libs/MRML/DisplayableManager/vtkThreeDViewInteractorStyle.h>

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

Public Types

typedef vtkInteractorStyle Superclass
 

Public Member Functions

virtual void Dolly () VTK_OVERRIDE
 
virtual void Dolly (double factor)
 
virtual vtkMRMLCameraNodeGetCameraNode ()
 Get/Set the CameraNode. More...
 
virtual const char * GetClassName ()
 
virtual vtkMRMLModelDisplayableManagerGetModelDisplayableManager ()
 Get/Set the ModelDisplayableManager, for picking. More...
 
virtual int IsA (const char *type)
 
virtual void OnChar () VTK_OVERRIDE
 Reimplemented for camera orientation. More...
 
virtual void OnExpose () VTK_OVERRIDE
 
virtual void OnKeyPress () VTK_OVERRIDE
 
virtual void OnKeyRelease () VTK_OVERRIDE
 
virtual void OnLeave () VTK_OVERRIDE
 
virtual void OnLeftButtonDown () VTK_OVERRIDE
 
virtual void OnLeftButtonUp () VTK_OVERRIDE
 
virtual void OnMiddleButtonDown () VTK_OVERRIDE
 
virtual void OnMiddleButtonUp () VTK_OVERRIDE
 
virtual void OnMouseMove () VTK_OVERRIDE
 
virtual void OnMouseWheelBackward () VTK_OVERRIDE
 
virtual void OnMouseWheelForward () VTK_OVERRIDE
 
virtual void OnRightButtonDown () VTK_OVERRIDE
 
virtual void OnRightButtonUp () VTK_OVERRIDE
 
virtual void Pan () VTK_OVERRIDE
 
void PrintSelf (ostream &os, vtkIndent indent) VTK_OVERRIDE
 
virtual void Rotate () VTK_OVERRIDE
 
virtual void SetCameraNode (vtkMRMLCameraNode *)
 
virtual void SetInteractor (vtkRenderWindowInteractor *interactor) VTK_OVERRIDE
 Reimplemented to set the default interactive update rate. More...
 
virtual void SetModelDisplayableManager (vtkMRMLModelDisplayableManager *modelDisplayableManager)
 
virtual void Spin () VTK_OVERRIDE
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkThreeDViewInteractorStyleNew ()
 
static vtkThreeDViewInteractorStyleSafeDownCast (vtkObject *o)
 

Protected Member Functions

bool Pick (int x, int y, double pickPoint[3])
 
 vtkThreeDViewInteractorStyle ()
 
 ~vtkThreeDViewInteractorStyle ()
 

Protected Attributes

vtkMRMLCameraNodeCameraNode
 
vtkSmartPointer< vtkCellPicker > CellPicker
 For jump to slice feature (when mouse is moved while shift key is pressed) More...
 
vtkMRMLModelDisplayableManagerModelDisplayableManager
 A pointer back to the ModelDisplayableManager, useful for picking. More...
 
double MotionFactor
 
int NumberOfPlaces
 
int NumberOfTransientPlaces
 
bool ShiftKeyUsedForPreviousAction
 

Detailed Description

Interactive manipulation of the camera.

This class is based on vtkInteractorStyleTrackballCamera, but includes extra features and event invocations to support extra features of slicer.

vtkInteractorStyleTrackballCamera allows the user to interactively manipulate (rotate, pan, etc.) the camera, the viewpoint of the scene. In trackball interaction, the magnitude of the mouse motion is proportional to the camera motion associated with a particular mouse binding. For example, small left-button motions cause small changes in the rotation of the camera around its focal point. For a 3-button mouse, the left button is for rotation, the right button for zooming, the middle button for panning, and ctrl + left button for spinning. (With fewer mouse buttons, ctrl + shift + left button is for zooming, and shift + left button is for panning.)

See also
vtkInteractorStyleTrackballActor
vtkInteractorStyleJoystickCamera
vtkInteractorStyleJoystickActor

Definition at line 51 of file vtkThreeDViewInteractorStyle.h.

Member Typedef Documentation

◆ Superclass

typedef vtkInteractorStyle vtkThreeDViewInteractorStyle::Superclass

Definition at line 56 of file vtkThreeDViewInteractorStyle.h.

Constructor & Destructor Documentation

◆ vtkThreeDViewInteractorStyle()

vtkThreeDViewInteractorStyle::vtkThreeDViewInteractorStyle ( )
protected

◆ ~vtkThreeDViewInteractorStyle()

vtkThreeDViewInteractorStyle::~vtkThreeDViewInteractorStyle ( )
protected

Member Function Documentation

◆ Dolly() [1/2]

virtual void vtkThreeDViewInteractorStyle::Dolly ( )
virtual

◆ Dolly() [2/2]

virtual void vtkThreeDViewInteractorStyle::Dolly ( double  factor)
virtual

◆ GetCameraNode()

virtual vtkMRMLCameraNode* vtkThreeDViewInteractorStyle::GetCameraNode ( )
virtual

Get/Set the CameraNode.

◆ GetClassName()

virtual const char* vtkThreeDViewInteractorStyle::GetClassName ( )
virtual

◆ GetModelDisplayableManager()

virtual vtkMRMLModelDisplayableManager* vtkThreeDViewInteractorStyle::GetModelDisplayableManager ( )
virtual

Get/Set the ModelDisplayableManager, for picking.

◆ IsA()

virtual int vtkThreeDViewInteractorStyle::IsA ( const char *  type)
virtual

◆ IsTypeOf()

static int vtkThreeDViewInteractorStyle::IsTypeOf ( const char *  type)
static

◆ New()

static vtkThreeDViewInteractorStyle* vtkThreeDViewInteractorStyle::New ( )
static

◆ OnChar()

virtual void vtkThreeDViewInteractorStyle::OnChar ( )
virtual

Reimplemented for camera orientation.

◆ OnExpose()

virtual void vtkThreeDViewInteractorStyle::OnExpose ( )
virtual

◆ OnKeyPress()

virtual void vtkThreeDViewInteractorStyle::OnKeyPress ( )
virtual

◆ OnKeyRelease()

virtual void vtkThreeDViewInteractorStyle::OnKeyRelease ( )
virtual

◆ OnLeave()

virtual void vtkThreeDViewInteractorStyle::OnLeave ( )
virtual

◆ OnLeftButtonDown()

virtual void vtkThreeDViewInteractorStyle::OnLeftButtonDown ( )
virtual

◆ OnLeftButtonUp()

virtual void vtkThreeDViewInteractorStyle::OnLeftButtonUp ( )
virtual

◆ OnMiddleButtonDown()

virtual void vtkThreeDViewInteractorStyle::OnMiddleButtonDown ( )
virtual

◆ OnMiddleButtonUp()

virtual void vtkThreeDViewInteractorStyle::OnMiddleButtonUp ( )
virtual

◆ OnMouseMove()

virtual void vtkThreeDViewInteractorStyle::OnMouseMove ( )
virtual

Event bindings controlling the effects of pressing mouse buttons or moving the mouse.

◆ OnMouseWheelBackward()

virtual void vtkThreeDViewInteractorStyle::OnMouseWheelBackward ( )
virtual

◆ OnMouseWheelForward()

virtual void vtkThreeDViewInteractorStyle::OnMouseWheelForward ( )
virtual

◆ OnRightButtonDown()

virtual void vtkThreeDViewInteractorStyle::OnRightButtonDown ( )
virtual

◆ OnRightButtonUp()

virtual void vtkThreeDViewInteractorStyle::OnRightButtonUp ( )
virtual

◆ Pan()

virtual void vtkThreeDViewInteractorStyle::Pan ( )
virtual

◆ Pick()

bool vtkThreeDViewInteractorStyle::Pick ( int  x,
int  y,
double  pickPoint[3] 
)
protected

◆ PrintSelf()

void vtkThreeDViewInteractorStyle::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

◆ Rotate()

virtual void vtkThreeDViewInteractorStyle::Rotate ( )
virtual

These methods for the different interactions in different modes are overridden in subclasses to perform the correct motion. Since they are called by OnTimer, they do not have mouse coord parameters (use interactor's GetEventPosition and GetLastEventPosition)

◆ SafeDownCast()

static vtkThreeDViewInteractorStyle* vtkThreeDViewInteractorStyle::SafeDownCast ( vtkObject *  o)
static

◆ SetCameraNode()

virtual void vtkThreeDViewInteractorStyle::SetCameraNode ( vtkMRMLCameraNode )
virtual

◆ SetInteractor()

virtual void vtkThreeDViewInteractorStyle::SetInteractor ( vtkRenderWindowInteractor *  interactor)
virtual

Reimplemented to set the default interactive update rate.

◆ SetModelDisplayableManager()

virtual void vtkThreeDViewInteractorStyle::SetModelDisplayableManager ( vtkMRMLModelDisplayableManager modelDisplayableManager)
virtual

◆ Spin()

virtual void vtkThreeDViewInteractorStyle::Spin ( )
virtual

Member Data Documentation

◆ CameraNode

vtkMRMLCameraNode* vtkThreeDViewInteractorStyle::CameraNode
protected

Definition at line 111 of file vtkThreeDViewInteractorStyle.h.

◆ CellPicker

vtkSmartPointer<vtkCellPicker> vtkThreeDViewInteractorStyle::CellPicker
protected

For jump to slice feature (when mouse is moved while shift key is pressed)

Definition at line 133 of file vtkThreeDViewInteractorStyle.h.

◆ ModelDisplayableManager

vtkMRMLModelDisplayableManager* vtkThreeDViewInteractorStyle::ModelDisplayableManager
protected

A pointer back to the ModelDisplayableManager, useful for picking.

Definition at line 130 of file vtkThreeDViewInteractorStyle.h.

◆ MotionFactor

double vtkThreeDViewInteractorStyle::MotionFactor
protected

Definition at line 113 of file vtkThreeDViewInteractorStyle.h.

◆ NumberOfPlaces

int vtkThreeDViewInteractorStyle::NumberOfPlaces
protected

Keep track of the number of picks so for resetting mouse modes when transient pick or place mode has been selected.

Definition at line 121 of file vtkThreeDViewInteractorStyle.h.

◆ NumberOfTransientPlaces

int vtkThreeDViewInteractorStyle::NumberOfTransientPlaces
protected

The number of "clicks" the transient mouse-modes come loaded with. Currently makes sense to set this to 1 – but we can change it if appropriate.

Definition at line 126 of file vtkThreeDViewInteractorStyle.h.

◆ ShiftKeyUsedForPreviousAction

bool vtkThreeDViewInteractorStyle::ShiftKeyUsedForPreviousAction
protected

Indicates whether the shift key was used during the previous action. This is used to require shift-up before returning to default mode.

Definition at line 117 of file vtkThreeDViewInteractorStyle.h.


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