Go to the documentation of this file.
73 #ifndef vtkGaussianSplatter_h
74 #define vtkGaussianSplatter_h
79 #define VTK_ACCUMULATION_MODE_MIN 0
80 #define VTK_ACCUMULATION_MODE_MAX 1
81 #define VTK_ACCUMULATION_MODE_SUM 2
85 class vtkGaussianSplatterAlgorithm;
219 friend class vtkGaussianSplatterAlgorithm;
221 {
return (this->*Sample)(
x);}
224 double v = (this->*SampleFactor)(this->S) * exp(
static_cast<double>
225 (this->ExponentFactor*(dist2)/(this->Radius2)));
228 if ( ! this->Visited[idx] )
230 this->Visited[idx] = 1;
235 switch (this->AccumulationMode)
270 int SampleDimensions[3];
273 double ModelBounds[6];
285 {
return this->ScaleFactor *
s;}
287 {
return this->ScaleFactor;}
295 double Eccentricity2;
301 double SplatDistance[3];
void SetAccumulationModeToMax()
#define VTK_ACCUMULATION_MODE_MAX
void ComputeModelBounds(vtkCompositeDataSet *input, vtkImageData *output, vtkInformation *outInfo)
#define vtkTypeMacro(thisClass, superclass)
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
GLint GLint GLint GLint GLint x
Generic algorithm superclass for image algs.
GLenum GLenum GLenum input
#define vtkGetVectorMacro(name, type, count)
abstract superclass for composite (multi-block or AMR) datasets
#define VTKIMAGINGHYBRID_EXPORT
#define vtkSetClampMacro(name, type, min, max)
#define VTK_ACCUMULATION_MODE_SUM
double SamplePoint(double x[3])
double Gaussian(double x[3])
double ScalarSampling(double s)
void SetAccumulationModeToMin()
topologically and geometrically regular array of data
a simple class to control print indentation
void SetScalar(int idx, double dist2, double *sPtr)
virtual int FillInputPortInformation(int port, vtkInformation *info)
#define vtkGetMacro(name, type)
abstract class to specify dataset behavior
static vtkGaussianSplatter * New()
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkSetMacro(IgnoreDriverBugs, bool)
#define vtkSetVector6Macro(name, type)
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
dynamic, self-adjusting array of double
#define VTK_ACCUMULATION_MODE_MIN
void ComputeModelBounds(vtkDataSet *input, vtkImageData *output, vtkInformation *outInfo)
const char * GetAccumulationModeAsString()
void Cap(vtkDoubleArray *s)
splat points into a volume with an elliptical, Gaussian distribution
void SetAccumulationModeToSum()
double EccentricGaussian(double x[3])
void PrintSelf(ostream &os, vtkIndent indent)
void SetSampleDimensions(int i, int j, int k)
void SetSampleDimensions(int dim[3])
double PositionSampling(double)