VTK  9.2.5
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 =========================================================================*/
84 #ifndef vtkImageViewer_h
85 #define vtkImageViewer_h
86 
87 #include "vtkInteractionImageModule.h" // For export macro
88 #include "vtkObject.h"
89 
90 #include "vtkImageMapper.h" // For all the inline methods
91 #include "vtkRenderWindow.h" // For all the inline methods
92 
94 
95 class VTKINTERACTIONIMAGE_EXPORT vtkImageViewer : public vtkObject
96 {
97 public:
98  static vtkImageViewer* New();
99 
100  vtkTypeMacro(vtkImageViewer, vtkObject);
101  void PrintSelf(ostream& os, vtkIndent indent) override;
102 
106  char* GetWindowName() { return this->RenderWindow->GetWindowName(); }
107 
111  virtual void Render(void);
112 
114 
117  void SetInputData(vtkImageData* in) { this->ImageMapper->SetInputData(in); }
118  vtkImageData* GetInput() { return this->ImageMapper->GetInput(); }
120  {
121  this->ImageMapper->SetInputConnection(input);
122  }
124 
126 
129  int GetWholeZMin() { return this->ImageMapper->GetWholeZMin(); }
130  int GetWholeZMax() { return this->ImageMapper->GetWholeZMax(); }
132 
134 
137  int GetZSlice() { return this->ImageMapper->GetZSlice(); }
138  void SetZSlice(int s) { this->ImageMapper->SetZSlice(s); }
140 
142 
145  double GetColorWindow() { return this->ImageMapper->GetColorWindow(); }
146  double GetColorLevel() { return this->ImageMapper->GetColorLevel(); }
147  void SetColorWindow(double s) { this->ImageMapper->SetColorWindow(s); }
148  void SetColorLevel(double s) { this->ImageMapper->SetColorLevel(s); }
150 
152 
155  void SetDisplayId(void* a) { this->RenderWindow->SetDisplayId(a); }
156  void SetWindowId(void* a) { this->RenderWindow->SetWindowId(a); }
157  void SetParentId(void* a) { this->RenderWindow->SetParentId(a); }
159 
161 
165  int* GetPosition() VTK_SIZEHINT(2) { return this->RenderWindow->GetPosition(); }
166 
172  void SetPosition(int x, int y) { this->RenderWindow->SetPosition(x, y); }
173  virtual void SetPosition(int a[2]);
175 
177 
181  int* GetSize() VTK_SIZEHINT(2) { return this->RenderWindow->GetSize(); }
182 
191  void SetSize(int width, int height) { this->RenderWindow->SetSize(width, height); }
192  virtual void SetSize(int a[2]);
194 
196 
199  vtkGetObjectMacro(RenderWindow, vtkRenderWindow);
201  vtkGetObjectMacro(Renderer, vtkRenderer);
202  vtkGetObjectMacro(ImageMapper, vtkImageMapper);
203  vtkGetObjectMacro(Actor2D, vtkActor2D);
205 
210 
212 
222 
223 protected:
225  ~vtkImageViewer() override;
226 
234 
235  friend class vtkImageViewerCallback;
237 
238 private:
239  vtkImageViewer(const vtkImageViewer&) = delete;
240  void operator=(const vtkImageViewer&) = delete;
241 };
242 
243 #endif
a actor that draws 2D data
Definition: vtkActor2D.h:155
Proxy object to connect input/output ports.
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:122
topologically and geometrically regular array of data
Definition: vtkImageData.h:163
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
vtkImageData * GetInput()
Set/Get the input to the viewer.
vtkAlgorithm * GetInputAlgorithm()
void SetRenderWindow(vtkRenderWindow *renWin)
Get the internal objects.
void OffScreenRenderingOff()
Create a window in memory instead of on the screen.
vtkInteractorStyleImage * InteractorStyle
int * GetSize()
Get the size (width and height) of the rendering window in screen coordinates (in pixels).
void OffScreenRenderingOn()
Create a window in memory instead of on the screen.
int * GetPosition()
Get the position (x and y) of the rendering window in screen coordinates (in pixels).
void SetOffScreenRendering(vtkTypeBool)
Create a window in memory instead of on the screen.
double GetColorLevel()
Sets window/level for mapping pixels to colors.
static vtkImageViewer * New()
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.
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.
int GetWholeZMax()
What is the possible Min/ Max z slices available.
vtkRenderWindowInteractor * Interactor
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
char * GetWindowName()
Get name of rendering window.
a simple class to control print indentation
Definition: vtkIndent.h:119
interactive manipulation of the camera specialized for images
abstract base class for most VTK objects
Definition: vtkObject.h:82
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:182
@ height
Definition: vtkX3D.h:260
int vtkTypeBool
Definition: vtkABI.h:69
#define VTK_SIZEHINT(...)