00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00035
#ifndef __vtkPointSource_h
00036
#define __vtkPointSource_h
00037
00038
#include "vtkPolyDataSource.h"
00039
00040 #define VTK_POINT_UNIFORM 1
00041 #define VTK_POINT_SHELL 0
00042
00043 class VTK_GRAPHICS_EXPORT vtkPointSource :
public vtkPolyDataSource
00044 {
00045
public:
00046
static vtkPointSource *
New();
00047 vtkTypeRevisionMacro(vtkPointSource,
vtkPolyDataSource);
00048
void PrintSelf(ostream& os,
vtkIndent indent);
00049
00051
00052 vtkSetClampMacro(NumberOfPoints,
vtkIdType,1,VTK_LARGE_ID);
00053 vtkGetMacro(NumberOfPoints,
vtkIdType);
00055
00057
00058 vtkSetVector3Macro(Center,
float);
00059 vtkGetVectorMacro(Center,
float,3);
00061
00063
00066 vtkSetClampMacro(Radius,
float,0.0,VTK_LARGE_FLOAT);
00067 vtkGetMacro(Radius,
float);
00069
00071
00074 vtkSetMacro(Distribution,
int);
00075 void SetDistributionToUniform() {
00076 this->SetDistribution(
VTK_POINT_UNIFORM);};
00077 void SetDistributionToShell() {
00078 this->SetDistribution(
VTK_POINT_SHELL);};
00079 vtkGetMacro(Distribution,
int);
00081
00082
protected:
00083 vtkPointSource(
vtkIdType numPts=10);
00084 ~vtkPointSource() {};
00085
00086
void Execute();
00087
void ExecuteInformation();
00088
00089 vtkIdType NumberOfPoints;
00090 float Center[3];
00091 float Radius;
00092 int Distribution;
00093
00094
private:
00095 vtkPointSource(
const vtkPointSource&);
00096
void operator=(
const vtkPointSource&);
00097 };
00098
00099
#endif