VTK
9.4.20241212
|
Display a 2D image. More...
#include <vtkImageViewer2.h>
Public Types | |
enum | { SLICE_ORIENTATION_YZ = 0 , SLICE_ORIENTATION_XZ = 1 , SLICE_ORIENTATION_XY = 2 } |
Set/get the slice orientation. More... | |
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. | |
vtkImageViewer2 * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. | |
virtual const char * | GetWindowName () |
Get the name of rendering window. | |
virtual void | Render () |
Render the resulting image. | |
virtual int | GetSliceOrientation () |
virtual void | SetSliceOrientation (int orientation) |
virtual void | SetSliceOrientationToXY () |
virtual void | SetSliceOrientationToYZ () |
virtual void | SetSliceOrientationToXZ () |
virtual void | UpdateDisplayExtent () |
Update the display extent manually so that the proper slice for the given orientation is displayed. | |
virtual void | SetupInteractor (vtkRenderWindowInteractor *) |
Attach an interactor for the internal render window. | |
virtual void | SetInputData (vtkImageData *in) |
Set/Get the input image to the viewer. | |
virtual vtkImageData * | GetInput () |
Set/Get the input image to the viewer. | |
virtual void | SetInputConnection (vtkAlgorithmOutput *input) |
Set/Get the input image to the viewer. | |
virtual int | GetSlice () |
Set/Get the current slice to display (depending on the orientation this can be in X, Y or Z). | |
virtual void | SetSlice (int s) |
Set/Get the current slice to display (depending on the orientation this can be in X, Y or Z). | |
virtual int | GetSliceMin () |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z). | |
virtual int | GetSliceMax () |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z). | |
virtual void | GetSliceRange (int range[2]) |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z). | |
virtual void | GetSliceRange (int &min, int &max) |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z). | |
virtual int * | GetSliceRange () |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z). | |
virtual double | GetColorWindow () |
Set window and level for mapping pixels to colors. | |
virtual double | GetColorLevel () |
Set window and level for mapping pixels to colors. | |
virtual void | SetColorWindow (double s) |
Set window and level for mapping pixels to colors. | |
virtual void | SetColorLevel (double s) |
Set window and level for mapping pixels to colors. | |
virtual void | SetDisplayId (void *a) |
These are here when using a Tk window. | |
virtual void | SetWindowId (void *a) |
These are here when using a Tk window. | |
virtual void | SetParentId (void *a) |
These are here when using a Tk window. | |
virtual int * | GetPosition () |
Get the position (x and y) of the rendering window in screen coordinates (in pixels). | |
virtual void | SetPosition (int x, int y) |
Set the position (x and y) of the rendering window in screen coordinates (in pixels). | |
virtual void | SetPosition (int a[2]) |
Get the position (x and y) of the rendering window in screen coordinates (in pixels). | |
virtual int * | GetSize () |
Get the size (width and height) of the rendering window in screen coordinates (in pixels). | |
virtual void | SetSize (int width, int height) |
Set the size (width and height) of the rendering window in screen coordinates (in pixels). | |
virtual void | SetSize (int a[2]) |
Get the size (width and height) of the rendering window in screen coordinates (in pixels). | |
virtual vtkRenderWindow * | GetRenderWindow () |
Get the internal render window, renderer, image actor, and image map instances. | |
virtual vtkRenderer * | GetRenderer () |
Get the internal render window, renderer, image actor, and image map instances. | |
virtual vtkImageActor * | GetImageActor () |
Get the internal render window, renderer, image actor, and image map instances. | |
virtual vtkImageMapToWindowLevelColors * | GetWindowLevel () |
Get the internal render window, renderer, image actor, and image map instances. | |
virtual vtkInteractorStyleImage * | GetInteractorStyle () |
Get the internal render window, renderer, image actor, and image map instances. | |
virtual void | SetRenderWindow (vtkRenderWindow *arg) |
Set your own renderwindow and renderer. | |
virtual void | SetRenderer (vtkRenderer *arg) |
Set your own renderwindow and renderer. | |
virtual void | SetOffScreenRendering (vtkTypeBool) |
Create a window in memory instead of on the screen. | |
virtual vtkTypeBool | GetOffScreenRendering () |
Create a window in memory instead of on the screen. | |
virtual void | OffScreenRenderingOn () |
Create a window in memory instead of on the screen. | |
virtual void | OffScreenRenderingOff () |
Create a window in memory instead of on the screen. | |
Public Member Functions inherited from vtkObject | |
vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
virtual void | DebugOn () |
Turn debugging output on. | |
virtual void | DebugOff () |
Turn debugging output off. | |
bool | GetDebug () |
Get the value of the debug flag. | |
void | SetDebug (bool debugFlag) |
Set the value of the debug flag. | |
virtual void | Modified () |
Update the modification time for this object. | |
virtual vtkMTimeType | GetMTime () |
Return this object's modified time. | |
void | PrintSelf (ostream &os, vtkIndent indent) override |
Methods invoked by print to print information about the object including superclasses. | |
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) |
vtkTypeBool | InvokeEvent (unsigned long event) |
vtkTypeBool | InvokeEvent (const char *event) |
std::string | GetObjectDescription () const override |
The object description printed in messages and PrintSelf output. | |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkCommand * | GetCommand (unsigned long tag) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObserver (vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObservers (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
void | RemoveObservers (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkTypeBool | HasObserver (unsigned long event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
vtkTypeBool | HasObserver (const char *event, vtkCommand *) |
Allow people to add/remove/invoke observers (callbacks) to any VTK object. | |
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. | |
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. | |
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. | |
vtkTypeBool | InvokeEvent (unsigned long event, void *callData) |
This method invokes an event and return whether the event was aborted or not. | |
vtkTypeBool | InvokeEvent (const char *event, void *callData) |
This method invokes an event and return whether the event was aborted or not. | |
virtual void | SetObjectName (const std::string &objectName) |
Set/get the name of this object for reporting purposes. | |
virtual std::string | GetObjectName () const |
Set/get the name of this object for reporting purposes. | |
Public Member Functions inherited from vtkObjectBase | |
const char * | GetClassName () const |
Return the class name as a string. | |
virtual std::string | GetObjectDescription () const |
The object description printed in messages and PrintSelf output. | |
virtual vtkTypeBool | IsA (const char *name) |
Return 1 if this class is the same type of (or a subclass of) the named class. | |
virtual vtkIdType | GetNumberOfGenerationsFromBase (const char *name) |
Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
virtual void | Delete () |
Delete a VTK object. | |
virtual void | FastDelete () |
Delete a reference to this object. | |
void | InitializeObjectBase () |
void | Print (ostream &os) |
Print an object to an ostream. | |
void | Register (vtkObjectBase *o) |
Increase the reference count (mark as used by another object). | |
virtual void | UnRegister (vtkObjectBase *o) |
Decrease the reference count (release by another object). | |
int | GetReferenceCount () |
Return the current reference count of this object. | |
void | SetReferenceCount (int) |
Sets the reference count. | |
bool | GetIsInMemkind () const |
A local state flag that remembers whether this object lives in the normal or extended memory space. | |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. | |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
Methods invoked by print to print information about the object including superclasses. | |
virtual bool | UsesGarbageCollector () const |
Indicate whether the class uses vtkGarbageCollector or not. | |
Static Public Member Functions | |
static vtkImageViewer2 * | New () |
static vtkTypeBool | IsTypeOf (const char *type) |
static vtkImageViewer2 * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
static vtkObject * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
static void | BreakOnError () |
This method is called when vtkErrorMacro executes. | |
static void | SetGlobalWarningDisplay (vtkTypeBool val) |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static void | GlobalWarningDisplayOn () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static void | GlobalWarningDisplayOff () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
static vtkTypeBool | GetGlobalWarningDisplay () |
This is a global flag that controls whether any debug, warning or error messages are displayed. | |
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. | |
static vtkIdType | GetNumberOfGenerationsFromBaseType (const char *name) |
Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). | |
static vtkObjectBase * | New () |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. | |
static void | SetMemkindDirectory (const char *directoryname) |
The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. | |
static bool | GetUsingMemkind () |
A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. | |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkImageViewer2 () | |
~vtkImageViewer2 () override | |
virtual void | InstallPipeline () |
virtual void | UnInstallPipeline () |
virtual void | UpdateOrientation () |
vtkAlgorithm * | GetInputAlgorithm () |
vtkInformation * | GetInputInformation () |
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. | |
void | InternalReleaseFocus () |
These methods allow a command to exclusively grab all events. | |
Protected Member Functions inherited from vtkObjectBase | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) |
virtual void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) |
virtual void | ReportReferences (vtkGarbageCollector *) |
virtual void | ObjectFinalize () |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
vtkImageMapToWindowLevelColors * | WindowLevel |
vtkRenderWindow * | RenderWindow |
vtkRenderer * | Renderer |
vtkImageActor * | ImageActor |
vtkRenderWindowInteractor * | Interactor |
vtkInteractorStyleImage * | InteractorStyle |
int | SliceOrientation |
int | FirstRender |
int | Slice |
Protected Attributes inherited from vtkObject | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
std::string | ObjectName |
Protected Attributes inherited from vtkObjectBase | |
std::atomic< int32_t > | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Friends | |
class | vtkImageViewer2Callback |
Additional Inherited Members | |
Static Protected Member Functions inherited from vtkObjectBase | |
static vtkMallocingFunction | GetCurrentMallocFunction () |
static vtkReallocingFunction | GetCurrentReallocFunction () |
static vtkFreeingFunction | GetCurrentFreeFunction () |
static vtkFreeingFunction | GetAlternateFreeFunction () |
Display a 2D image.
vtkImageViewer2 is a convenience class for displaying a 2D image. It packages up the functionality found in vtkRenderWindow, vtkRenderer, vtkImageActor and vtkImageMapToWindowLevelColors into a single easy to use class. This class also creates an image interactor style (vtkInteractorStyleImage) that allows zooming and panning of images, and supports interactive window/level operations on the image. Note that vtkImageViewer2 is simply a wrapper around these classes.
vtkImageViewer2 uses the 3D rendering and texture mapping engine to draw an image on a plane. This allows for rapid rendering, zooming, and panning. The image is placed in the 3D scene at a depth based on the z-coordinate of the particular image slice. Each call to SetSlice() changes the image data (slice) displayed AND changes the depth of the displayed slice in the 3D scene. This can be controlled by the AutoAdjustCameraClippingRange ivar of the InteractorStyle member.
It is possible to mix images and geometry, using the methods:
viewer->SetInputConnection( imageSource->GetOutputPort() ); // or viewer->SetInputData ( image ); viewer->GetRenderer()->AddActor( myActor );
This can be used to annotate an image with a PolyData of "edges" or or highlight sections of an image or display a 3D isosurface with a slice from the volume, etc. Any portions of your geometry that are in front of the displayed slice will be visible; any portions of your geometry that are behind the displayed slice will be obscured. A more general framework (with respect to viewing direction) for achieving this effect is provided by the vtkImagePlaneWidget .
Note that pressing 'r' will reset the window/level and pressing shift+'r' or control+'r' will reset the camera.
Definition at line 176 of file vtkImageViewer2.h.
typedef vtkObject vtkImageViewer2::Superclass |
Definition at line 180 of file vtkImageViewer2.h.
anonymous enum |
Set/get the slice orientation.
Enumerator | |
---|---|
SLICE_ORIENTATION_YZ | |
SLICE_ORIENTATION_XZ | |
SLICE_ORIENTATION_XY |
Definition at line 206 of file vtkImageViewer2.h.
|
protected |
|
overrideprotected |
|
static |
|
static |
|
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 vtkObjectBase.
Reimplemented in vtkResliceImageViewer.
|
static |
|
protectedvirtual |
Reimplemented in vtkResliceImageViewer.
vtkImageViewer2 * vtkImageViewer2::NewInstance | ( | ) | const |
|
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 vtkObjectBase.
Reimplemented in vtkResliceImageViewer.
|
virtual |
Get the name of rendering window.
|
virtual |
Render the resulting image.
Reimplemented in vtkResliceImageViewer.
|
virtual |
Set/Get the input image to the viewer.
Reimplemented in vtkResliceImageViewer.
|
virtual |
Set/Get the input image to the viewer.
|
virtual |
Set/Get the input image to the viewer.
Reimplemented in vtkResliceImageViewer.
|
virtual |
|
virtual |
|
inlinevirtual |
Definition at line 215 of file vtkImageViewer2.h.
|
inlinevirtual |
Definition at line 219 of file vtkImageViewer2.h.
|
inlinevirtual |
Definition at line 223 of file vtkImageViewer2.h.
|
virtual |
Set/Get the current slice to display (depending on the orientation this can be in X, Y or Z).
|
virtual |
Set/Get the current slice to display (depending on the orientation this can be in X, Y or Z).
|
virtual |
Update the display extent manually so that the proper slice for the given orientation is displayed.
It will also try to set a reasonable camera clipping range. This method is called automatically when the Input is changed, but most of the time the input of this class is likely to remain the same, i.e. connected to the output of a filter, or an image reader. When the input of this filter or reader itself is changed, an error message might be displayed since the current display extent is probably outside the new whole extent. Calling this method will ensure that the display extent is reset properly.
Reimplemented in vtkResliceImageViewer.
|
virtual |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z).
|
virtual |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z).
|
inlinevirtual |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z).
Definition at line 258 of file vtkImageViewer2.h.
|
virtual |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z).
|
virtual |
Return the minimum and maximum slice values (depending on the orientation this can be in X, Y or Z).
|
virtual |
Set window and level for mapping pixels to colors.
|
virtual |
Set window and level for mapping pixels to colors.
|
virtual |
Set window and level for mapping pixels to colors.
Reimplemented in vtkResliceImageViewer.
|
virtual |
Set window and level for mapping pixels to colors.
Reimplemented in vtkResliceImageViewer.
|
virtual |
These are here when using a Tk window.
|
virtual |
These are here when using a Tk window.
|
virtual |
These are here when using a Tk window.
|
virtual |
Get the position (x and y) of the rendering window in screen coordinates (in pixels).
|
virtual |
Set the position (x and y) of the rendering window in screen coordinates (in pixels).
This resizes the operating system's view/window and redraws it.
|
inlinevirtual |
Get the position (x and y) of the rendering window in screen coordinates (in pixels).
Definition at line 295 of file vtkImageViewer2.h.
|
virtual |
Get the size (width and height) of the rendering window in screen coordinates (in pixels).
|
virtual |
Set the size (width and height) of the rendering window in screen coordinates (in pixels).
This resizes the operating system's view/window and redraws it.
If the size has changed, this method will fire vtkCommand::WindowResizeEvent.
|
inlinevirtual |
Get the size (width and height) of the rendering window in screen coordinates (in pixels).
Definition at line 314 of file vtkImageViewer2.h.
|
virtual |
Get the internal render window, renderer, image actor, and image map instances.
|
virtual |
Get the internal render window, renderer, image actor, and image map instances.
|
virtual |
Get the internal render window, renderer, image actor, and image map instances.
|
virtual |
Get the internal render window, renderer, image actor, and image map instances.
|
virtual |
Get the internal render window, renderer, image actor, and image map instances.
|
virtual |
Set your own renderwindow and renderer.
|
virtual |
Set your own renderwindow and renderer.
|
virtual |
Attach an interactor for the internal render window.
|
virtual |
Create a window in memory instead of on the screen.
This may not be supported for every type of window and on some windows you may need to invoke this prior to the first render.
|
virtual |
Create a window in memory instead of on the screen.
This may not be supported for every type of window and on some windows you may need to invoke this prior to the first render.
|
virtual |
Create a window in memory instead of on the screen.
This may not be supported for every type of window and on some windows you may need to invoke this prior to the first render.
|
virtual |
Create a window in memory instead of on the screen.
This may not be supported for every type of window and on some windows you may need to invoke this prior to the first render.
|
protectedvirtual |
Reimplemented in vtkResliceImageViewer.
|
protectedvirtual |
Reimplemented in vtkResliceImageViewer.
|
protectedvirtual |
Reimplemented in vtkResliceImageViewer.
|
protected |
|
protected |
|
friend |
Definition at line 376 of file vtkImageViewer2.h.
|
protected |
Definition at line 360 of file vtkImageViewer2.h.
|
protected |
Definition at line 361 of file vtkImageViewer2.h.
|
protected |
Definition at line 362 of file vtkImageViewer2.h.
|
protected |
Definition at line 363 of file vtkImageViewer2.h.
|
protected |
Definition at line 364 of file vtkImageViewer2.h.
|
protected |
Definition at line 365 of file vtkImageViewer2.h.
|
protected |
Definition at line 367 of file vtkImageViewer2.h.
|
protected |
Definition at line 368 of file vtkImageViewer2.h.
|
protected |
Definition at line 369 of file vtkImageViewer2.h.