VTK  9.1.0
vtkImageEllipsoidSource.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkImageEllipsoidSource.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=========================================================================*/
133#ifndef vtkImageEllipsoidSource_h
134#define vtkImageEllipsoidSource_h
135
136#include "vtkImageAlgorithm.h"
137#include "vtkImagingSourcesModule.h" // For export macro
138
139class VTKIMAGINGSOURCES_EXPORT vtkImageEllipsoidSource : public vtkImageAlgorithm
140{
141public:
144 void PrintSelf(ostream& os, vtkIndent indent) override;
145
147
150 void SetWholeExtent(int extent[6]);
151 void SetWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ);
152 void GetWholeExtent(int extent[6]);
153 int* GetWholeExtent() VTK_SIZEHINT(6) { return this->WholeExtent; }
155
157
160 vtkSetVector3Macro(Center, double);
161 vtkGetVector3Macro(Center, double);
163
165
168 vtkSetVector3Macro(Radius, double);
169 vtkGetVector3Macro(Radius, double);
171
173
176 vtkSetMacro(InValue, double);
177 vtkGetMacro(InValue, double);
179
181
184 vtkSetMacro(OutValue, double);
185 vtkGetMacro(OutValue, double);
187
189
192 vtkSetMacro(OutputScalarType, int);
193 vtkGetMacro(OutputScalarType, int);
194 void SetOutputScalarTypeToFloat() { this->SetOutputScalarType(VTK_FLOAT); }
195 void SetOutputScalarTypeToDouble() { this->SetOutputScalarType(VTK_DOUBLE); }
196 void SetOutputScalarTypeToLong() { this->SetOutputScalarType(VTK_LONG); }
197 void SetOutputScalarTypeToUnsignedLong() { this->SetOutputScalarType(VTK_UNSIGNED_LONG); }
198 void SetOutputScalarTypeToInt() { this->SetOutputScalarType(VTK_INT); }
199 void SetOutputScalarTypeToUnsignedInt() { this->SetOutputScalarType(VTK_UNSIGNED_INT); }
200 void SetOutputScalarTypeToShort() { this->SetOutputScalarType(VTK_SHORT); }
201 void SetOutputScalarTypeToUnsignedShort() { this->SetOutputScalarType(VTK_UNSIGNED_SHORT); }
202 void SetOutputScalarTypeToChar() { this->SetOutputScalarType(VTK_CHAR); }
203 void SetOutputScalarTypeToUnsignedChar() { this->SetOutputScalarType(VTK_UNSIGNED_CHAR); }
205
206protected:
209
210 int WholeExtent[6];
211 double Center[3];
212 double Radius[3];
213 double InValue;
214 double OutValue;
216
218
220
221private:
223 void operator=(const vtkImageEllipsoidSource&) = delete;
224};
225
226#endif
Generic algorithm superclass for image algs.
Create a binary image of an ellipsoid.
void SetOutputScalarTypeToDouble()
Set what type of scalar data this source should generate.
int * GetWholeExtent()
Set/Get the extent of the whole output image.
void SetOutputScalarTypeToUnsignedChar()
Set what type of scalar data this source should generate.
void SetOutputScalarTypeToUnsignedInt()
Set what type of scalar data this source should generate.
~vtkImageEllipsoidSource() override
void GetWholeExtent(int extent[6])
Set/Get the extent of the whole output image.
static vtkImageEllipsoidSource * New()
void SetOutputScalarTypeToShort()
Set what type of scalar data this source should generate.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
void SetOutputScalarTypeToUnsignedShort()
Set what type of scalar data this source should generate.
void SetOutputScalarTypeToChar()
Set what type of scalar data this source should generate.
void SetOutputScalarTypeToLong()
Set what type of scalar data this source should generate.
void SetOutputScalarTypeToUnsignedLong()
Set what type of scalar data this source should generate.
void SetOutputScalarTypeToFloat()
Set what type of scalar data this source should generate.
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called in response to a REQUEST_DATA request from the executive.
void SetWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ)
Set/Get the extent of the whole output image.
void SetOutputScalarTypeToInt()
Set what type of scalar data this source should generate.
void SetWholeExtent(int extent[6])
Set/Get the extent of the whole output image.
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
#define VTK_SHORT
Definition: vtkType.h:48
#define VTK_UNSIGNED_INT
Definition: vtkType.h:51
#define VTK_DOUBLE
Definition: vtkType.h:55
#define VTK_UNSIGNED_CHAR
Definition: vtkType.h:47
#define VTK_UNSIGNED_SHORT
Definition: vtkType.h:49
#define VTK_INT
Definition: vtkType.h:50
#define VTK_FLOAT
Definition: vtkType.h:54
#define VTK_CHAR
Definition: vtkType.h:45
#define VTK_UNSIGNED_LONG
Definition: vtkType.h:53
#define VTK_LONG
Definition: vtkType.h:52
#define VTK_SIZEHINT(...)