VTK  9.0.1
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 =========================================================================*/
29 #ifndef vtkImageViewer_h
30 #define vtkImageViewer_h
31 
32 #include "vtkInteractionImageModule.h" // For export macro
33 #include "vtkObject.h"
34 
35 #include "vtkImageMapper.h" // For all the inline methods
36 #include "vtkRenderWindow.h" // For all the inline methods
37 
39 
40 class VTKINTERACTIONIMAGE_EXPORT vtkImageViewer : public vtkObject
41 {
42 public:
43  static vtkImageViewer* New();
44 
45  vtkTypeMacro(vtkImageViewer, vtkObject);
46  void PrintSelf(ostream& os, vtkIndent indent) override;
47 
51  char* GetWindowName() { return this->RenderWindow->GetWindowName(); }
52 
56  virtual void Render(void);
57 
59 
62  void SetInputData(vtkImageData* in) { this->ImageMapper->SetInputData(in); }
63  vtkImageData* GetInput() { return this->ImageMapper->GetInput(); }
65  {
66  this->ImageMapper->SetInputConnection(input);
67  }
69 
71 
74  int GetWholeZMin() { return this->ImageMapper->GetWholeZMin(); }
75  int GetWholeZMax() { return this->ImageMapper->GetWholeZMax(); }
77 
79 
82  int GetZSlice() { return this->ImageMapper->GetZSlice(); }
83  void SetZSlice(int s) { this->ImageMapper->SetZSlice(s); }
85 
87 
90  double GetColorWindow() { return this->ImageMapper->GetColorWindow(); }
91  double GetColorLevel() { return this->ImageMapper->GetColorLevel(); }
92  void SetColorWindow(double s) { this->ImageMapper->SetColorWindow(s); }
93  void SetColorLevel(double s) { this->ImageMapper->SetColorLevel(s); }
95 
97 
100  void SetDisplayId(void* a) { this->RenderWindow->SetDisplayId(a); }
101  void SetWindowId(void* a) { this->RenderWindow->SetWindowId(a); }
102  void SetParentId(void* a) { this->RenderWindow->SetParentId(a); }
104 
106 
110  int* GetPosition() VTK_SIZEHINT(2) { return this->RenderWindow->GetPosition(); }
111 
117  void SetPosition(int x, int y) { this->RenderWindow->SetPosition(x, y); }
118  virtual void SetPosition(int a[2]);
120 
122 
126  int* GetSize() VTK_SIZEHINT(2) { return this->RenderWindow->GetSize(); }
127 
136  void SetSize(int width, int height) { this->RenderWindow->SetSize(width, height); }
137  virtual void SetSize(int a[2]);
139 
141 
144  vtkGetObjectMacro(RenderWindow, vtkRenderWindow);
145  void SetRenderWindow(vtkRenderWindow* renWin);
146  vtkGetObjectMacro(Renderer, vtkRenderer);
147  vtkGetObjectMacro(ImageMapper, vtkImageMapper);
148  vtkGetObjectMacro(Actor2D, vtkActor2D);
150 
154  void SetupInteractor(vtkRenderWindowInteractor*);
155 
157 
162  void SetOffScreenRendering(vtkTypeBool);
163  vtkTypeBool GetOffScreenRendering();
164  void OffScreenRenderingOn();
165  void OffScreenRenderingOff();
167 
168 protected:
169  vtkImageViewer();
170  ~vtkImageViewer() override;
171 
179 
180  friend class vtkImageViewerCallback;
181  vtkAlgorithm* GetInputAlgorithm();
182 
183 private:
184  vtkImageViewer(const vtkImageViewer&) = delete;
185  void operator=(const vtkImageViewer&) = delete;
186 };
187 
188 #endif
vtkImageViewer::InteractorStyle
vtkInteractorStyleImage * InteractorStyle
Definition: vtkImageViewer.h:178
vtkImageViewer::Renderer
vtkRenderer * Renderer
Definition: vtkImageViewer.h:173
vtkImageViewer::SetDisplayId
void SetDisplayId(void *a)
These are here for using a tk window.
Definition: vtkImageViewer.h:100
vtkImageViewer::SetInputData
void SetInputData(vtkImageData *in)
Set/Get the input to the viewer.
Definition: vtkImageViewer.h:62
vtkImageMapper.h
vtkImageViewer::Actor2D
vtkActor2D * Actor2D
Definition: vtkImageViewer.h:175
vtkImageViewer::GetWholeZMax
int GetWholeZMax()
Definition: vtkImageViewer.h:75
vtkImageViewer::GetZSlice
int GetZSlice()
Set/Get the current Z Slice to display.
Definition: vtkImageViewer.h:82
vtkImageViewer::FirstRender
int FirstRender
Definition: vtkImageViewer.h:176
vtkAlgorithm
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:62
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
vtkImageViewer::SetPosition
void SetPosition(int x, int y)
Set the position (x and y) of the rendering window in screen coordinates (in pixels).
Definition: vtkImageViewer.h:117
vtkImageViewer::SetZSlice
void SetZSlice(int s)
Definition: vtkImageViewer.h:83
vtkRenderWindow.h
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:62
vtkImageViewer::ImageMapper
vtkImageMapper * ImageMapper
Definition: vtkImageViewer.h:174
vtkImageViewer::SetSize
void SetSize(int width, int height)
Set the size (width and height) of the rendering window in screen coordinates (in pixels).
Definition: vtkImageViewer.h:136
vtkInteractorStyleImage
interactive manipulation of the camera specialized for images
Definition: vtkInteractorStyleImage.h:87
vtkImageViewer::GetColorLevel
double GetColorLevel()
Definition: vtkImageViewer.h:91
vtkImageViewer::SetWindowId
void SetWindowId(void *a)
Definition: vtkImageViewer.h:101
vtkImageMapper
2D image display
Definition: vtkImageMapper.h:41
vtkImageViewer::SetInputConnection
virtual void SetInputConnection(vtkAlgorithmOutput *input)
Definition: vtkImageViewer.h:64
vtkImageViewer::GetColorWindow
double GetColorWindow()
Sets window/level for mapping pixels to colors.
Definition: vtkImageViewer.h:90
VTK_SIZEHINT
#define VTK_SIZEHINT(...)
Definition: vtkWrappingHints.h:45
vtkImageViewer::SetParentId
void SetParentId(void *a)
Definition: vtkImageViewer.h:102
vtkX3D::height
@ height
Definition: vtkX3D.h:260
vtkImageViewer::GetSize
int * GetSize()
Get the size (width and height) of the rendering window in screen coordinates (in pixels).
Definition: vtkImageViewer.h:126
vtkImageViewer::GetPosition
int * GetPosition()
Get the position (x and y) of the rendering window in screen coordinates (in pixels).
Definition: vtkImageViewer.h:110
vtkImageViewer::GetWindowName
char * GetWindowName()
Get name of rendering window.
Definition: vtkImageViewer.h:51
vtkImageViewer::GetWholeZMin
int GetWholeZMin()
What is the possible Min/ Max z slices available.
Definition: vtkImageViewer.h:74
vtkImageData
topologically and geometrically regular array of data
Definition: vtkImageData.h:41
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkImageViewer::SetColorWindow
void SetColorWindow(double s)
Definition: vtkImageViewer.h:92
vtkImageViewer::GetInput
vtkImageData * GetInput()
Definition: vtkImageViewer.h:63
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkRenderWindowInteractor
platform-independent render window interaction including picking and frame rate control.
Definition: vtkRenderWindowInteractor.h:82
vtkImageViewer::RenderWindow
vtkRenderWindow * RenderWindow
Definition: vtkImageViewer.h:172
vtkObject.h
vtkActor2D
a actor that draws 2D data
Definition: vtkActor2D.h:39
vtkAlgorithmOutput
Proxy object to connect input/output ports.
Definition: vtkAlgorithmOutput.h:36
vtkRenderer
abstract specification for renderers
Definition: vtkRenderer.h:67
vtkImageViewer::SetColorLevel
void SetColorLevel(double s)
Definition: vtkImageViewer.h:93
vtkImageViewer::Interactor
vtkRenderWindowInteractor * Interactor
Definition: vtkImageViewer.h:177
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:93
vtkImageViewer
Display a 2d image.
Definition: vtkImageViewer.h:40
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69