VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
vtkImagePlaneWidget Class Reference

3D widget for reslicing image data More...

#include <vtkImagePlaneWidget.h>

Inheritance diagram for vtkImagePlaneWidget:
[legend]
Collaboration diagram for vtkImagePlaneWidget:
[legend]

Public Types

typedef vtkPolyDataSourceWidget Superclass
 
- Public Types inherited from vtkPolyDataSourceWidget
typedef vtk3DWidget Superclass
 
- Public Types inherited from vtk3DWidget
typedef vtkInteractorObserver Superclass
 
- Public Types inherited from vtkInteractorObserver
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class. More...
 
vtkImagePlaneWidgetNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
void SetInputConnection (vtkAlgorithmOutput *aout) override
 Set the vtkImageData* input for the vtkImageReslice. More...
 
void GetVector1 (double v1[3])
 Get the vector from the plane origin to point1. More...
 
void GetVector2 (double v2[3])
 Get the vector from the plane origin to point2. More...
 
int GetSliceIndex ()
 Get the slice position in terms of the data extent. More...
 
void SetSliceIndex (int index)
 Set the slice position in terms of the data extent. More...
 
double GetSlicePosition ()
 Get the position of the slice along its normal. More...
 
void SetSlicePosition (double position)
 Set the position of the slice along its normal. More...
 
vtkImageDataGetResliceOutput ()
 Convenience method to get the vtkImageReslice output. More...
 
void GetPolyData (vtkPolyData *pd)
 Grab the polydata (including points) that defines the plane. More...
 
vtkPolyDataAlgorithmGetPolyDataAlgorithm () override
 Satisfies superclass API. More...
 
void UpdatePlacement (void) override
 Satisfies superclass API. More...
 
vtkTextureGetTexture ()
 Convenience method to get the texture used by this widget. More...
 
void SetPicker (vtkAbstractPropPicker *)
 Set the internal picker to one defined by the user. More...
 
int GetCursorData (double xyzv[4])
 Get the image coordinate position and voxel value. More...
 
int GetCursorDataStatus ()
 Get the status of the cursor data. More...
 
void SetEnabled (int) override
 Methods that satisfy the superclass' API. More...
 
void PlaceWidget (double bounds[6]) override
 Methods that satisfy the superclass' API. More...
 
void PlaceWidget () override
 Methods that satisfy the superclass' API. More...
 
void PlaceWidget (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) override
 Methods that satisfy the superclass' API. More...
 
void SetOrigin (double x, double y, double z)
 Set/Get the origin of the plane. More...
 
void SetOrigin (double xyz[3])
 Set/Get the origin of the plane. More...
 
doubleGetOrigin ()
 Set/Get the origin of the plane. More...
 
void GetOrigin (double xyz[3])
 Set/Get the origin of the plane. More...
 
void SetPoint1 (double x, double y, double z)
 Set/Get the position of the point defining the first axis of the plane. More...
 
void SetPoint1 (double xyz[3])
 Set/Get the position of the point defining the first axis of the plane. More...
 
doubleGetPoint1 ()
 Set/Get the position of the point defining the first axis of the plane. More...
 
void GetPoint1 (double xyz[3])
 Set/Get the position of the point defining the first axis of the plane. More...
 
void SetPoint2 (double x, double y, double z)
 Set/Get the position of the point defining the second axis of the plane. More...
 
void SetPoint2 (double xyz[3])
 Set/Get the position of the point defining the second axis of the plane. More...
 
doubleGetPoint2 ()
 Set/Get the position of the point defining the second axis of the plane. More...
 
void GetPoint2 (double xyz[3])
 Set/Get the position of the point defining the second axis of the plane. More...
 
doubleGetCenter ()
 Get the center of the plane. More...
 
void GetCenter (double xyz[3])
 Get the center of the plane. More...
 
doubleGetNormal ()
 Get the normal to the plane. More...
 
void GetNormal (double xyz[3])
 Get the normal to the plane. More...
 
void SetResliceInterpolate (int)
 Set the interpolation to use when texturing the plane. More...
 
virtual int GetResliceInterpolate ()
 Set the interpolation to use when texturing the plane. More...
 
void SetResliceInterpolateToNearestNeighbour ()
 Set the interpolation to use when texturing the plane. More...
 
void SetResliceInterpolateToLinear ()
 Set the interpolation to use when texturing the plane. More...
 
void SetResliceInterpolateToCubic ()
 Set the interpolation to use when texturing the plane. More...
 
virtual void SetRestrictPlaneToVolume (vtkTypeBool)
 Make sure that the plane remains within the volume. More...
 
virtual vtkTypeBool GetRestrictPlaneToVolume ()
 Make sure that the plane remains within the volume. More...
 
virtual void RestrictPlaneToVolumeOn ()
 Make sure that the plane remains within the volume. More...
 
virtual void RestrictPlaneToVolumeOff ()
 Make sure that the plane remains within the volume. More...
 
virtual void SetUserControlledLookupTable (vtkTypeBool)
 Let the user control the lookup table. More...
 
virtual vtkTypeBool GetUserControlledLookupTable ()
 Let the user control the lookup table. More...
 
virtual void UserControlledLookupTableOn ()
 Let the user control the lookup table. More...
 
virtual void UserControlledLookupTableOff ()
 Let the user control the lookup table. More...
 
virtual void SetTextureInterpolate (vtkTypeBool)
 Specify whether to interpolate the texture or not. More...
 
virtual vtkTypeBool GetTextureInterpolate ()
 Specify whether to interpolate the texture or not. More...
 
virtual void TextureInterpolateOn ()
 Specify whether to interpolate the texture or not. More...
 
virtual void TextureInterpolateOff ()
 Specify whether to interpolate the texture or not. More...
 
virtual void SetTextureVisibility (vtkTypeBool)
 Control the visibility of the actual texture mapped reformatted plane. More...
 
virtual vtkTypeBool GetTextureVisibility ()
 Control the visibility of the actual texture mapped reformatted plane. More...
 
virtual void TextureVisibilityOn ()
 Control the visibility of the actual texture mapped reformatted plane. More...
 
virtual void TextureVisibilityOff ()
 Control the visibility of the actual texture mapped reformatted plane. More...
 
virtual vtkImageMapToColorsGetColorMap ()
 Convenience method to get the vtkImageMapToColors filter used by this widget. More...
 
virtual void SetColorMap (vtkImageMapToColors *)
 Convenience method to get the vtkImageMapToColors filter used by this widget. More...
 
virtual void SetPlaneProperty (vtkProperty *)
 Set/Get the plane's outline properties. More...
 
virtual vtkPropertyGetPlaneProperty ()
 Set/Get the plane's outline properties. More...
 
virtual void SetSelectedPlaneProperty (vtkProperty *)
 Set/Get the plane's outline properties. More...
 
virtual vtkPropertyGetSelectedPlaneProperty ()
 Set/Get the plane's outline properties. More...
 
void SetPlaneOrientation (int)
 Convenience method sets the plane orientation normal to the x, y, or z axes. More...
 
virtual int GetPlaneOrientation ()
 Convenience method sets the plane orientation normal to the x, y, or z axes. More...
 
void SetPlaneOrientationToXAxes ()
 Convenience method sets the plane orientation normal to the x, y, or z axes. More...
 
void SetPlaneOrientationToYAxes ()
 Convenience method sets the plane orientation normal to the x, y, or z axes. More...
 
void SetPlaneOrientationToZAxes ()
 Convenience method sets the plane orientation normal to the x, y, or z axes. More...
 
virtual void SetLookupTable (vtkLookupTable *)
 Set/Get the internal lookuptable (lut) to one defined by the user, or, alternatively, to the lut of another vtkImgePlaneWidget. More...
 
