VTK  9.2.5
vtkImageChangeInformation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageChangeInformation.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 =========================================================================*/
59 #ifndef vtkImageChangeInformation_h
60 #define vtkImageChangeInformation_h
61 
62 #include "vtkImageAlgorithm.h"
63 #include "vtkImagingCoreModule.h" // For export macro
64 
65 class vtkImageData;
66 
67 class VTKIMAGINGCORE_EXPORT vtkImageChangeInformation : public vtkImageAlgorithm
68 {
69 public:
72  void PrintSelf(ostream& os, vtkIndent indent) override;
73 
75 
82 
84 
91  vtkSetVector3Macro(OutputExtentStart, int);
92  vtkGetVector3Macro(OutputExtentStart, int);
94 
96 
101  vtkSetVector3Macro(OutputSpacing, double);
102  vtkGetVector3Macro(OutputSpacing, double);
104 
106 
111  vtkSetVector3Macro(OutputOrigin, double);
112  vtkGetVector3Macro(OutputOrigin, double);
114 
116 
122  vtkSetMacro(CenterImage, vtkTypeBool);
123  vtkBooleanMacro(CenterImage, vtkTypeBool);
124  vtkGetMacro(CenterImage, vtkTypeBool);
126 
128 
131  vtkSetVector3Macro(ExtentTranslation, int);
132  vtkGetVector3Macro(ExtentTranslation, int);
134 
136 
139  vtkSetVector3Macro(SpacingScale, double);
140  vtkGetVector3Macro(SpacingScale, double);
142 
144 
147  vtkSetVector3Macro(OriginTranslation, double);
148  vtkGetVector3Macro(OriginTranslation, double);
150 
152 
156  vtkSetVector3Macro(OriginScale, double);
157  vtkGetVector3Macro(OriginScale, double);
159 
160 protected:
163 
165 
166  int OutputExtentStart[3];
167  int ExtentTranslation[3];
168  int FinalExtentTranslation[3];
169 
170  double OutputSpacing[3];
171  double SpacingScale[3];
172 
173  double OutputOrigin[3];
174  double OriginScale[3];
175  double OriginTranslation[3];
176 
179 
181 
183 
184 private:
186  void operator=(const vtkImageChangeInformation&) = delete;
187 };
188 
189 #endif
Generic algorithm superclass for image algs.
modify spacing, origin and extent.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
static vtkImageChangeInformation * New()
int FillInputPortInformation(int port, vtkInformation *info) override
These method should be reimplemented by subclasses that have more than a single input or single outpu...
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called in response to a REQUEST_DATA request from the executive.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void SetInformationInputData(vtkImageData *)
Copy the information from another data set.
~vtkImageChangeInformation() override
virtual vtkImageData * GetInformationInput()
Copy the information from another data set.
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to translate the update extent requests from each output port ...
topologically and geometrically regular array of data
Definition: vtkImageData.h:163
a simple class to control print indentation
Definition: vtkIndent.h:119
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
@ info
Definition: vtkX3D.h:382
@ port
Definition: vtkX3D.h:453
int vtkTypeBool
Definition: vtkABI.h:69