00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
#ifndef VTK_SPIRAL_SHELL_SOURCE_H_
00017
# define VTK_SPIRAL_SHELL_SOURCE_H_
00018
# include "vtkExtensionsGraphicsConfigure.h"
00019
00020
# include "vtkPolyDataSource.h"
00021
00022 # define VTK_MAX_SPIRALSHELL_SPIRALS 256.0
00023 # define VTK_MAX_SPIRALSHELL_THETA 512
00024 # define VTK_MAX_SPIRALSHELL_PHI 8192
00025
00026
VTK_EXTENSIONS_GRAPHICS_NAMESPACE_BEGIN
00027
00043 class VTK_EXTENSIONS_GRAPHICS_EXPORT vtkSpiralShellSource
00044 :
public vtkPolyDataSource
00045 {
00046
public:
00047
static vtkSpiralShellSource*
New (
void);
00048 vtkTypeRevisionMacro (vtkSpiralShellSource,
vtkPolyDataSource);
00049
void PrintSelf (ostream&,
vtkIndent);
00050
00053 vtkSetVector3Macro (Center,
double);
00054 vtkGetVectorMacro (Center,
double, 3);
00059 vtkSetClampMacro (ThetaResolution,
int, 3,
VTK_MAX_SPIRALSHELL_THETA);
00060 vtkGetMacro (ThetaResolution,
int);
00065 vtkSetClampMacro (PhiResolution,
int, 3,
VTK_MAX_SPIRALSHELL_PHI);
00066 vtkGetMacro (PhiResolution,
int);
00071 vtkSetClampMacro (NumberOfSpirals,
double, 0,
VTK_MAX_SPIRALSHELL_SPIRALS);
00072 vtkGetMacro (NumberOfSpirals,
double);
00077 vtkSetClampMacro (FinalRadius,
double, 0.0,
VTK_LARGE_FLOAT);
00078 vtkGetMacro (FinalRadius,
double);
00083 vtkSetClampMacro (InnerRadius,
double, 0.0,
VTK_LARGE_FLOAT);
00084 vtkGetMacro (InnerRadius,
double);
00089 vtkSetClampMacro (Height,
double, 0.0,
VTK_LARGE_FLOAT);
00090 vtkGetMacro (Height,
double);
00097 vtkSetMacro (Triangulate,
int);
00098 vtkGetMacro (Triangulate,
int);
00099 vtkBooleanMacro (Triangulate,
int);
00104 vtkSetMacro (FlipX,
int);
00105 vtkGetMacro (FlipX,
int);
00106 vtkBooleanMacro (FlipX,
int);
00111 vtkSetMacro (FlipY,
int);
00112 vtkGetMacro (FlipY,
int);
00113 vtkBooleanMacro (FlipY,
int);
00118 vtkSetMacro (FlipZ,
int);
00119 vtkGetMacro (FlipZ,
int);
00120 vtkBooleanMacro (FlipZ,
int);
00125 vtkSetMacro (GenerateNormals,
int);
00126 vtkGetMacro (GenerateNormals,
int);
00127 vtkBooleanMacro (GenerateNormals,
int);
00132 vtkSetMacro (RetainScalars,
int);
00133 vtkGetMacro (RetainScalars,
int);
00134 vtkBooleanMacro (RetainScalars,
int);
00139 vtkSetMacro (GenerateTCoords,
int);
00140 vtkGetMacro (GenerateTCoords,
int);
00141 vtkBooleanMacro (GenerateTCoords,
int);
00150 vtkSetMacro (PreventSeam,
int);
00151 vtkGetMacro (PreventSeam,
int);
00152 vtkBooleanMacro (PreventSeam,
int);
00155
protected:
00156 vtkSpiralShellSource (
void);
00157 ~vtkSpiralShellSource();
00158
00160
void ExecuteData (
vtkDataObject*);
00161
00162 double Center[3];
00163 int ThetaResolution;
00164 int PhiResolution;
00165 double NumberOfSpirals;
00166 double FinalRadius;
00167 double InnerRadius;
00168 double Height;
00169 int Triangulate;
00170 int FlipX;
00171 int FlipY;
00172 int FlipZ;
00173 int GenerateNormals;
00174 int RetainScalars;
00175 int GenerateTCoords;
00176 int PreventSeam;
00177
00178
private:
00179 vtkSpiralShellSource (
const vtkSpiralShellSource&);
00180
void operator= (
const vtkSpiralShellSource&);
00181 };
00182
00183
VTK_EXTENSIONS_GRAPHICS_NAMESPACE_END
00184
00185
#endif
00186
00187
00188
00189