VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | Protected Attributes
vtkImagePlaneWidget Class Reference

3D widget for reslicing image data More...

#include <vtkImagePlaneWidget.h>

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

List of all members.

Public Types

typedef vtkPolyDataSourceWidget Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkImagePlaneWidgetNewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
void SetInputConnection (vtkAlgorithmOutput *aout)
void GetVector1 (double v1[3])
void GetVector2 (double v2[3])
int GetSliceIndex ()
void SetSliceIndex (int index)
double GetSlicePosition ()
void SetSlicePosition (double position)
vtkImageDataGetResliceOutput ()
void GetPolyData (vtkPolyData *pd)
vtkPolyDataAlgorithmGetPolyDataAlgorithm ()
void UpdatePlacement (void)
vtkTextureGetTexture ()
void SetPicker (vtkAbstractPropPicker *)
int GetCursorData (double xyzv[4])
int GetCursorDataStatus ()
virtual void SetEnabled (int)
virtual void PlaceWidget (double bounds[6])
void PlaceWidget ()
void PlaceWidget (double xmin, double xmax, double ymin, double ymax, double zmin, double zmax)
void SetOrigin (double x, double y, double z)
void SetOrigin (double xyz[3])
doubleGetOrigin ()
void GetOrigin (double xyz[3])
void SetPoint1 (double x, double y, double z)
void SetPoint1 (double xyz[3])
doubleGetPoint1 ()
void GetPoint1 (double xyz[3])
void SetPoint2 (double x, double y, double z)
void SetPoint2 (double xyz[3])
doubleGetPoint2 ()
void GetPoint2 (double xyz[3])
doubleGetCenter ()
void GetCenter (double xyz[3])
doubleGetNormal ()
void GetNormal (double xyz[3])
void SetResliceInterpolate (int)
virtual int GetResliceInterpolate ()
void SetResliceInterpolateToNearestNeighbour ()
void SetResliceInterpolateToLinear ()
void SetResliceInterpolateToCubic ()
virtual void SetRestrictPlaneToVolume (int)
virtual int GetRestrictPlaneToVolume ()
virtual void RestrictPlaneToVolumeOn ()
virtual void RestrictPlaneToVolumeOff ()
virtual void SetUserControlledLookupTable (int)
virtual int GetUserControlledLookupTable ()
virtual void UserControlledLookupTableOn ()
virtual void UserControlledLookupTableOff ()
virtual void SetTextureInterpolate (int)
virtual int GetTextureInterpolate ()
virtual void TextureInterpolateOn ()
virtual void TextureInterpolateOff ()
virtual void SetTextureVisibility (int)
virtual int GetTextureVisibility ()
virtual void TextureVisibilityOn ()
virtual void TextureVisibilityOff ()
virtual vtkImageMapToColorsGetColorMap ()
virtual void SetColorMap (vtkImageMapToColors *)
virtual void SetPlaneProperty (vtkProperty *)
virtual vtkPropertyGetPlaneProperty ()
virtual void SetSelectedPlaneProperty (vtkProperty *)
virtual vtkPropertyGetSelectedPlaneProperty ()
void SetPlaneOrientation (int)
virtual int GetPlaneOrientation ()
void SetPlaneOrientationToXAxes ()
void SetPlaneOrientationToYAxes ()
void SetPlaneOrientationToZAxes ()
virtual void SetLookupTable (vtkLookupTable *)
virtual vtkLookupTableGetLookupTable ()
virtual void SetDisplayText (int)
virtual int GetDisplayText ()
virtual void DisplayTextOn ()
virtual void DisplayTextOff ()
virtual void SetCursorProperty (vtkProperty *)
virtual vtkPropertyGetCursorProperty ()
virtual void SetMarginProperty (vtkProperty *)
virtual vtkPropertyGetMarginProperty ()
virtual void SetMarginSizeX (double)
virtual double GetMarginSizeX ()
virtual void SetMarginSizeY (double)
virtual double GetMarginSizeY ()
void SetTextProperty (vtkTextProperty *tprop)
vtkTextPropertyGetTextProperty ()
virtual void SetTexturePlaneProperty (vtkProperty *)
virtual vtkPropertyGetTexturePlaneProperty ()
void SetWindowLevel (double window, double level, int copy=0)
void GetWindowLevel (double wl[2])
double GetWindow ()
double GetLevel ()
virtual doubleGetCurrentCursorPosition ()
virtual void GetCurrentCursorPosition (double data[3])
virtual double GetCurrentImageValue ()
virtual vtkMatrix4x4GetResliceAxes ()
virtual vtkImageResliceGetReslice ()
virtual void SetUseContinuousCursor (int)
virtual int GetUseContinuousCursor ()
virtual void UseContinuousCursorOn ()
virtual void UseContinuousCursorOff ()
void SetInteraction (int interact)
virtual int GetInteraction ()
virtual void InteractionOn ()
virtual void InteractionOff ()

