vtkImagePlaneWidget Class Reference
#include <vtkImagePlaneWidget.h>
Inheritance diagram for vtkImagePlaneWidget:
[legend]Collaboration diagram for vtkImagePlaneWidget:
[legend]List of all members.
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(), UpdateOrigin() and UpdateNormal() 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. 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).
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.
- Warning:
- Note that handles and plane can be picked even when they are "behind" other actors. This is an intended feature and not a bug.
- See also:
- vtk3DWidget vtkBoxWidget vtkLineWidget vtkPlaneWidget vtkPointWidget vtkPolyDataSourceWidget vtkSphereWidget vtkImplicitPlaneWidget
- Events:
- vtkCommand::DisableEvent vtkCommand::EndInteractionEvent vtkCommand::InteractionEvent vtkCommand::StartInteractionEvent vtkCommand::EnableEvent
- Created by:
-
- CVS contributions (if > 5%):
- Inglis, Dean (59%)
- Schroeder, Will (19%)
- Barre, Sebastien (8%)
- Martin, Ken (5%)
- CVS logs (CVSweb):
.h (/Hybrid/vtkImagePlaneWidget
.h)
.cxx (/Hybrid/vtkImagePlaneWidget
.cxx)
- Examples:
- vtkImagePlaneWidget (Examples)
- Tests:
- vtkImagePlaneWidget (Tests)
Definition at line 147 of file vtkImagePlaneWidget.h.
|
[NOHEADER] |
enum | { CURSOR_ACTION = 0,
SLICE_MOTION_ACTION = 1,
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 () |
[NOHEADER] |
enum | { NO_MODIFIER = 0,
SHIFT_MODIFIER = 1,
CONTROL_MODIFIER = 2
} |
virtual void | SetLeftButtonAutoModifier (int) |
virtual int | GetLeftButtonAutoModifier () |
virtual void | SetMiddleButtonAutoModifier (int) |
virtual int | GetMiddleButtonAutoModifier () |
virtual void | SetRightButtonAutoModifier (int) |
virtual int | GetRightButtonAutoModifier () |
Public Types |
typedef vtkPolyDataSourceWidget | Superclass |
Public Member Functions |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetInput (vtkDataSet *input) |
void | GetVector1 (double v1[3]) |
void | GetVector2 (double v2[3]) |
int | GetSliceIndex () |
void | SetSliceIndex (int index) |
double | GetSlicePosition () |
void | SetSlicePosition (double position) |
vtkImageData * | GetResliceOutput () |
void | GetPolyData (vtkPolyData *pd) |
vtkPolyDataSource * | GetPolyDataSource () |
void | UpdatePlacement (void) |
vtkTexture * | GetTexture () |
void | SetPicker (vtkCellPicker *) |
int | GetCursorData (double xyzv[4]) |
|
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]) |
double * | GetOrigin () |
void | GetOrigin (double xyz[3]) |
|
void | SetPoint1 (double x, double y, double z) |
void | SetPoint1 (double xyz[3]) |
double * | GetPoint1 () |
void | GetPoint1 (double xyz[3]) |
|
void | SetPoint2 (double x, double y, double z) |
void | SetPoint2 (double xyz[3]) |
double * | GetPoint2 () |
void | GetPoint2 (double xyz[3]) |
|
double * | GetCenter () |
void | GetCenter (double xyz[3]) |
|
double * | GetNormal () |
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 vtkImageMapToColors * | GetColorMap () |
virtual void | SetColorMap (vtkImageMapToColors *) |
|
virtual void | SetPlaneProperty (vtkProperty *) |
virtual vtkProperty * | GetPlaneProperty () |
virtual void | SetSelectedPlaneProperty (vtkProperty *) |
virtual vtkProperty * | GetSelectedPlaneProperty () |
|
void | SetPlaneOrientation (int) |
virtual int | GetPlaneOrientation () |
void | SetPlaneOrientationToXAxes () |
void | SetPlaneOrientationToYAxes () |
void | SetPlaneOrientationToZAxes () |
|
virtual void | SetLookupTable (vtkLookupTable *) |
virtual vtkLookupTable * | GetLookupTable () |
|
virtual void | SetDisplayText (int) |
virtual int | GetDisplayText () |
virtual void | DisplayTextOn () |
virtual void | DisplayTextOff () |
|
virtual void | SetCursorProperty (vtkProperty *) |
virtual vtkProperty * | GetCursorProperty () |
|
virtual void | SetMarginProperty (vtkProperty *) |
virtual vtkProperty * | GetMarginProperty () |
|
void | SetTextProperty (vtkTextProperty *tprop) |
vtkTextProperty * | GetTextProperty () |
|
virtual void | SetTexturePlaneProperty (vtkProperty *) |
virtual vtkProperty * | GetTexturePlaneProperty () |
|
void | SetWindowLevel (double window, double level) |
void | GetWindowLevel (double wl[2]) |
|
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 |
vtkImagePlaneWidget * | New () |
int | IsTypeOf (const char *type) |
vtkImagePlaneWidget * | SafeDownCast (vtkObject *o) |
Protected Types |
enum | { NO_BUTTON = 0,
LEFT_BUTTON = 1,
MIDDLE_BUTTON = 2,
RIGHT_BUTTON = 3
} |
enum | WidgetState {
Start = 0,
Cursoring,
WindowLevelling,
Pushing,
Spinning,
Rotating,
Moving,
Scaling,
Outside
} |
Protected Member Functions |
| 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 | 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 | 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) |
vtkLookupTable * | CreateDefaultLookupTable () |
void | CreateDefaultProperties () |
void | UpdateNormal () |
void | UpdateOrigin () |
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 |
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 |
int | ResliceInterpolate |
int | TextureInterpolate |
int | UserControlledLookupTable |
int | DisplayText |
vtkPlaneSource * | PlaneSource |
double | Normal [3] |
vtkPolyData * | PlaneOutlinePolyData |
vtkActor * | PlaneOutlineActor |
vtkPolyDataMapper * | PlaneOutlineMapper |
vtkCellPicker * | PlanePicker |
vtkImageData * | ImageData |
vtkImageReslice * | Reslice |
vtkMatrix4x4 * | ResliceAxes |
vtkTransform * | Transform |
vtkTextureMapToPlane * | TexturePlaneCoords |
vtkPolyDataMapper * | TexturePlaneMapper |
vtkActor * | TexturePlaneActor |
vtkImageMapToColors * | ColorMap |
vtkTexture * | Texture |
vtkLookupTable * | LookupTable |
vtkProperty * | PlaneProperty |
vtkProperty * | SelectedPlaneProperty |
vtkProperty * | CursorProperty |
vtkProperty * | MarginProperty |
vtkProperty * | TexturePlaneProperty |
vtkPolyData * | CursorPolyData |
vtkPolyDataMapper * | CursorMapper |
vtkActor * | CursorActor |
double | CurrentCursorPosition [3] |
double | CurrentImageValue |
int | UseContinuousCursor |
vtkTextActor * | TextActor |
char | TextBuff [128] |
double | RotateAxis [3] |
double | RadiusVector [3] |
vtkPolyData * | MarginPolyData |
vtkPolyDataMapper * | MarginMapper |
vtkActor * | MarginActor |
int | MarginSelectMode |
Member Typedef Documentation
Member Enumeration Documentation
|
Set action associated to buttons. BTX - Enumeration values:
-
CURSOR_ACTION |
|
SLICE_MOTION_ACTION |
|
WINDOW_LEVEL_ACTION |
|
Definition at line 410 of file vtkImagePlaneWidget.h. |
|
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX - Enumeration values:
-
NO_MODIFIER |
|
SHIFT_MODIFIER |
|
CONTROL_MODIFIER |
|
Definition at line 432 of file vtkImagePlaneWidget.h. |
anonymous enum [protected] |
|
|
- Enumeration values:
-
NO_BUTTON |
|
LEFT_BUTTON |
|
MIDDLE_BUTTON |
|
RIGHT_BUTTON |
|
Definition at line 462 of file vtkImagePlaneWidget.h. |
|
- Enumeration values:
-
Start |
|
Cursoring |
|
WindowLevelling |
|
Pushing |
|
Spinning |
|
Rotating |
|
Moving |
|
Scaling |
|
Outside |
|
Definition at line 474 of file vtkImagePlaneWidget.h. |
Constructor & Destructor Documentation
vtkImagePlaneWidget::vtkImagePlaneWidget |
( |
|
) |
[protected] |
|
Member Function Documentation
|
Instantiate the object.
Reimplemented from vtkObject. |
virtual const char* vtkImagePlaneWidget::GetClassName |
( |
|
) |
[virtual] |
|
int vtkImagePlaneWidget::IsTypeOf |
( |
const char * |
type |
) |
[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 vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkPolyDataSourceWidget. |
virtual int vtkImagePlaneWidget::IsA |
( |
const char * |
type |
) |
[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 vtkTypeRevisionMacro found in vtkSetGet.h.
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] |
|
virtual void vtkImagePlaneWidget::PlaceWidget |
( |
double |
bounds[6] |
) |
[virtual] |
|
void vtkImagePlaneWidget::PlaceWidget |
( |
|
) |
[inline, virtual] |
|
void vtkImagePlaneWidget::PlaceWidget |
( |
double |
xmin, |
|
|
double |
xmax, |
|
|
double |
ymin, |
|
|
double |
ymax, |
|
|
double |
zmin, |
|
|
double |
zmax |
|
) |
[inline, virtual] |
|
void vtkImagePlaneWidget::SetInput |
( |
vtkDataSet * |
input |
) |
[virtual] |
|
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] |
|
void vtkImagePlaneWidget::SetResliceInterpolateToLinear |
( |
|
) |
[inline] |
|
void vtkImagePlaneWidget::SetResliceInterpolateToCubic |
( |
|
) |
[inline] |
|
virtual void vtkImagePlaneWidget::SetRestrictPlaneToVolume |
( |
int |
|
) |
[virtual] |
|
|
Make sure that the plane remains within the volume. Default is On. |
virtual int 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 |
( |
int |
|
) |
[virtual] |
|
|
Let the user control the lookup table. NOTE: apply this method BEFORE applying the SetLookupTable method. Default is Off. |
virtual int 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 |
( |
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 imput. Default is On. |
virtual int 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 imput. 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 imput. 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 imput. 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. |
virtual int 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 polyplane are added to it. |
|
Satisfies superclass API. This returns a pointer to the underlying PolyData. 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 PolyDataSource
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 SetOuputFormatToRGB and PassAlphaToOutputOff. |
|
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 SetOuputFormatToRGB 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 321 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 323 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 325 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). |
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 (NULL). |
virtual void vtkImagePlaneWidget::SetDisplayText |
( |
int |
|
) |
[virtual] |
|
|
Enable/disable text display of window-level, image coords and values in a render window. |
virtual int vtkImagePlaneWidget::GetDisplayText |
( |
|
) |
[virtual] |
|
|
Enable/disable text display of window-level, image coords and values in a render window. |
virtual void vtkImagePlaneWidget::DisplayTextOn |
( |
|
) |
[virtual] |
|
|
Enable/disable text display of window-level, image coords and values in a render window. |
virtual void vtkImagePlaneWidget::DisplayTextOff |
( |
|
) |
[virtual] |
|
|
Enable/disable text display of window-level, image coords and 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. |
|
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. |
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 |
|
) |
|
|
|
Set/Get the current window and level values. Set should only be called after SetInput. |
void vtkImagePlaneWidget::GetWindowLevel |
( |
double |
wl[2] |
) |
|
|
|
Set/Get the current window and level values. Set should only be called after SetInput. |
int vtkImagePlaneWidget::GetCursorData |
( |
double |
xyzv[4] |
) |
|
|
|
Get the image coordinate position and voxel value. Currently only supports single component image data. |
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 spacial continuous. |
virtual int 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 spacial 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 spacial 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 spacial continuous. |
void vtkImagePlaneWidget::SetInteraction |
( |
int |
interact |
) |
|
|
|
Enable/disable mouse interaction so the widget remains on display. |
virtual int 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. BTX |
virtual int vtkImagePlaneWidget::GetLeftButtonAction |
( |
|
) |
[virtual] |
|
|
Set action associated to buttons. BTX |
virtual void vtkImagePlaneWidget::SetMiddleButtonAction |
( |
int |
|
) |
[virtual] |
|
|
Set action associated to buttons. BTX |
virtual int vtkImagePlaneWidget::GetMiddleButtonAction |
( |
|
) |
[virtual] |
|
|
Set action associated to buttons. BTX |
virtual void vtkImagePlaneWidget::SetRightButtonAction |
( |
int |
|
) |
[virtual] |
|
|
Set action associated to buttons. BTX |
virtual int vtkImagePlaneWidget::GetRightButtonAction |
( |
|
) |
[virtual] |
|
|
Set action associated to buttons. BTX |
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX |
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX |
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX |
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX |
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX |
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 SLICE_MOTION_ACTION (see above) and the left button auto modifier to CONTROL_MODIFIER: you end up with the left button controling panning without pressing a key. BTX |
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::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] |
|
void vtkImagePlaneWidget::GeneratePlaneOutline |
( |
|
) |
[protected] |
|
void vtkImagePlaneWidget::BuildRepresentation |
( |
|
) |
[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::UpdateNormal |
( |
|
) |
[protected] |
|
void vtkImagePlaneWidget::UpdateOrigin |
( |
|
) |
[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
The documentation for this class was generated from the following file: