00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00026 #ifndef __vtkImageEllipsoidSource_h
00027 #define __vtkImageEllipsoidSource_h
00028
00029 #include "vtkImageAlgorithm.h"
00030
00031 class VTK_IMAGING_EXPORT vtkImageEllipsoidSource : public vtkImageAlgorithm
00032 {
00033 public:
00034 static vtkImageEllipsoidSource *New();
00035 vtkTypeRevisionMacro(vtkImageEllipsoidSource,vtkImageAlgorithm);
00036 void PrintSelf(ostream& os, vtkIndent indent);
00037
00039
00040 void SetWholeExtent(int extent[6]);
00041 void SetWholeExtent(int minX, int maxX, int minY, int maxY,
00042 int minZ, int maxZ);
00043 void GetWholeExtent(int extent[6]);
00044 int *GetWholeExtent() {return this->WholeExtent;}
00046
00048
00049 vtkSetVector3Macro(Center, double);
00050 vtkGetVector3Macro(Center, double);
00052
00054
00055 vtkSetVector3Macro(Radius, double);
00056 vtkGetVector3Macro(Radius, double);
00058
00060
00061 vtkSetMacro(InValue,double);
00062 vtkGetMacro(InValue,double);
00064
00066
00067 vtkSetMacro(OutValue,double);
00068 vtkGetMacro(OutValue,double);
00070
00072
00073 vtkSetMacro(OutputScalarType,int);
00074 vtkGetMacro(OutputScalarType,int);
00075 void SetOutputScalarTypeToFloat()
00076 {this->SetOutputScalarType(VTK_FLOAT);}
00077 void SetOutputScalarTypeToDouble()
00078 {this->SetOutputScalarType(VTK_DOUBLE);}
00079 void SetOutputScalarTypeToLong()
00080 {this->SetOutputScalarType(VTK_LONG);}
00081 void SetOutputScalarTypeToUnsignedLong()
00082 {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
00083 void SetOutputScalarTypeToInt()
00084 {this->SetOutputScalarType(VTK_INT);}
00085 void SetOutputScalarTypeToUnsignedInt()
00086 {this->SetOutputScalarType(VTK_UNSIGNED_INT);}
00087 void SetOutputScalarTypeToShort()
00088 {this->SetOutputScalarType(VTK_SHORT);}
00089 void SetOutputScalarTypeToUnsignedShort()
00090 {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);}
00091 void SetOutputScalarTypeToChar()
00092 {this->SetOutputScalarType(VTK_CHAR);}
00093 void SetOutputScalarTypeToUnsignedChar()
00094 {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);}
00096
00097 protected:
00098 vtkImageEllipsoidSource();
00099 ~vtkImageEllipsoidSource();
00100
00101 int WholeExtent[6];
00102 double Center[3];
00103 double Radius[3];
00104 double InValue;
00105 double OutValue;
00106 int OutputScalarType;
00107
00108 virtual int RequestInformation (vtkInformation *,
00109 vtkInformationVector **,
00110 vtkInformationVector *);
00111
00112 virtual int RequestData(vtkInformation *,
00113 vtkInformationVector **, vtkInformationVector *);
00114
00115 private:
00116 vtkImageEllipsoidSource(const vtkImageEllipsoidSource&);
00117 void operator=(const vtkImageEllipsoidSource&);
00118 };
00119
00120
00121 #endif
00122
00123