VTK  9.1.0
vtkImageViewer.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkImageViewer.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
38#ifndef vtkImageViewer_h
39#define vtkImageViewer_h
40
41#include "vtkInteractionImageModule.h" // For export macro
42#include "vtkObject.h"
43
44#include "vtkImageMapper.h" // For all the inline methods
45#include "vtkRenderWindow.h" // For all the inline methods
46
48
49class VTKINTERACTIONIMAGE_EXPORT vtkImageViewer : public vtkObject
50{
51public:
53
54 vtkTypeMacro(vtkImageViewer, vtkObject);
55 void PrintSelf(ostream& os, vtkIndent indent) override;
56
60 char* GetWindowName() { return this->RenderWindow->GetWindowName(); }
61
65 virtual void Render(void);
66
68
71 void SetInputData(vtkImageData* in) { this->ImageMapper->SetInputData(in); }
72 vtkImageData* GetInput() { return this->ImageMapper->GetInput(); }
74 {
75 this->ImageMapper->SetInputConnection(input);
76 }
78
80
83 int GetWholeZMin() { return this->ImageMapper->GetWholeZMin(); }
84 int GetWholeZMax() { return this->ImageMapper->GetWholeZMax(); }
86
88
91 int GetZSlice() { return this->ImageMapper->GetZSlice(); }
92 void SetZSlice(int s) { this->ImageMapper->SetZSlice(s); }
94
96
99 double GetColorWindow() { return this->ImageMapper->GetColorWindow(); }
100 double GetColorLevel() { return this->ImageMapper->GetColorLevel(); }
101 void SetColorWindow(double s) { this->ImageMapper->SetColorWindow(s); }
102 void SetColorLevel(double s) { this->ImageMapper->SetColorLevel(s); }
104
106
109 void SetDisplayId(void* a) { this->RenderWindow->SetDisplayId(a); }
110 void SetWindowId(void* a) { this->RenderWindow->SetWindowId(a); }
111 void SetParentId(void* a) { this->RenderWindow->SetParentId(a); }
113
115
119 int* GetPosition() VTK_SIZEHINT(2) { return this->RenderWindow->GetPosition(); }
120
126 void SetPosition(int x, int y) { this->RenderWindow->SetPosition(x, y); }
127 virtual void SetPosition(int a[2]);
129
131
135 int* GetSize() VTK_SIZEHINT(2) { return this->RenderWindow->GetSize(); }
136
145 void SetSize(int width, int height) { this->RenderWindow->SetSize(width, height); }
146 virtual void SetSize(int a[2]);
148
150
153 vtkGetObjectMacro(RenderWindow, vtkRenderWindow);
155 vtkGetObjectMacro(Renderer, vtkRenderer);
156 vtkGetObjectMacro(ImageMapper, vtkImageMapper);
157 vtkGetObjectMacro(Actor2D, vtkActor2D);
159
164
166
176
177protected:
179 ~vtkImageViewer() override;
180
188
189 friend class vtkImageViewerCallback;
191
192private:
193 vtkImageViewer(const vtkImageViewer&) = delete;
194 void operator=(const vtkImageViewer&) = delete;
195};
196
197#endif
a actor that draws 2D data
Definition: vtkActor2D.h:49
Proxy object to connect input/output ports.
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:64
topologically and geometrically regular array of data
Definition: vtkImageData.h:57
2D image display
Display a 2d image.
void SetColorLevel(double s)
Sets window/level for mapping pixels to colors.
virtual void SetInputConnection(vtkAlgorithmOutput *input)
Set/Get the input to the viewer.
void SetInputData(vtkImageData *in)
Set/Get the input to the viewer.
void SetZSlice(int s)
Set/Get the current Z Slice to display.
vtkImageMapper * ImageMapper
void SetRenderWindow(vtkRenderWindow *renWin)
Get the internal objects.
vtkImageData * GetInput()
Set/Get the input to the viewer.
void OffScreenRenderingOff()
Create a window in memory instead of on the screen.
vtkInteractorStyleImage * InteractorStyle
static vtkImageViewer * New()
void OffScreenRenderingOn()
Create a window in memory instead of on the screen.
void SetOffScreenRendering(vtkTypeBool)
Create a window in memory instead of on the screen.
double GetColorLevel()
Sets window/level for mapping pixels to colors.
void SetPosition(int x, int y)
Set the position (x and y) of the rendering window in screen coordinates (in pixels).
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int * GetPosition()
Get the position (x and y) of the rendering window in screen coordinates (in pixels).
void SetColorWindow(double s)
Sets window/level for mapping pixels to colors.
void SetParentId(void *a)
These are here for using a tk window.
void SetWindowId(void *a)
These are here for using a tk window.
void SetDisplayId(void *a)
These are here for using a tk window.
double GetColorWindow()
Sets window/level for mapping pixels to colors.
void SetSize(int width, int height)
Set the size (width and height) of the rendering window in screen coordinates (in pixels).
virtual void Render(void)
Render the resulting image.
vtkRenderer * Renderer
int GetZSlice()
Set/Get the current Z Slice to display.
int GetWholeZMin()
What is the possible Min/ Max z slices available.
~vtkImageViewer() override
vtkActor2D * Actor2D
vtkTypeBool GetOffScreenRendering()
Create a window in memory instead of on the screen.
void SetupInteractor(vtkRenderWindowInteractor *)
Create and attach an interactor for this window.
char * GetWindowName()
Get name of rendering window.
int GetWholeZMax()
What is the possible Min/ Max z slices available.
vtkAlgorithm * GetInputAlgorithm()
vtkRenderWindowInteractor * Interactor
int * GetSize()
Get the size (width and height) 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 void SetSize(int a[2])
Get the size (width and height) of the rendering window in screen coordinates (in pixels).
vtkRenderWindow * RenderWindow
a simple class to control print indentation
Definition: vtkIndent.h:43
interactive manipulation of the camera specialized for images
abstract base class for most VTK objects
Definition: vtkObject.h:63
platform-independent render window interaction including picking and frame rate control.
create a window for renderers to draw into
abstract specification for renderers
Definition: vtkRenderer.h:73
@ height
Definition: vtkX3D.h:260
int vtkTypeBool
Definition: vtkABI.h:69
#define VTK_SIZEHINT(...)