Static Public Member Functions

static vtkImagePlaneWidgetNew ()
static int IsTypeOf (const char *type)
static vtkImagePlaneWidgetSafeDownCast (vtkObjectBase *o)

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 ()
void AddObservers ()
virtual void OnMouseMove ()
virtual void OnLeftButtonDown ()
virtual void OnLeftButtonUp ()
virtual void OnMiddleButtonDown ()
virtual void OnMiddleButtonUp ()
virtual void OnRightButtonDown ()
virtual void OnRightButtonUp ()
virtual void OnChar ()
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 ()
virtual void RegisterPickers ()
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)

Static Protected Member Functions

static void ProcessEvents (vtkObject *object, unsigned long event, void *clientdata, void *calldata)

Protected Attributes

int TextureVisibility
int LeftButtonAction
int MiddleButtonAction
int RightButtonAction
int LeftButtonAutoModifier
int MiddleButtonAutoModifier
int RightButtonAutoModifier
int LastButtonPressed
int State
int Interaction
int PlaneOrientation
int RestrictPlaneToVolume
double OriginalWindow
double OriginalLevel
double CurrentWindow
double CurrentLevel
double InitialWindow
double InitialLevel
int StartWindowLevelPositionX
int StartWindowLevelPositionY
int ResliceInterpolate
int TextureInterpolate
int UserControlledLookupTable
int 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
int UseContinuousCursor
vtkTextActorTextActor
char TextBuff [128]
double RotateAxis [3]
double RadiusVector [3]
vtkPolyDataMarginPolyData
vtkActorMarginActor
int MarginSelectMode
double MarginSizeX
double MarginSizeY
enum  { VTK_CURSOR_ACTION = 0, VTK_SLICE_MOTION_ACTION = 1, VTK_WINDOW_LEVEL_ACTION = 2 }
virtual void SetLeftButtonAction (int)
virtual int GetLeftButtonAction ()
virtual void SetMiddleButtonAction (int)
virtual int GetMiddleButtonAction ()
virtual void SetRightButtonAction (int)
virtual int GetRightButtonAction ()
enum  { VTK_NO_MODIFIER = 0, VTK_SHIFT_MODIFIER = 1, VTK_CONTROL_MODIFIER = 2 }
virtual void SetLeftButtonAutoModifier (int)
virtual int GetLeftButtonAutoModifier ()
virtual void SetMiddleButtonAutoModifier (int)
virtual int GetMiddleButtonAutoModifier ()
virtual void SetRightButtonAutoModifier (int)
virtual int GetRightButtonAutoModifier ()

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
Events:
vtkCommand::DisableEvent vtkCommand::EndInteractionEvent vtkCommand::InteractionEvent vtkCommand::StartWindowLevelEvent vtkCommand::EnableEvent vtkCommand::WindowLevelEvent vtkCommand::StartInteractionEvent vtkCommand::EndWindowLevelEvent vtkCommand::ResetWindowLevelEvent
Examples:
vtkImagePlaneWidget (Examples)
Tests:
vtkImagePlaneWidget (Tests)

Definition at line 135 of file vtkImagePlaneWidget.h.


Member Typedef Documentation

Reimplemented from vtkPolyDataSourceWidget.

Definition at line 141 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 436 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 459 of file vtkImagePlaneWidget.h.

anonymous enum [protected]
Enumerator:
VTK_NO_BUTTON 
VTK_LEFT_BUTTON 
VTK_MIDDLE_BUTTON 
VTK_RIGHT_BUTTON 

Definition at line 489 of file vtkImagePlaneWidget.h.

Enumerator:
Start 
Cursoring 
WindowLevelling 
Pushing 
Spinning 
Rotating 
Moving 
Scaling 
Outside 

Definition at line 501 of file vtkImagePlaneWidget.h.


Constructor & Destructor Documentation


Member Function Documentation

Instantiate the object.

Reimplemented from vtkObject.

static int vtkImagePlaneWidget::IsTypeOf ( const char *  name) [static]

Return 1 if this class type 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.

virtual int 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.

Reimplemented from vtkPolyDataSourceWidget.

virtual vtkObjectBase* vtkImagePlaneWidget::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkPolyDataSourceWidget.

Reimplemented from vtkPolyDataSourceWidget.

void vtkImagePlaneWidget::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

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 vtkPolyDataSourceWidget.

virtual void vtkImagePlaneWidget::SetEnabled ( int  ) [virtual]

Methods that satisfy the superclass' API.

Reimplemented from vtkInteractorObserver.

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

Methods that satisfy the superclass' API.

Implements vtkPolyDataSourceWidget.

void vtkImagePlaneWidget::PlaceWidget ( ) [inline, virtual]

Methods that satisfy the superclass' API.

