VTK  9.2.6
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 =========================================================================*/
136 #ifndef vtkImageEllipsoidSource_h
137 #define vtkImageEllipsoidSource_h
138 
139 #include "vtkImageAlgorithm.h"
140 #include "vtkImagingSourcesModule.h" // For export macro
141 
142 class VTKIMAGINGSOURCES_EXPORT vtkImageEllipsoidSource : public vtkImageAlgorithm
143 {
144 public:
147  void PrintSelf(ostream& os, vtkIndent indent) override;
148 
150 
153  void SetWholeExtent(int extent[6]);
154  void SetWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ);
155  void GetWholeExtent(int extent[6]);
156  int* GetWholeExtent() VTK_SIZEHINT(6) { return this->WholeExtent; }
158 
160 
163  vtkSetVector3Macro(Center, double);
164  vtkGetVector3Macro(Center, double);
166 
168 
171  vtkSetVector3Macro(Radius, double);
172  vtkGetVector3Macro(Radius, double);
174 
176 
179  vtkSetMacro(InValue, double);
180  vtkGetMacro(InValue, double);
182 
184 
187  vtkSetMacro(OutValue, double);
188  vtkGetMacro(OutValue, double);
190 
192 
195  vtkSetMacro(OutputScalarType, int);
196  vtkGetMacro(OutputScalarType, int);
197  void SetOutputScalarTypeToFloat() { this->SetOutputScalarType(VTK_FLOAT); }
198  void SetOutputScalarTypeToDouble() { this->SetOutputScalarType(VTK_DOUBLE); }
199  void SetOutputScalarTypeToLong() { this->SetOutputScalarType(VTK_LONG); }
200  void SetOutputScalarTypeToUnsignedLong() { this->SetOutputScalarType(VTK_UNSIGNED_LONG); }
201  void SetOutputScalarTypeToInt() { this->SetOutputScalarType(VTK_INT); }
202  void SetOutputScalarTypeToUnsignedInt() { this->SetOutputScalarType(VTK_UNSIGNED_INT); }
203  void SetOutputScalarTypeToShort() { this->SetOutputScalarType(VTK_SHORT); }
204  void SetOutputScalarTypeToUnsignedShort() { this->SetOutputScalarType(VTK_UNSIGNED_SHORT); }
205  void SetOutputScalarTypeToChar() { this->SetOutputScalarType(VTK_CHAR); }
206  void SetOutputScalarTypeToUnsignedChar() { this->SetOutputScalarType(VTK_UNSIGNED_CHAR); }
208 
209 protected:
212 
213  int WholeExtent[6];
214  double Center[3];
215  double Radius[3];
216  double InValue;
217  double OutValue;
219 
221 
223 
224 private:
226  void operator=(const vtkImageEllipsoidSource&) = delete;
227 };
228 
229 #endif
Generic algorithm superclass for image algs.
Create a binary image of an ellipsoid.
static vtkImageEllipsoidSource * New()
void SetOutputScalarTypeToDouble()
Set what type of scalar data this source should generate.
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.
int * GetWholeExtent()
Set/Get the extent of the whole output image.
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:119
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
@ extent
Definition: vtkX3D.h:351
#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(...)