virtual vtkLookupTableGetLookupTable ()
 Set/Get the internal lookuptable (lut) to one defined by the user, or, alternatively, to the lut of another vtkImgePlaneWidget. More...
 
virtual void SetDisplayText (vtkTypeBool)
 Enable/disable text display of window-level, image coordinates and scalar values in a render window. More...
 
virtual vtkTypeBool GetDisplayText ()
 Enable/disable text display of window-level, image coordinates and scalar values in a render window. More...
 
virtual void DisplayTextOn ()
 Enable/disable text display of window-level, image coordinates and scalar values in a render window. More...
 
virtual void DisplayTextOff ()
 Enable/disable text display of window-level, image coordinates and scalar values in a render window. More...
 
virtual void SetCursorProperty (vtkProperty *)
 Set the properties of the cross-hair cursor. More...
 
virtual vtkPropertyGetCursorProperty ()
 Set the properties of the cross-hair cursor. More...
 
virtual void SetMarginProperty (vtkProperty *)
 Set the properties of the margins. More...
 
virtual vtkPropertyGetMarginProperty ()
 Set the properties of the margins. More...
 
virtual void SetMarginSizeX (double)
 Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%. More...
 
virtual double GetMarginSizeX ()
 Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%. More...
 
virtual void SetMarginSizeY (double)
 Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%. More...
 
virtual double GetMarginSizeY ()
 Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%. More...
 
void SetTextProperty (vtkTextProperty *tprop)
 Set/Get the text property for the image data and window-level annotation. More...
 
vtkTextPropertyGetTextProperty ()
 Set/Get the text property for the image data and window-level annotation. More...
 
virtual void SetTexturePlaneProperty (vtkProperty *)
 Set/Get the property for the resliced image. More...
 
virtual vtkPropertyGetTexturePlaneProperty ()
 Set/Get the property for the resliced image. More...
 
void SetWindowLevel (double window, double level, int copy=0)
 Set/Get the current window and level values. More...
 
void GetWindowLevel (double wl[2])
 Set/Get the current window and level values. More...
 
double GetWindow ()
 Set/Get the current window and level values. More...
 
double GetLevel ()
 Set/Get the current window and level values. More...
 
virtual doubleGetCurrentCursorPosition ()
 Get the current cursor position. More...
 
virtual void GetCurrentCursorPosition (double data[3])
 Get the current cursor position. More...
 
virtual double GetCurrentImageValue ()
 Get the current image value at the current cursor position. More...
 
virtual vtkMatrix4x4GetResliceAxes ()
 Get the current reslice class and reslice axes. More...
 
virtual vtkImageResliceGetReslice ()
 Get the current reslice class and reslice axes. More...
 
virtual void SetUseContinuousCursor (vtkTypeBool)
 Choose between voxel centered or continuous cursor probing. More...
 
virtual vtkTypeBool GetUseContinuousCursor ()
 Choose between voxel centered or continuous cursor probing. More...
 
virtual void UseContinuousCursorOn ()
 Choose between voxel centered or continuous cursor probing. More...
 
virtual void UseContinuousCursorOff ()
 Choose between voxel centered or continuous cursor probing. More...
 
void SetInteraction (vtkTypeBool interact)
 Enable/disable mouse interaction so the widget remains on display. More...
 
virtual vtkTypeBool GetInteraction ()
 Enable/disable mouse interaction so the widget remains on display. More...
 
virtual void InteractionOn ()
 Enable/disable mouse interaction so the widget remains on display. More...
 
virtual void InteractionOff ()
 Enable/disable mouse interaction so the widget remains on display. More...
 
- Public Member Functions inherited from vtkPolyDataSourceWidget
vtkPolyDataSourceWidgetNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
void PlaceWidget () override
 Overrides vtk3DWidget PlaceWidget() so that it doesn't complain if there's no Input and no Prop3D. More...
 
void PlaceWidget (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax) override
 Convenience method brought over from vtkPlaneWidget. More...
 
- Public Member Functions inherited from vtk3DWidget
vtk3DWidgetNewInstance () const
 
virtual void SetProp3D (vtkProp3D *)
 Specify a vtkProp3D around which to place the widget. More...
 
virtual vtkProp3DGetProp3D ()
 Specify a vtkProp3D around which to place the widget. More...
 
virtual void SetInputData (vtkDataSet *)
 Specify the input dataset. More...
 
virtual vtkDataSetGetInput ()
 Specify the input dataset. More...
 
virtual void SetPlaceFactor (double)
 Set/Get a factor representing the scaling of the widget upon placement (via the PlaceWidget() method). More...
 
virtual double GetPlaceFactor ()
 Set/Get a factor representing the scaling of the widget upon placement (via the PlaceWidget() method). More...
 
virtual void SetHandleSize (double)
 Set/Get the factor that controls the size of the handles that appear as part of the widget. More...
 
virtual double GetHandleSize ()
 Set/Get the factor that controls the size of the handles that appear as part of the widget. More...
 
- Public Member Functions inherited from vtkInteractorObserver
vtkInteractorObserverNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
int GetEnabled ()
 
void EnabledOn ()
 
void EnabledOff ()
 
void On ()
 
void Off ()
 
virtual void SetInteractor (vtkRenderWindowInteractor *iren)
 This method is used to associate the widget with the render window interactor. More...
 
virtual vtkRenderWindowInteractorGetInteractor ()
 This method is used to associate the widget with the render window interactor. More...
 
virtual void SetPriority (float)
 Set/Get the priority at which events are processed. More...
 
virtual float GetPriority ()
 Set/Get the priority at which events are processed. More...
 
virtual void PickingManagedOn ()
 Enable/Disable the use of a manager to process the picking. More...
 
virtual void PickingManagedOff ()
 Enable/Disable the use of a manager to process the picking. More...
 
virtual void SetPickingManaged (bool managed)
 Enable/Disable the use of a manager to process the picking. More...
 
virtual bool GetPickingManaged ()
 Enable/Disable the use of a manager to process the picking. More...
 
virtual void SetKeyPressActivation (vtkTypeBool)
 Enable/Disable of the use of a keypress to turn on and off the interactor observer. More...
 
virtual vtkTypeBool GetKeyPressActivation ()
 Enable/Disable of the use of a keypress to turn on and off the interactor observer. More...
 
virtual void KeyPressActivationOn ()
 Enable/Disable of the use of a keypress to turn on and off the interactor observer. More...
 
virtual void KeyPressActivationOff ()
 Enable/Disable of the use of a keypress to turn on and off the interactor observer. More...
 
virtual void SetKeyPressActivationValue (char)
 Specify which key press value to use to activate the interactor observer (if key press activation is enabled). More...
 
virtual char GetKeyPressActivationValue ()
 Specify which key press value to use to activate the interactor observer (if key press activation is enabled). More...
 
virtual vtkRendererGetDefaultRenderer ()
 Set/Get the default renderer to use when activating the interactor observer. More...
 
virtual void SetDefaultRenderer (vtkRenderer *)
 Set/Get the default renderer to use when activating the interactor observer. More...
 
virtual vtkRendererGetCurrentRenderer ()
 Set/Get the current renderer. More...
 
virtual void SetCurrentRenderer (vtkRenderer *)
 Set/Get the current renderer. More...
 
void GrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods enable an interactor observer to exclusively grab all events invoked by its associated vtkRenderWindowInteractor. More...
 
void ReleaseFocus ()
 These methods enable an interactor observer to exclusively grab all events invoked by its associated vtkRenderWindowInteractor. More...
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on. More...
 
virtual void DebugOff ()
 Turn debugging output off. More...
 
bool GetDebug ()
 Get the value of the debug flag. More...
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
 