Reimplemented from vtkPolyDataSourceWidget.

Definition at line 148 of file vtkImagePlaneWidget.h.

void vtkImagePlaneWidget::PlaceWidget ( double  xmin,
double  xmax,
double  ymin,
double  ymax,
double  zmin,
double  zmax 
) [inline, virtual]

Methods that satisfy the superclass' API.

Reimplemented from vtkPolyDataSourceWidget.

Definition at line 150 of file vtkImagePlaneWidget.h.

Set the vtkImageData* input for the vtkImageReslice.

Reimplemented from vtk3DWidget.

Set/Get the origin of the plane.

Set/Get the origin of the plane.

Set/Get the origin of the plane.

Set/Get the origin of the plane.

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

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

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

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

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

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

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

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

Get the center of the plane.

Get the center of the plane.

Get the normal to the plane.

Get the normal to the plane.

Get the vector from the plane origin to point1.

Get the vector from the plane origin to point2.

Get the slice position in terms of the data extent.

Set the slice position in terms of the data extent.

Get the position of the slice along its normal.

Set the position of the slice along its normal.

Set the interpolation to use when texturing the plane.

Set the interpolation to use when texturing the plane.

Set the interpolation to use when texturing the plane.

Definition at line 218 of file vtkImagePlaneWidget.h.

Set the interpolation to use when texturing the plane.

Definition at line 220 of file vtkImagePlaneWidget.h.

Set the interpolation to use when texturing the plane.

Definition at line 222 of file vtkImagePlaneWidget.h.

Convenience method to get the vtkImageReslice output.

virtual void vtkImagePlaneWidget::SetRestrictPlaneToVolume ( int  ) [virtual]

Make sure that the plane remains within the volume. Default is On.

Make sure that the plane remains within the volume. Default is On.

Make sure that the plane remains within the volume. Default is On.

Make sure that the plane remains within the volume. Default is On.

Let the user control the lookup table. NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

Let the user control the lookup table. NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

Let the user control the lookup table. NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

Let the user control the lookup table. NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off.

virtual void vtkImagePlaneWidget::SetTextureInterpolate ( int  ) [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.

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 ( int  ) [virtual]

Control the visibility of the actual texture mapped reformatted plane. in some cases you may only want the plane outline for example.

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.

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.

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  ) [virtual]

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

Implements vtkPolyDataSourceWidget.

Convenience method to get the texture used by this widget. This can be used in external slice viewers.

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.

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

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

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

Convenience method sets the plane orientation normal to the x, y, or z axes. Default is XAxes (0).

Convenience method sets the plane orientation normal to the x, y, or z axes. Default is XAxes (0).

Convenience method sets the plane orientation normal to the x, y, or z axes. Default is XAxes (0).

Definition at line 309 of file vtkImagePlaneWidget.h.

Convenience method sets the plane orientation normal to the x, y, or z axes. Default is XAxes (0).

Definition at line 311 of file vtkImagePlaneWidget.h.

Convenience method sets the plane orientation normal to the x, y, or z axes. Default is XAxes (0).

Definition at line 313 of file vtkImagePlaneWidget.h.

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 (NULL).

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 (NULL).

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 (NULL).

virtual void vtkImagePlaneWidget::SetDisplayText ( int  ) [virtual]

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

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.

Set the properties of the cross-hair cursor.

virtual void vtkImagePlaneWidget::SetMarginProperty ( vtkProperty ) [virtual]

Set the properties of the margins.

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%.

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%.

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

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

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

Set/Get the property for the resliced image.

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.

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.

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 382 of file vtkImagePlaneWidget.h.

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 383 of file vtkImagePlaneWidget.h.

Get the image coordinate position and voxel value. Currently only supports single component image data.

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.

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.

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.

Get the current reslice class and reslice axes

Get the current reslice class and reslice axes

virtual void vtkImagePlaneWidget::SetUseContinuousCursor ( int  ) [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.

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.

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

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.

Set action associated to buttons.

virtual void vtkImagePlaneWidget::SetMiddleButtonAction ( int  ) [virtual]

Set action associated to buttons.

Set action associated to buttons.

virtual void vtkImagePlaneWidget::SetRightButtonAction ( int  ) [virtual]

Set action associated to buttons.

Set action associated to buttons.

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.

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.

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.

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.

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.

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 
) [static, protected]

Handles the char widget activation event. Also handles the delete event.

Reimplemented from vtkInteractorObserver.

void vtkImagePlaneWidget::AddObservers ( ) [protected]
virtual void vtkImagePlaneWidget::OnMouseMove ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnLeftButtonDown ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnLeftButtonUp ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnMiddleButtonDown ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnMiddleButtonUp ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnRightButtonDown ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnRightButtonUp ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::OnChar ( ) [protected, virtual]

Sets up the keypress-i event.

