VTK
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 =========================================================================*/
24 #ifndef vtkImageEllipsoidSource_h
25 #define vtkImageEllipsoidSource_h
26 
27 #include "vtkImagingSourcesModule.h" // For export macro
28 #include "vtkImageAlgorithm.h"
29 
30 class VTKIMAGINGSOURCES_EXPORT vtkImageEllipsoidSource : public vtkImageAlgorithm
31 {
32 public:
33  static vtkImageEllipsoidSource *New();
35  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
36 
38 
41  void SetWholeExtent(int extent[6]);
42  void SetWholeExtent(int minX, int maxX, int minY, int maxY,
43  int minZ, int maxZ);
44  void GetWholeExtent(int extent[6]);
45  int *GetWholeExtent() {return this->WholeExtent;}
47 
49 
52  vtkSetVector3Macro(Center, double);
53  vtkGetVector3Macro(Center, double);
55 
57 
60  vtkSetVector3Macro(Radius, double);
61  vtkGetVector3Macro(Radius, double);
63 
65 
68  vtkSetMacro(InValue,double);
69  vtkGetMacro(InValue,double);
71 
73 
76  vtkSetMacro(OutValue,double);
77  vtkGetMacro(OutValue,double);
79 
81 
84  vtkSetMacro(OutputScalarType,int);
85  vtkGetMacro(OutputScalarType,int);
87  {this->SetOutputScalarType(VTK_FLOAT);}
89  {this->SetOutputScalarType(VTK_DOUBLE);}
91  {this->SetOutputScalarType(VTK_LONG);}
93  {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
95  {this->SetOutputScalarType(VTK_INT);}
97  {this->SetOutputScalarType(VTK_UNSIGNED_INT);}
99  {this->SetOutputScalarType(VTK_SHORT);}
101  {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);}
103  {this->SetOutputScalarType(VTK_CHAR);}
105  {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);}
107 
108 protected:
110  ~vtkImageEllipsoidSource() VTK_OVERRIDE;
111 
112  int WholeExtent[6];
113  double Center[3];
114  double Radius[3];
115  double InValue;
116  double OutValue;
118 
121  vtkInformationVector *) VTK_OVERRIDE;
122 
124  vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
125 
126 private:
127  vtkImageEllipsoidSource(const vtkImageEllipsoidSource&) VTK_DELETE_FUNCTION;
128  void operator=(const vtkImageEllipsoidSource&) VTK_DELETE_FUNCTION;
129 };
130 
131 
132 #endif
133 
134 
#define VTK_UNSIGNED_INT
Definition: vtkType.h:55
Store vtkAlgorithm input/output information.
void SetOutputScalarTypeToLong()
Set what type of scalar data this source should generate.
int * GetWholeExtent()
Set/Get the extent of the whole output image.
#define VTK_UNSIGNED_SHORT
Definition: vtkType.h:53
Create a binary image of an ellipsoid.
void SetOutputScalarTypeToInt()
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.
void SetOutputScalarTypeToUnsignedChar()
Set what type of scalar data this source should generate.
#define VTK_DOUBLE
Definition: vtkType.h:59
#define VTK_FLOAT
Definition: vtkType.h:58
a simple class to control print indentation
Definition: vtkIndent.h:33
void SetOutputScalarTypeToChar()
Set what type of scalar data this source should generate.
void SetOutputScalarTypeToDouble()
Set what type of scalar data this source should generate.
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Subclasses can reimplement this method to collect information from their inputs and set information f...
#define VTK_SHORT
Definition: vtkType.h:52
#define VTK_CHAR
Definition: vtkType.h:49
#define VTK_LONG
Definition: vtkType.h:56
void SetOutputScalarTypeToUnsignedShort()
Set what type of scalar data this source should generate.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void SetOutputScalarTypeToUnsignedInt()
Set what type of scalar data this source should generate.
#define VTK_UNSIGNED_CHAR
Definition: vtkType.h:51
Generic algorithm superclass for image algs.
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_UNSIGNED_LONG
Definition: vtkType.h:57
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called in response to a REQUEST_DATA request from the executive.
#define VTK_INT
Definition: vtkType.h:54
void SetOutputScalarTypeToShort()
Set what type of scalar data this source should generate.