virtual void Modified ()
 Update the modification time for this object. More...
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkCommandGetCommand (unsigned long tag)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObserver (vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method. More...
 
int InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
int InvokeEvent (const char *event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
 
virtual void Delete ()
 Delete a VTK object. More...
 
virtual void FastDelete ()
 Delete a reference to this object. More...
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream. More...
 
virtual void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object). More...
 
int GetReferenceCount ()
 Return the current reference count of this object. More...
 
void SetReferenceCount (int)
 Sets the reference count. More...
 
void PrintRevisions (ostream &)
 Legacy. More...
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 

Static Public Member Functions

static vtkImagePlaneWidgetNew ()
 Instantiate the object. More...
 
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkImagePlaneWidgetSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkPolyDataSourceWidget
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkPolyDataSourceWidgetSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtk3DWidget
static vtkTypeBool IsTypeOf (const char *type)
 
static vtk3DWidgetSafeDownCast (vtkObjectBase *o)
 
- Static Public Member Functions inherited from vtkInteractorObserver
static vtkTypeBool IsTypeOf (const char *type)
 
static vtkInteractorObserverSafeDownCast (vtkObjectBase *o)
 
static void ComputeDisplayToWorld (vtkRenderer *ren, double x, double y, double z, double worldPt[4])
 Convenience methods for outside classes. More...
 
static void ComputeWorldToDisplay (vtkRenderer *ren, double x, double y, double z, double displayPt[3])
 Convenience methods for outside classes. More...
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
 
static void SetGlobalWarningDisplay (int val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOn ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOff ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static int GetGlobalWarningDisplay ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class. More...
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 

Protected Types

enum  { VTK_NO_BUTTON = 0, VTK_LEFT_BUTTON = 1, VTK_MIDDLE_BUTTON = 2, VTK_RIGHT_BUTTON = 3 }
 
enum  WidgetState {
  Start =0, Cursoring, WindowLevelling, Pushing,
  Spinning, Rotating, Moving, Scaling,
  Outside
}
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkImagePlaneWidget ()
 
 ~vtkImagePlaneWidget () override
 
void AddObservers ()
 
virtual void OnMouseMove ()
 
virtual void OnLeftButtonDown ()
 
virtual void OnLeftButtonUp ()
 
virtual void OnMiddleButtonDown ()
 
virtual void OnMiddleButtonUp ()
 
virtual void OnRightButtonDown ()
 
virtual void OnRightButtonUp ()
 
void OnChar () override
 Sets up the keypress-i event. More...
 
virtual void StartCursor ()
 
virtual void StopCursor ()
 
virtual void StartSliceMotion ()
 
virtual void StopSliceMotion ()
 
virtual void StartWindowLevel ()
 
virtual void StopWindowLevel ()
 
void HighlightPlane (int highlight)
 
void GeneratePlaneOutline ()
 
void BuildRepresentation ()
 
void RegisterPickers () override
 Register internal Pickers in the Picking Manager. More...
 
void InvertTable ()
 
void WindowLevel (int X, int Y)
 
void Push (double *p1, double *p2)
 
void Spin (double *p1, double *p2)
 
void Rotate (double *p1, double *p2, double *vpn)
 
void Scale (double *p1, double *p2, int X, int Y)
 
void Translate (double *p1, double *p2)
 
vtkLookupTableCreateDefaultLookupTable ()
 
void CreateDefaultProperties ()
 
void UpdatePlane ()
 
void GenerateTexturePlane ()
 
void GenerateCursor ()
 
void UpdateCursor (int, int)
 
void ActivateCursor (int)
 
int UpdateContinuousCursor (double *q)
 
int UpdateDiscreteCursor (double *q)
 
void GenerateText ()
 
void ManageTextDisplay ()
 
void ActivateText (int)
 
void AdjustState ()
 
void GenerateMargins ()
 
void UpdateMargins ()
 
void ActivateMargins (int)
 
- Protected Member Functions inherited from vtkPolyDataSourceWidget
 vtkPolyDataSourceWidget ()
 Empty constructor that calls the parent constructor. More...
 
- Protected Member Functions inherited from vtk3DWidget
 vtk3DWidget ()
 
 ~vtk3DWidget () override
 
void AdjustBounds (double bounds[6], double newBounds[6], double center[3])
 
double SizeHandles (double factor)
 
virtual void SizeHandles ()
 
void UpdateInput ()
 
- Protected Member Functions inherited from vtkInteractorObserver
 vtkInteractorObserver ()
 
 ~vtkInteractorObserver () override
 
void UnRegisterPickers ()
 Unregister internal pickers from the Picking Manager. More...
 
vtkPickingManagerGetPickingManager ()
 Return the picking manager associated on the context on which the observer currently belong. More...
 
vtkAssemblyPathGetAssemblyPath (double X, double Y, double Z, vtkAbstractPropPicker *picker)
 Proceed to a pick, whether through the PickingManager if the picking is managed or directly using the picker, and return the assembly path. More...
 
int RequestCursorShape (int requestedShape)
 
virtual void StartInteraction ()
 Utility routines used to start and end interaction. More...
 
virtual void EndInteraction ()
 Utility routines used to start and end interaction. More...
 
void ComputeDisplayToWorld (double x, double y, double z, double worldPt[4])
 Helper method for subclasses. More...
 
void ComputeWorldToDisplay (double x, double y, double z, double displayPt[3])
 Helper method for subclasses. More...
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events. More...
 
void InternalReleaseFocus ()
 These methods allow a command to exclusively grab all events. More...
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Static Protected Member Functions

static void ProcessEvents (vtkObject *object, unsigned long event, void *clientdata, void *calldata)
 
- Static Protected Member Functions inherited from vtkInteractorObserver
static void ProcessEvents (vtkObject *object, unsigned long event, void *clientdata, void *calldata)
 Handles the char widget activation event. More...
 

Protected Attributes

vtkTypeBool TextureVisibility
 
int LeftButtonAction
 
int MiddleButtonAction
 
int RightButtonAction
 
int LeftButtonAutoModifier
 
int MiddleButtonAutoModifier
 
int RightButtonAutoModifier
 
int LastButtonPressed
 
int State
 
vtkTypeBool Interaction
 
int PlaneOrientation
 
vtkTypeBool RestrictPlaneToVolume
 
double OriginalWindow
 
double OriginalLevel
 
double CurrentWindow
 
double CurrentLevel
 
double InitialWindow
 
double InitialLevel
 
int StartWindowLevelPositionX
 
int StartWindowLevelPositionY
 
int ResliceInterpolate
 
vtkTypeBool TextureInterpolate
 
vtkTypeBool UserControlledLookupTable
 
vtkTypeBool DisplayText
 
vtkPlaneSourcePlaneSource
 
vtkPolyDataPlaneOutlinePolyData
 
vtkActorPlaneOutlineActor
 
vtkAbstractPropPickerPlanePicker
 
vtkImageDataImageData
 
vtkImageResliceReslice
 
vtkMatrix4x4ResliceAxes
 
vtkTransformTransform
 
vtkActorTexturePlaneActor
 
vtkImageMapToColorsColorMap
 
vtkTextureTexture
 
vtkLookupTableLookupTable
 
vtkPropertyPlaneProperty
 
vtkPropertySelectedPlaneProperty
 
vtkPropertyCursorProperty
 
vtkPropertyMarginProperty
 
vtkPropertyTexturePlaneProperty
 
vtkPolyDataCursorPolyData
 
vtkActorCursorActor
 
double CurrentCursorPosition [3]
 
double CurrentImageValue
 
vtkTypeBool UseContinuousCursor
 
vtkTextActorTextActor
 
char TextBuff [VTK_IMAGE_PLANE_WIDGET_MAX_TEXTBUFF]
 
double RotateAxis [3]
 
double RadiusVector [3]
 
vtkPolyDataMarginPolyData
 
vtkActorMarginActor
 
int MarginSelectMode
 
double MarginSizeX
 
double MarginSizeY
 
- Protected Attributes inherited from vtk3DWidget
vtkProp3DProp3D
 
vtk3DWidgetConnection * ConnectionHolder
 
double PlaceFactor
 
int Placed
 
double InitialBounds [6]
 
double InitialLength
 
double HandleSize
 
int ValidPick
 
double LastPickPosition [3]
 
- Protected Attributes inherited from vtkInteractorObserver
int Enabled
 
vtkCallbackCommandEventCallbackCommand
 
vtkCallbackCommandKeyPressCallbackCommand
 
float Priority
 
bool PickingManaged
 
vtkTypeBool KeyPressActivation
 
char KeyPressActivationValue
 
vtkRenderWindowInteractorInteractor
 
vtkRendererCurrentRenderer
 
vtkRendererDefaultRenderer
 
unsigned long CharObserverTag
 
unsigned long DeleteObserverTag
 
vtkObserverMediatorObserverMediator
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 
enum  { VTK_CURSOR_ACTION = 0, VTK_SLICE_MOTION_ACTION = 1, VTK_WINDOW_LEVEL_ACTION = 2 }
 Set action associated to buttons. More...
 
virtual void SetLeftButtonAction (int)
 Set action associated to buttons. More...
 
virtual int GetLeftButtonAction ()
 Set action associated to buttons. More...
 
virtual void SetMiddleButtonAction (int)
 Set action associated to buttons. More...
 
virtual int GetMiddleButtonAction ()
 Set action associated to buttons. More...
 
virtual void SetRightButtonAction (int)
 Set action associated to buttons. More...
 
virtual int GetRightButtonAction ()
 Set action associated to buttons. More...
 
enum  { VTK_NO_MODIFIER = 0, VTK_SHIFT_MODIFIER = 1, VTK_CONTROL_MODIFIER = 2 }
 Set the auto-modifiers associated to buttons. More...
 
virtual void SetLeftButtonAutoModifier (int)
 Set the auto-modifiers associated to buttons. More...
 
virtual int GetLeftButtonAutoModifier ()
 Set the auto-modifiers associated to buttons. More...
 
virtual void SetMiddleButtonAutoModifier (int)
 Set the auto-modifiers associated to buttons. More...
 
virtual int GetMiddleButtonAutoModifier ()
 Set the auto-modifiers associated to buttons. More...
 
virtual void SetRightButtonAutoModifier (int)
 Set the auto-modifiers associated to buttons. More...
 
virtual int GetRightButtonAutoModifier ()
 Set the auto-modifiers associated to buttons. More...
 

Detailed Description

3D widget for reslicing image data

This 3D widget defines a plane that can be interactively placed in an image volume. A nice feature of the object is that the vtkImagePlaneWidget, like any 3D widget, will work with the current interactor style. That is, if vtkImagePlaneWidget does not handle an event, then all other registered observers (including the interactor style) have an opportunity to process the event. Otherwise, the vtkImagePlaneWidget will terminate the processing of the event that it handles.

The core functionality of the widget is provided by a vtkImageReslice object which passes its output onto a texture mapping pipeline for fast slicing through volumetric data. See the key methods: GenerateTexturePlane() and UpdatePlane() for implementation details.

To use this object, just invoke SetInteractor() with the argument of the method a vtkRenderWindowInteractor. You may also wish to invoke "PlaceWidget()" to initially position the widget. If the "i" key (for "interactor") is pressed, the vtkImagePlaneWidget will appear. (See superclass documentation for information about changing this behavior.)

Selecting the widget with the middle mouse button with and without holding the shift or control keys enables complex reslicing capablilites. To facilitate use, a set of 'margins' (left, right, top, bottom) are shown as a set of plane-axes aligned lines, the properties of which can be changed as a group. Without keyboard modifiers: selecting in the middle of the margins enables translation of the plane along its normal. Selecting one of the corners within the margins enables spinning around the plane's normal at its center. Selecting within a margin allows rotating about the center of the plane around an axis aligned with the margin (i.e., selecting left margin enables rotating around the plane's local y-prime axis). With control key modifier: margin selection enables edge translation (i.e., a constrained form of scaling). Selecting within the margins enables translation of the entire plane. With shift key modifier: uniform plane scaling is enabled. Moving the mouse up enlarges the plane while downward movement shrinks it.

Window-level is achieved by using the right mouse button. Window-level values can be reset by shift + 'r' or control + 'r' while regular reset camera is maintained with 'r' or 'R'. The left mouse button can be used to query the underlying image data with a snap-to cross-hair cursor. Currently, the nearest point in the input image data to the mouse cursor generates the cross-hairs. With oblique slicing, this behaviour may appear unsatisfactory. Text display of window-level and image coordinates/data values are provided by a text actor/mapper pair.

Events that occur outside of the widget (i.e., no part of the widget is picked) are propagated to any other registered obsevers (such as the interaction style). Turn off the widget by pressing the "i" key again (or invoke the Off() method). To support interactive manipulation of objects, this class invokes the events StartInteractionEvent, InteractionEvent, and EndInteractionEvent as well as StartWindowLevelEvent, WindowLevelEvent, EndWindowLevelEvent and ResetWindowLevelEvent.

The vtkImagePlaneWidget has several methods that can be used in conjunction with other VTK objects. The GetPolyData() method can be used to get the polygonal representation of the plane and can be used as input for other VTK objects. Typical usage of the widget is to make use of the StartInteractionEvent, InteractionEvent, and EndInteractionEvent events. The InteractionEvent is called on mouse motion; the other two events are called on button down and button up (either left or right button).

Some additional features of this class include the ability to control the properties of the widget. You can set the properties of: the selected and unselected representations of the plane's outline; the text actor via its vtkTextProperty; the cross-hair cursor. In addition there are methods to constrain the plane so that it is aligned along the x-y-z axes. Finally, one can specify the degree of interpolation (vtkImageReslice): nearest neighbour, linear, and cubic.

Thanks:
Thanks to Dean Inglis for developing and contributing this class. Based on the Python SlicePlaneFactory from Atamai, Inc.
See also
vtk3DWidget vtkBoxWidget vtkLineWidget vtkPlaneWidget vtkPointWidget vtkPolyDataSourceWidget vtkSphereWidget vtkImplicitPlaneWidget
Examples:
vtkImagePlaneWidget (Examples)
Tests:
vtkImagePlaneWidget (Tests)

Definition at line 136 of file vtkImagePlaneWidget.h.

Member Typedef Documentation

Definition at line 144 of file vtkImagePlaneWidget.h.

Member Enumeration Documentation

anonymous enum

Set action associated to buttons.

Enumerator
VTK_CURSOR_ACTION 
VTK_SLICE_MOTION_ACTION 
VTK_WINDOW_LEVEL_ACTION 

Definition at line 520 of file vtkImagePlaneWidget.h.

anonymous enum

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

Enumerator
VTK_NO_MODIFIER 
VTK_SHIFT_MODIFIER 
VTK_CONTROL_MODIFIER 

Definition at line 543 of file vtkImagePlaneWidget.h.

anonymous enum
protected
Enumerator
VTK_NO_BUTTON 
VTK_LEFT_BUTTON 
VTK_MIDDLE_BUTTON 
VTK_RIGHT_BUTTON 

Definition at line 571 of file vtkImagePlaneWidget.h.

Enumerator
Start 
Cursoring 
WindowLevelling 
Pushing 
Spinning 
Rotating 
Moving 
Scaling 
Outside 

Definition at line 582 of file vtkImagePlaneWidget.h.

Constructor & Destructor Documentation

vtkImagePlaneWidget::vtkImagePlaneWidget ( )
protected
vtkImagePlaneWidget::~vtkImagePlaneWidget ( )
overrideprotected

Member Function Documentation

static vtkImagePlaneWidget* vtkImagePlaneWidget::New ( )
static

Instantiate the object.

static vtkTypeBool vtkImagePlaneWidget::IsTypeOf ( const char *  type)
static
virtual vtkTypeBool vtkImagePlaneWidget::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class.

Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataSourceWidget.

static vtkImagePlaneWidget* vtkImagePlaneWidget::SafeDownCast ( vtkObjectBase o)
static
virtual vtkObjectBase* vtkImagePlaneWidget::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkPolyDataSourceWidget.

vtkImagePlaneWidget* vtkImagePlaneWidget::NewInstance ( ) const
void vtkImagePlaneWidget::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Methods invoked by print to print information about the object including superclasses.

Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtk3DWidget.

void vtkImagePlaneWidget::SetEnabled ( int  )
overridevirtual

Methods that satisfy the superclass' API.

Reimplemented from vtkInteractorObserver.

void vtkImagePlaneWidget::PlaceWidget ( double  bounds[6])
overridevirtual

Methods that satisfy the superclass' API.

Implements vtkPolyDataSourceWidget.

void vtkImagePlaneWidget::PlaceWidget ( )
inlineoverridevirtual

Methods that satisfy the superclass' API.

Reimplemented from vtk3DWidget.

Definition at line 153 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::PlaceWidget ( double  xmin,
double  xmax,
double  ymin,
double  ymax,
double  zmin,
double  zmax 
)
inlineoverridevirtual

Methods that satisfy the superclass' API.

Reimplemented from vtk3DWidget.

Definition at line 155 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::SetInputConnection ( vtkAlgorithmOutput aout)
overridevirtual

Set the vtkImageData* input for the vtkImageReslice.

Reimplemented from vtk3DWidget.

void vtkImagePlaneWidget::SetOrigin ( double  x,
double  y,
double  z 
)

Set/Get the origin of the plane.

void vtkImagePlaneWidget::SetOrigin ( double  xyz[3])

Set/Get the origin of the plane.

double* vtkImagePlaneWidget::GetOrigin ( )

Set/Get the origin of the plane.

void vtkImagePlaneWidget::GetOrigin ( double  xyz[3])

Set/Get the origin of the plane.

void vtkImagePlaneWidget::SetPoint1 ( double  x,
double  y,
double  z 
)

Set/Get the position of the point defining the first axis of the plane.

void vtkImagePlaneWidget::SetPoint1 ( double  xyz[3])

Set/Get the position of the point defining the first axis of the plane.

double* vtkImagePlaneWidget::GetPoint1 ( )

Set/Get the position of the point defining the first axis of the plane.

void vtkImagePlaneWidget::GetPoint1 ( double  xyz[3])

Set/Get the position of the point defining the first axis of the plane.

void vtkImagePlaneWidget::SetPoint2 ( double  x,
double  y,
double  z 
)

Set/Get the position of the point defining the second axis of the plane.

void vtkImagePlaneWidget::SetPoint2 ( double  xyz[3])

Set/Get the position of the point defining the second axis of the plane.

double* vtkImagePlaneWidget::GetPoint2 ( )

Set/Get the position of the point defining the second axis of the plane.

void vtkImagePlaneWidget::GetPoint2 ( double  xyz[3])

Set/Get the position of the point defining the second axis of the plane.

double* vtkImagePlaneWidget::GetCenter ( )

Get the center of the plane.

void vtkImagePlaneWidget::GetCenter ( double  xyz[3])

Get the center of the plane.

double* vtkImagePlaneWidget::GetNormal ( )

Get the normal to the plane.

void vtkImagePlaneWidget::GetNormal ( double  xyz[3])

Get the normal to the plane.

void vtkImagePlaneWidget::GetVector1 ( double  v1[3])

Get the vector from the plane origin to point1.

void vtkImagePlaneWidget::GetVector2 ( double  v2[3])

Get the vector from the plane origin to point2.

int vtkImagePlaneWidget::GetSliceIndex ( )

Get the slice position in terms of the data extent.

void vtkImagePlaneWidget::SetSliceIndex ( int  index)

Set the slice position in terms of the data extent.

double vtkImagePlaneWidget::GetSlicePosition ( )

Get the position of the slice along its normal.

void vtkImagePlaneWidget::SetSlicePosition ( double  position)

Set the position of the slice along its normal.

void vtkImagePlaneWidget::SetResliceInterpolate ( int  )

Set the interpolation to use when texturing the plane.

virtual int vtkImagePlaneWidget::GetResliceInterpolate ( )
virtual

Set the interpolation to use when texturing the plane.

void vtkImagePlaneWidget::SetResliceInterpolateToNearestNeighbour ( )
inline

Set the interpolation to use when texturing the plane.

Definition at line 247 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::SetResliceInterpolateToLinear ( )
inline

Set the interpolation to use when texturing the plane.

Definition at line 249 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::SetResliceInterpolateToCubic ( )
inline

Set the interpolation to use when texturing the plane.

Definition at line 251 of file vtkImagePlaneWidget.h.

vtkImageData* vtkImagePlaneWidget::GetResliceOutput ( )

Convenience method to get the vtkImageReslice output.

virtual void vtkImagePlaneWidget::SetRestrictPlaneToVolume ( vtkTypeBool  )
virtual

Make sure that the plane remains within the volume.

Default is On.

virtual vtkTypeBool vtkImagePlaneWidget::GetRestrictPlaneToVolume ( )
virtual

Make sure that the plane remains within the volume.

Default is On.

virtual void vtkImagePlaneWidget::RestrictPlaneToVolumeOn ( )
virtual

Make sure that the plane remains within the volume.

Default is On.

virtual void vtkImagePlaneWidget::RestrictPlaneToVolumeOff ( )
virtual

Make sure that the plane remains within the volume.

Default is On.

virtual void vtkImagePlaneWidget::SetUserControlledLookupTable ( vtkTypeBool  )
virtual

Let the user control the lookup table.

NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

virtual vtkTypeBool vtkImagePlaneWidget::GetUserControlledLookupTable ( )
virtual

Let the user control the lookup table.

NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

virtual void vtkImagePlaneWidget::UserControlledLookupTableOn ( )
virtual

Let the user control the lookup table.

NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

virtual void vtkImagePlaneWidget::UserControlledLookupTableOff ( )
virtual

Let the user control the lookup table.

NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

virtual void vtkImagePlaneWidget::SetTextureInterpolate ( vtkTypeBool  )
virtual

Specify whether to interpolate the texture or not.

When off, the reslice interpolation is nearest neighbour regardless of how the interpolation is set through the API. Set before setting the vtkImageData input. Default is On.

virtual vtkTypeBool vtkImagePlaneWidget::GetTextureInterpolate ( )
virtual

Specify whether to interpolate the texture or not.

When off, the reslice interpolation is nearest neighbour regardless of how the interpolation is set through the API. Set before setting the vtkImageData input. Default is On.

virtual void vtkImagePlaneWidget::TextureInterpolateOn ( )
virtual

Specify whether to interpolate the texture or not.

When off, the reslice interpolation is nearest neighbour regardless of how the interpolation is set through the API. Set before setting the vtkImageData input. Default is On.

virtual void vtkImagePlaneWidget::TextureInterpolateOff ( )
virtual

Specify whether to interpolate the texture or not.

When off, the reslice interpolation is nearest neighbour regardless of how the interpolation is set through the API. Set before setting the vtkImageData input. Default is On.

virtual void vtkImagePlaneWidget::SetTextureVisibility ( vtkTypeBool  )
virtual

Control the visibility of the actual texture mapped reformatted plane.

in some cases you may only want the plane outline for example.

virtual vtkTypeBool vtkImagePlaneWidget::GetTextureVisibility ( )
virtual

Control the visibility of the actual texture mapped reformatted plane.

in some cases you may only want the plane outline for example.

virtual void vtkImagePlaneWidget::TextureVisibilityOn ( )
virtual

Control the visibility of the actual texture mapped reformatted plane.

in some cases you may only want the plane outline for example.

virtual void vtkImagePlaneWidget::TextureVisibilityOff ( )
virtual

Control the visibility of the actual texture mapped reformatted plane.

in some cases you may only want the plane outline for example.

void vtkImagePlaneWidget::GetPolyData ( vtkPolyData pd)

Grab the polydata (including points) that defines the plane.

The polydata consists of (res+1)*(res+1) points, and res*res quadrilateral polygons, where res is the resolution of the plane. These point values are guaranteed to be up-to-date when either the InteractionEvent or EndInteraction events are invoked. The user provides the vtkPolyData and the points and polygons are added to it.

vtkPolyDataAlgorithm* vtkImagePlaneWidget::GetPolyDataAlgorithm ( )
overridevirtual

Satisfies superclass API.

This returns a pointer to the underlying vtkPolyData. Make changes to this before calling the initial PlaceWidget() to have the initial placement follow suit. Or, make changes after the widget has been initialised and call UpdatePlacement() to realise.

Implements vtkPolyDataSourceWidget.

void vtkImagePlaneWidget::UpdatePlacement ( void  )
overridevirtual

Satisfies superclass API.

This will change the state of the widget to match changes that have been made to the underlying vtkPolyDataSource

Implements vtkPolyDataSourceWidget.

vtkTexture* vtkImagePlaneWidget::GetTexture ( )

Convenience method to get the texture used by this widget.

This can be used in external slice viewers.

virtual vtkImageMapToColors* vtkImagePlaneWidget::GetColorMap ( )
virtual

Convenience method to get the vtkImageMapToColors filter used by this widget.

The user can properly render other transparent actors in a scene by calling the filter's SetOutputFormatToRGB and PassAlphaToOutputOff.

virtual void vtkImagePlaneWidget::SetColorMap ( vtkImageMapToColors )
virtual

Convenience method to get the vtkImageMapToColors filter used by this widget.

The user can properly render other transparent actors in a scene by calling the filter's SetOutputFormatToRGB and PassAlphaToOutputOff.

virtual void vtkImagePlaneWidget::SetPlaneProperty ( vtkProperty )
virtual

Set/Get the plane's outline properties.

The properties of the plane's outline when selected and unselected can be manipulated.

virtual vtkProperty* vtkImagePlaneWidget::GetPlaneProperty ( )
virtual

Set/Get the plane's outline properties.

The properties of the plane's outline when selected and unselected can be manipulated.

virtual void vtkImagePlaneWidget::SetSelectedPlaneProperty ( vtkProperty )
virtual

Set/Get the plane's outline properties.

The properties of the plane's outline when selected and unselected can be manipulated.

virtual vtkProperty* vtkImagePlaneWidget::GetSelectedPlaneProperty ( )
virtual

Set/Get the plane's outline properties.

The properties of the plane's outline when selected and unselected can be manipulated.

void vtkImagePlaneWidget::SetPlaneOrientation ( int  )

Convenience method sets the plane orientation normal to the x, y, or z axes.

Default is XAxes (0).

virtual int vtkImagePlaneWidget::GetPlaneOrientation ( )
virtual

Convenience method sets the plane orientation normal to the x, y, or z axes.

Default is XAxes (0).

void vtkImagePlaneWidget::SetPlaneOrientationToXAxes ( )
inline

Convenience method sets the plane orientation normal to the x, y, or z axes.

Default is XAxes (0).

Definition at line 362 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::SetPlaneOrientationToYAxes ( )
inline

Convenience method sets the plane orientation normal to the x, y, or z axes.

Default is XAxes (0).

Definition at line 364 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::SetPlaneOrientationToZAxes ( )
inline

Convenience method sets the plane orientation normal to the x, y, or z axes.

Default is XAxes (0).

Definition at line 366 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::SetPicker ( vtkAbstractPropPicker )

Set the internal picker to one defined by the user.

In this way, a set of three orthogonal planes can share the same picker so that picking is performed correctly. The default internal picker can be re-set/allocated by setting to 0 (nullptr).

virtual void vtkImagePlaneWidget::SetLookupTable ( vtkLookupTable )
virtual

Set/Get the internal lookuptable (lut) to one defined by the user, or, alternatively, to the lut of another vtkImgePlaneWidget.

In this way, a set of three orthogonal planes can share the same lut so that window-levelling is performed uniformly among planes. The default internal lut can be re- set/allocated by setting to 0 (nullptr).

virtual vtkLookupTable* vtkImagePlaneWidget::GetLookupTable ( )
virtual

Set/Get the internal lookuptable (lut) to one defined by the user, or, alternatively, to the lut of another vtkImgePlaneWidget.

In this way, a set of three orthogonal planes can share the same lut so that window-levelling is performed uniformly among planes. The default internal lut can be re- set/allocated by setting to 0 (nullptr).

virtual void vtkImagePlaneWidget::SetDisplayText ( vtkTypeBool  )
virtual

Enable/disable text display of window-level, image coordinates and scalar values in a render window.

virtual vtkTypeBool vtkImagePlaneWidget::GetDisplayText ( )
virtual

Enable/disable text display of window-level, image coordinates and scalar values in a render window.

virtual void vtkImagePlaneWidget::DisplayTextOn ( )
virtual

Enable/disable text display of window-level, image coordinates and scalar values in a render window.

virtual void vtkImagePlaneWidget::DisplayTextOff ( )
virtual

Enable/disable text display of window-level, image coordinates and scalar values in a render window.

virtual void vtkImagePlaneWidget::SetCursorProperty ( vtkProperty )
virtual

Set the properties of the cross-hair cursor.

virtual vtkProperty* vtkImagePlaneWidget::GetCursorProperty ( )
virtual

Set the properties of the cross-hair cursor.

virtual void vtkImagePlaneWidget::SetMarginProperty ( vtkProperty )
virtual

Set the properties of the margins.

virtual vtkProperty* vtkImagePlaneWidget::GetMarginProperty ( )
virtual

Set the properties of the margins.

virtual void vtkImagePlaneWidget::SetMarginSizeX ( double  )
virtual

Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%.

virtual double vtkImagePlaneWidget::GetMarginSizeX ( )
virtual

Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%.

virtual void vtkImagePlaneWidget::SetMarginSizeY ( double  )
virtual

Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%.

virtual double vtkImagePlaneWidget::GetMarginSizeY ( )
virtual

Set the size of the margins based on a percentage of the plane's width and height, limited between 0 and 50%.

void vtkImagePlaneWidget::SetTextProperty ( vtkTextProperty tprop)

Set/Get the text property for the image data and window-level annotation.

vtkTextProperty* vtkImagePlaneWidget::GetTextProperty ( )

Set/Get the text property for the image data and window-level annotation.

virtual void vtkImagePlaneWidget::SetTexturePlaneProperty ( vtkProperty )
virtual

Set/Get the property for the resliced image.

virtual vtkProperty* vtkImagePlaneWidget::GetTexturePlaneProperty ( )
virtual

Set/Get the property for the resliced image.

void vtkImagePlaneWidget::SetWindowLevel ( double  window,
double  level,
int  copy = 0 
)

Set/Get the current window and level values.

SetWindowLevel should only be called after SetInput. If a shared lookup table is being used, a callback is required to update the window level values without having to update the lookup table again.

void vtkImagePlaneWidget::GetWindowLevel ( double  wl[2])

Set/Get the current window and level values.

SetWindowLevel should only be called after SetInput. If a shared lookup table is being used, a callback is required to update the window level values without having to update the lookup table again.

double vtkImagePlaneWidget::GetWindow ( )
inline

Set/Get the current window and level values.

SetWindowLevel should only be called after SetInput. If a shared lookup table is being used, a callback is required to update the window level values without having to update the lookup table again.

Definition at line 452 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::GetLevel ( )
inline

Set/Get the current window and level values.

SetWindowLevel should only be called after SetInput. If a shared lookup table is being used, a callback is required to update the window level values without having to update the lookup table again.

Definition at line 453 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::GetCursorData ( double  xyzv[4])

Get the image coordinate position and voxel value.

Currently only supports single component image data.

int vtkImagePlaneWidget::GetCursorDataStatus ( )

Get the status of the cursor data.

If this returns 1 the CurrentCursorPosition and CurrentImageValue will have current data. If it returns 0, these values are invalid.

virtual double* vtkImagePlaneWidget::GetCurrentCursorPosition ( )
virtual

Get the current cursor position.

To be used in conjunction with GetCursorDataStatus.

virtual void vtkImagePlaneWidget::GetCurrentCursorPosition ( double  data[3])
virtual

Get the current cursor position.

To be used in conjunction with GetCursorDataStatus.

virtual double vtkImagePlaneWidget::GetCurrentImageValue ( )
virtual

Get the current image value at the current cursor position.

To be used in conjunction with GetCursorDataStatus. The value is VTK_DOUBLE_MAX when the data is invalid.

virtual vtkMatrix4x4* vtkImagePlaneWidget::GetResliceAxes ( )
virtual

Get the current reslice class and reslice axes.

virtual vtkImageReslice* vtkImagePlaneWidget::GetReslice ( )
virtual

Get the current reslice class and reslice axes.

virtual void vtkImagePlaneWidget::SetUseContinuousCursor ( vtkTypeBool  )
virtual

Choose between voxel centered or continuous cursor probing.

With voxel centered probing, the cursor snaps to the nearest voxel and the reported cursor coordinates are extent based. With continuous probing, voxel data is interpolated using vtkDataSetAttributes' InterpolatePoint method and the reported coordinates are 3D spatial continuous.

virtual vtkTypeBool vtkImagePlaneWidget::GetUseContinuousCursor ( )
virtual

Choose between voxel centered or continuous cursor probing.

With voxel centered probing, the cursor snaps to the nearest voxel and the reported cursor coordinates are extent based. With continuous probing, voxel data is interpolated using vtkDataSetAttributes' InterpolatePoint method and the reported coordinates are 3D spatial continuous.

virtual void vtkImagePlaneWidget::UseContinuousCursorOn ( )
virtual

Choose between voxel centered or continuous cursor probing.

With voxel centered probing, the cursor snaps to the nearest voxel and the reported cursor coordinates are extent based. With continuous probing, voxel data is interpolated using vtkDataSetAttributes' InterpolatePoint method and the reported coordinates are 3D spatial continuous.

virtual void vtkImagePlaneWidget::UseContinuousCursorOff ( )
virtual

Choose between voxel centered or continuous cursor probing.

With voxel centered probing, the cursor snaps to the nearest voxel and the reported cursor coordinates are extent based. With continuous probing, voxel data is interpolated using vtkDataSetAttributes' InterpolatePoint method and the reported coordinates are 3D spatial continuous.

void vtkImagePlaneWidget::SetInteraction ( vtkTypeBool  interact)

Enable/disable mouse interaction so the widget remains on display.

virtual vtkTypeBool vtkImagePlaneWidget::GetInteraction ( )
virtual

Enable/disable mouse interaction so the widget remains on display.

virtual void vtkImagePlaneWidget::InteractionOn ( )
virtual

Enable/disable mouse interaction so the widget remains on display.

virtual void vtkImagePlaneWidget::InteractionOff ( )
virtual

Enable/disable mouse interaction so the widget remains on display.

virtual void vtkImagePlaneWidget::SetLeftButtonAction ( int  )
virtual

Set action associated to buttons.

virtual int vtkImagePlaneWidget::GetLeftButtonAction ( )
virtual

Set action associated to buttons.

virtual void vtkImagePlaneWidget::SetMiddleButtonAction ( int  )
virtual

Set action associated to buttons.

virtual int vtkImagePlaneWidget::GetMiddleButtonAction ( )
virtual

Set action associated to buttons.

virtual void vtkImagePlaneWidget::SetRightButtonAction ( int  )
virtual

Set action associated to buttons.

virtual int vtkImagePlaneWidget::GetRightButtonAction ( )
virtual

Set action associated to buttons.

virtual void vtkImagePlaneWidget::SetLeftButtonAutoModifier ( int  )
virtual

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

virtual int vtkImagePlaneWidget::GetLeftButtonAutoModifier ( )
virtual

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

virtual void vtkImagePlaneWidget::SetMiddleButtonAutoModifier ( int  )
virtual

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

virtual int vtkImagePlaneWidget::GetMiddleButtonAutoModifier ( )
virtual

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

virtual void vtkImagePlaneWidget::SetRightButtonAutoModifier ( int  )
virtual

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

virtual int vtkImagePlaneWidget::GetRightButtonAutoModifier ( )
virtual

Set the auto-modifiers associated to buttons.

This allows users to bind some buttons to actions that are usually triggered by a key modifier. For example, if you do not need cursoring, you can bind the left button action to VTK_SLICE_MOTION_ACTION (see above) and the left button auto modifier to VTK_CONTROL_MODIFIER: you end up with the left button controlling panning without pressing a key.

static void vtkImagePlaneWidget::ProcessEvents ( vtkObject object,
unsigned long  event,
void *  clientdata,
void *  calldata 
)
staticprotected
void vtkImagePlaneWidget::AddObservers ( )
protected
virtual void vtkImagePlaneWidget::OnMouseMove ( )
protectedvirtual
virtual void vtkImagePlaneWidget::OnLeftButtonDown ( )
protectedvirtual
virtual void vtkImagePlaneWidget::OnLeftButtonUp ( )
protectedvirtual
virtual void vtkImagePlaneWidget::OnMiddleButtonDown ( )
protectedvirtual
virtual void vtkImagePlaneWidget::OnMiddleButtonUp ( )
protectedvirtual
virtual void vtkImagePlaneWidget::OnRightButtonDown ( )
protectedvirtual
virtual void vtkImagePlaneWidget::OnRightButtonUp ( )
protectedvirtual
void vtkImagePlaneWidget::OnChar ( )
overrideprotectedvirtual

Sets up the keypress-i event.

Reimplemented from vtkInteractorObserver.

virtual void vtkImagePlaneWidget::StartCursor ( )
protectedvirtual
virtual void vtkImagePlaneWidget::StopCursor ( )
protectedvirtual
virtual void vtkImagePlaneWidget::StartSliceMotion ( )
protectedvirtual
virtual void vtkImagePlaneWidget::StopSliceMotion ( )
protectedvirtual
virtual void vtkImagePlaneWidget::StartWindowLevel ( )
protectedvirtual
virtual void vtkImagePlaneWidget::StopWindowLevel ( )
protectedvirtual
void vtkImagePlaneWidget::HighlightPlane ( int  highlight)
protected
void vtkImagePlaneWidget::GeneratePlaneOutline ( )
protected
void vtkImagePlaneWidget::BuildRepresentation ( )
protected
void vtkImagePlaneWidget::RegisterPickers ( )
overrideprotectedvirtual

Register internal Pickers in the Picking Manager.

Must be reimplemented by concrete widgets to register their pickers.

Reimplemented from vtkInteractorObserver.

void vtkImagePlaneWidget::InvertTable ( )
protected
void vtkImagePlaneWidget::WindowLevel ( int  X,
int  Y 
)
protected
void vtkImagePlaneWidget::Push ( double p1,
double p2 
)
protected
void vtkImagePlaneWidget::Spin ( double p1,
double p2 
)
protected
void vtkImagePlaneWidget::Rotate ( double p1,
double p2,
double vpn 
)
protected
void vtkImagePlaneWidget::Scale ( double p1,
double p2,
int  X,
int  Y 
)
protected
void vtkImagePlaneWidget::Translate ( double p1,
double p2 
)
protected
vtkLookupTable* vtkImagePlaneWidget::CreateDefaultLookupTable ( )
protected
void vtkImagePlaneWidget::CreateDefaultProperties ( )
protected
void vtkImagePlaneWidget::UpdatePlane ( )
protected
void vtkImagePlaneWidget::GenerateTexturePlane ( )
protected
void vtkImagePlaneWidget::GenerateCursor ( )
protected
void vtkImagePlaneWidget::UpdateCursor ( int  ,
int   
)
protected
void vtkImagePlaneWidget::ActivateCursor ( int  )
protected
int vtkImagePlaneWidget::UpdateContinuousCursor ( double q)
protected
int vtkImagePlaneWidget::UpdateDiscreteCursor ( double q)
protected
void vtkImagePlaneWidget::GenerateText ( )
protected
void vtkImagePlaneWidget::ManageTextDisplay ( )
protected
void vtkImagePlaneWidget::ActivateText ( int  )
protected
void vtkImagePlaneWidget::AdjustState ( )
protected
void vtkImagePlaneWidget::GenerateMargins ( )
protected
void vtkImagePlaneWidget::UpdateMargins ( )
protected
void vtkImagePlaneWidget::ActivateMargins ( int  )
protected

Member Data Documentation

vtkTypeBool vtkImagePlaneWidget::TextureVisibility
protected

Definition at line 561 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::LeftButtonAction
protected

Definition at line 563 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::MiddleButtonAction
protected

Definition at line 564 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::RightButtonAction
protected

Definition at line 565 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::LeftButtonAutoModifier
protected

Definition at line 567 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::MiddleButtonAutoModifier
protected

Definition at line 568 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::RightButtonAutoModifier
protected

Definition at line 569 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::LastButtonPressed
protected

Definition at line 578 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::State
protected

Definition at line 581 of file vtkImagePlaneWidget.h.

vtkTypeBool vtkImagePlaneWidget::Interaction
protected

Definition at line 624 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::PlaneOrientation
protected

Definition at line 625 of file vtkImagePlaneWidget.h.

vtkTypeBool vtkImagePlaneWidget::RestrictPlaneToVolume
protected

Definition at line 626 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::OriginalWindow
protected

Definition at line 627 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::OriginalLevel
protected

Definition at line 628 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::CurrentWindow
protected

Definition at line 629 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::CurrentLevel
protected

Definition at line 630 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::InitialWindow
protected

Definition at line 631 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::InitialLevel
protected

Definition at line 632 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::StartWindowLevelPositionX
protected

Definition at line 633 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::StartWindowLevelPositionY
protected

Definition at line 634 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::ResliceInterpolate
protected

Definition at line 635 of file vtkImagePlaneWidget.h.

vtkTypeBool vtkImagePlaneWidget::TextureInterpolate
protected

Definition at line 636 of file vtkImagePlaneWidget.h.

vtkTypeBool vtkImagePlaneWidget::UserControlledLookupTable
protected

Definition at line 637 of file vtkImagePlaneWidget.h.

vtkTypeBool vtkImagePlaneWidget::DisplayText
protected

Definition at line 638 of file vtkImagePlaneWidget.h.

vtkPlaneSource* vtkImagePlaneWidget::PlaneSource
protected

Definition at line 641 of file vtkImagePlaneWidget.h.

vtkPolyData* vtkImagePlaneWidget::PlaneOutlinePolyData
protected

Definition at line 642 of file vtkImagePlaneWidget.h.

vtkActor* vtkImagePlaneWidget::PlaneOutlineActor
protected

Definition at line 643 of file vtkImagePlaneWidget.h.

vtkAbstractPropPicker* vtkImagePlaneWidget::PlanePicker
protected

Definition at line 651 of file vtkImagePlaneWidget.h.

vtkImageData* vtkImagePlaneWidget::ImageData
protected

Definition at line 667 of file vtkImagePlaneWidget.h.

vtkImageReslice* vtkImagePlaneWidget::Reslice
protected

Definition at line 668 of file vtkImagePlaneWidget.h.

vtkMatrix4x4* vtkImagePlaneWidget::ResliceAxes
protected

Definition at line 669 of file vtkImagePlaneWidget.h.

vtkTransform* vtkImagePlaneWidget::Transform
protected

Definition at line 670 of file vtkImagePlaneWidget.h.

vtkActor* vtkImagePlaneWidget::TexturePlaneActor
protected

Definition at line 671 of file vtkImagePlaneWidget.h.

vtkImageMapToColors* vtkImagePlaneWidget::ColorMap
protected

Definition at line 672 of file vtkImagePlaneWidget.h.

vtkTexture* vtkImagePlaneWidget::Texture
protected

Definition at line 673 of file vtkImagePlaneWidget.h.

vtkLookupTable* vtkImagePlaneWidget::LookupTable
protected

Definition at line 674 of file vtkImagePlaneWidget.h.

vtkProperty* vtkImagePlaneWidget::PlaneProperty
protected

Definition at line 681 of file vtkImagePlaneWidget.h.

vtkProperty* vtkImagePlaneWidget::SelectedPlaneProperty
protected

Definition at line 682 of file vtkImagePlaneWidget.h.

vtkProperty* vtkImagePlaneWidget::CursorProperty
protected

Definition at line 683 of file vtkImagePlaneWidget.h.

vtkProperty* vtkImagePlaneWidget::MarginProperty
protected

Definition at line 684 of file vtkImagePlaneWidget.h.

vtkProperty* vtkImagePlaneWidget::TexturePlaneProperty
protected

Definition at line 685 of file vtkImagePlaneWidget.h.

vtkPolyData* vtkImagePlaneWidget::CursorPolyData
protected

Definition at line 693 of file vtkImagePlaneWidget.h.

vtkActor* vtkImagePlaneWidget::CursorActor
protected

Definition at line 694 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::CurrentCursorPosition[3]
protected

Definition at line 695 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::CurrentImageValue
protected

Definition at line 696 of file vtkImagePlaneWidget.h.

vtkTypeBool vtkImagePlaneWidget::UseContinuousCursor
protected

Definition at line 702 of file vtkImagePlaneWidget.h.

vtkTextActor* vtkImagePlaneWidget::TextActor
protected

Definition at line 705 of file vtkImagePlaneWidget.h.

char vtkImagePlaneWidget::TextBuff[VTK_IMAGE_PLANE_WIDGET_MAX_TEXTBUFF]
protected

Definition at line 706 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::RotateAxis[3]
protected

Definition at line 712 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::RadiusVector[3]
protected

Definition at line 713 of file vtkImagePlaneWidget.h.

vtkPolyData* vtkImagePlaneWidget::MarginPolyData
protected

Definition at line 717 of file vtkImagePlaneWidget.h.

vtkActor* vtkImagePlaneWidget::MarginActor
protected

Definition at line 718 of file vtkImagePlaneWidget.h.

int vtkImagePlaneWidget::MarginSelectMode
protected

Definition at line 719 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::MarginSizeX
protected

Definition at line 723 of file vtkImagePlaneWidget.h.

double vtkImagePlaneWidget::MarginSizeY
protected

Definition at line 724 of file vtkImagePlaneWidget.h.


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