Reimplemented from vtkInteractorObserver.

virtual void vtkImagePlaneWidget::StartCursor ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::StopCursor ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::StartSliceMotion ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::StopSliceMotion ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::StartWindowLevel ( ) [protected, virtual]
virtual void vtkImagePlaneWidget::StopWindowLevel ( ) [protected, virtual]
void vtkImagePlaneWidget::HighlightPlane ( int  highlight) [protected]
virtual void vtkImagePlaneWidget::RegisterPickers ( ) [protected, virtual]

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]
void vtkImagePlaneWidget::UpdatePlane ( ) [protected]
void vtkImagePlaneWidget::UpdateCursor ( int  ,
int   
) [protected]
void vtkImagePlaneWidget::ActivateCursor ( int  ) [protected]
void vtkImagePlaneWidget::GenerateText ( ) [protected]
void vtkImagePlaneWidget::ActivateText ( int  ) [protected]
void vtkImagePlaneWidget::AdjustState ( ) [protected]
void vtkImagePlaneWidget::UpdateMargins ( ) [protected]
void vtkImagePlaneWidget::ActivateMargins ( int  ) [protected]

Member Data Documentation

Definition at line 478 of file vtkImagePlaneWidget.h.

Definition at line 480 of file vtkImagePlaneWidget.h.

Definition at line 481 of file vtkImagePlaneWidget.h.

Definition at line 482 of file vtkImagePlaneWidget.h.

Definition at line 484 of file vtkImagePlaneWidget.h.

Definition at line 485 of file vtkImagePlaneWidget.h.

Definition at line 486 of file vtkImagePlaneWidget.h.

Definition at line 497 of file vtkImagePlaneWidget.h.

Definition at line 500 of file vtkImagePlaneWidget.h.

Definition at line 544 of file vtkImagePlaneWidget.h.

Definition at line 545 of file vtkImagePlaneWidget.h.

Definition at line 546 of file vtkImagePlaneWidget.h.

Definition at line 547 of file vtkImagePlaneWidget.h.

Definition at line 548 of file vtkImagePlaneWidget.h.

Definition at line 549 of file vtkImagePlaneWidget.h.

Definition at line 550 of file vtkImagePlaneWidget.h.

Definition at line 551 of file vtkImagePlaneWidget.h.

Definition at line 552 of file vtkImagePlaneWidget.h.

Definition at line 553 of file vtkImagePlaneWidget.h.

Definition at line 554 of file vtkImagePlaneWidget.h.

Definition at line 555 of file vtkImagePlaneWidget.h.

Definition at line 556 of file vtkImagePlaneWidget.h.

Definition at line 557 of file vtkImagePlaneWidget.h.

Definition at line 558 of file vtkImagePlaneWidget.h.

Definition at line 561 of file vtkImagePlaneWidget.h.

Definition at line 562 of file vtkImagePlaneWidget.h.

Definition at line 563 of file vtkImagePlaneWidget.h.

Definition at line 571 of file vtkImagePlaneWidget.h.

Definition at line 587 of file vtkImagePlaneWidget.h.

Definition at line 588 of file vtkImagePlaneWidget.h.

Definition at line 589 of file vtkImagePlaneWidget.h.

Definition at line 590 of file vtkImagePlaneWidget.h.

Definition at line 591 of file vtkImagePlaneWidget.h.

Definition at line 592 of file vtkImagePlaneWidget.h.

Definition at line 593 of file vtkImagePlaneWidget.h.

Definition at line 594 of file vtkImagePlaneWidget.h.

Definition at line 601 of file vtkImagePlaneWidget.h.

Definition at line 602 of file vtkImagePlaneWidget.h.

Definition at line 603 of file vtkImagePlaneWidget.h.

Definition at line 604 of file vtkImagePlaneWidget.h.

Definition at line 605 of file vtkImagePlaneWidget.h.

Definition at line 613 of file vtkImagePlaneWidget.h.

Definition at line 614 of file vtkImagePlaneWidget.h.

Definition at line 615 of file vtkImagePlaneWidget.h.

Definition at line 616 of file vtkImagePlaneWidget.h.

Definition at line 622 of file vtkImagePlaneWidget.h.

Definition at line 625 of file vtkImagePlaneWidget.h.

char vtkImagePlaneWidget::TextBuff[128] [protected]

Definition at line 626 of file vtkImagePlaneWidget.h.

Definition at line 632 of file vtkImagePlaneWidget.h.

Definition at line 633 of file vtkImagePlaneWidget.h.

Definition at line 637 of file vtkImagePlaneWidget.h.

Definition at line 638 of file vtkImagePlaneWidget.h.

Definition at line 639 of file vtkImagePlaneWidget.h.

Definition at line 643 of file vtkImagePlaneWidget.h.

Definition at line 644 of file vtkImagePlaneWidget.h.


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