VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkFastSplatter Class Reference

A splatter optimized for splatting single kernels. More...

#include <vtkFastSplatter.h>

Inheritance diagram for vtkFastSplatter:
Inheritance graph
[legend]
Collaboration diagram for vtkFastSplatter:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { NoneLimit, ClampLimit, ScaleLimit, FreezeScaleLimit }
typedef vtkImageAlgorithm Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkFastSplatterNewInstance () const
virtual void PrintSelf (ostream &os, vtkIndent indent)
void SetSplatConnection (vtkAlgorithmOutput *)
virtual void SetModelBounds (double, double, double, double, double, double)
virtual void SetModelBounds (double[6])
virtual doubleGetModelBounds ()
virtual void GetModelBounds (double data[6])
virtual void SetOutputDimensions (int, int, int)
virtual void SetOutputDimensions (int[3])
virtual intGetOutputDimensions ()
virtual void GetOutputDimensions (int &, int &, int &)
virtual void GetOutputDimensions (int[3])
virtual void SetLimitMode (int)
virtual int GetLimitMode ()
void SetLimitModeToNone ()
void SetLimitModeToClamp ()
void SetLimitModeToScale ()
void SetLimitModeToFreezeScale ()
virtual void SetMinValue (double)
virtual double GetMinValue ()
virtual void SetMaxValue (double)
virtual double GetMaxValue ()
virtual int GetNumberOfPointsSplatted ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkFastSplatterSafeDownCast (vtkObjectBase *o)
static vtkFastSplatterNew ()

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkFastSplatter ()
virtual ~vtkFastSplatter ()
virtual int FillInputPortInformation (int port, vtkInformation *info)
virtual int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)

Protected Attributes

double ModelBounds [6]
int OutputDimensions [3]
int LimitMode
double MinValue
double MaxValue
double FrozenScale
vtkImageDataBuckets
double Origin [3]
double Spacing [3]
int NumberOfPointsSplatted
double LastDataMinValue
double LastDataMaxValue

Detailed Description

A splatter optimized for splatting single kernels.

vtkFastSplatter takes any vtkPointSet as input (of which vtkPolyData and vtkUnstructuredGrid inherit). Each point in the data set is considered to be an impulse. These impulses are convolved with a given splat image. In other words, the splat image is added to the final image at every place where there is an input point.

Note that point and cell data are thrown away. If you want a sampling of unstructured points consider vtkGaussianSplatter or vtkShepardMethod.

Use input port 0 for the impulse data (vtkPointSet), and input port 1 for the splat image (vtkImageData)

Bug:
Any point outside of the extents of the image is thrown away, even if it is close enough such that it's convolution with the splat image would overlap the extents.
@par      Tests:
          @ref c2_vtk_t_vtkFastSplatter "vtkFastSplatter (Tests)"

Definition at line 53 of file vtkFastSplatter.h.


Member Typedef Documentation

Reimplemented from vtkImageAlgorithm.

Definition at line 56 of file vtkFastSplatter.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
NoneLimit 
ClampLimit 
ScaleLimit 
FreezeScaleLimit 

Definition at line 76 of file vtkFastSplatter.h.


Constructor & Destructor Documentation

virtual vtkFastSplatter::~vtkFastSplatter ( ) [protected, virtual]

Member Function Documentation

static int vtkFastSplatter::IsTypeOf ( const char *  name) [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageAlgorithm.

virtual int vtkFastSplatter::IsA ( const char *  name) [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkImageAlgorithm.

Reimplemented from vtkImageAlgorithm.

virtual vtkObjectBase* vtkFastSplatter::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkImageAlgorithm.

Reimplemented from vtkImageAlgorithm.

static vtkFastSplatter* vtkFastSplatter::New ( ) [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkAlgorithm.

virtual void vtkFastSplatter::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkImageAlgorithm.

virtual void vtkFastSplatter::SetModelBounds ( double  ,
double  ,
double  ,
double  ,
double  ,
double   
) [virtual]

Set / get the (xmin,xmax, ymin,ymax, zmin,zmax) bounding box in which the sampling is performed. If any of the (min,max) bounds values are min >= max, then the bounds will be computed automatically from the input data. Otherwise, the user-specified bounds will be used.

virtual void vtkFastSplatter::SetModelBounds ( double  [6]) [virtual]

Set / get the (xmin,xmax, ymin,ymax, zmin,zmax) bounding box in which the sampling is performed. If any of the (min,max) bounds values are min >= max, then the bounds will be computed automatically from the input data. Otherwise, the user-specified bounds will be used.

virtual double* vtkFastSplatter::GetModelBounds ( ) [virtual]

Set / get the (xmin,xmax, ymin,ymax, zmin,zmax) bounding box in which the sampling is performed. If any of the (min,max) bounds values are min >= max, then the bounds will be computed automatically from the input data. Otherwise, the user-specified bounds will be used.

virtual void vtkFastSplatter::GetModelBounds ( double  data[6]) [virtual]

Set / get the (xmin,xmax, ymin,ymax, zmin,zmax) bounding box in which the sampling is performed. If any of the (min,max) bounds values are min >= max, then the bounds will be computed automatically from the input data. Otherwise, the user-specified bounds will be used.

virtual void vtkFastSplatter::SetOutputDimensions ( int  ,
int  ,
int   
) [virtual]

Set/get the dimensions of the output image

virtual void vtkFastSplatter::SetOutputDimensions ( int  [3]) [virtual]

Set/get the dimensions of the output image

virtual int* vtkFastSplatter::GetOutputDimensions ( ) [virtual]

Set/get the dimensions of the output image

virtual void vtkFastSplatter::GetOutputDimensions ( int ,
int ,
int  
) [virtual]

Set/get the dimensions of the output image

virtual void vtkFastSplatter::GetOutputDimensions ( int  [3]) [virtual]

Set/get the dimensions of the output image

virtual void vtkFastSplatter::SetLimitMode ( int  ) [virtual]

Set/get the way voxel values will be limited. If this is set to None (the default), the output can have arbitrarily large values. If set to clamp, the output will be clamped to [MinValue,MaxValue]. If set to scale, the output will be linearly scaled between MinValue and MaxValue.

virtual int vtkFastSplatter::GetLimitMode ( ) [virtual]

Set/get the way voxel values will be limited. If this is set to None (the default), the output can have arbitrarily large values. If set to clamp, the output will be clamped to [MinValue,MaxValue]. If set to scale, the output will be linearly scaled between MinValue and MaxValue.

Set/get the way voxel values will be limited. If this is set to None (the default), the output can have arbitrarily large values. If set to clamp, the output will be clamped to [MinValue,MaxValue]. If set to scale, the output will be linearly scaled between MinValue and MaxValue.

Definition at line 87 of file vtkFastSplatter.h.

Set/get the way voxel values will be limited. If this is set to None (the default), the output can have arbitrarily large values. If set to clamp, the output will be clamped to [MinValue,MaxValue]. If set to scale, the output will be linearly scaled between MinValue and MaxValue.

Definition at line 88 of file vtkFastSplatter.h.

Set/get the way voxel values will be limited. If this is set to None (the default), the output can have arbitrarily large values. If set to clamp, the output will be clamped to [MinValue,MaxValue]. If set to scale, the output will be linearly scaled between MinValue and MaxValue.

Definition at line 89 of file vtkFastSplatter.h.

Set/get the way voxel values will be limited. If this is set to None (the default), the output can have arbitrarily large values. If set to clamp, the output will be clamped to [MinValue,MaxValue]. If set to scale, the output will be linearly scaled between MinValue and MaxValue.

Definition at line 90 of file vtkFastSplatter.h.

virtual void vtkFastSplatter::SetMinValue ( double  ) [virtual]

See the LimitMode method.

virtual double vtkFastSplatter::GetMinValue ( ) [virtual]

See the LimitMode method.

virtual void vtkFastSplatter::SetMaxValue ( double  ) [virtual]

See the LimitMode method.

virtual double vtkFastSplatter::GetMaxValue ( ) [virtual]

See the LimitMode method.

This returns the number of points splatted (as opposed to discarded for being outside the image) during the previous pass.

Convenience function for connecting the splat algorithm source. This is provided mainly for convenience using the filter with ParaView, VTK users should prefer SetInputConnection(1, splat) instead.

virtual int vtkFastSplatter::FillInputPortInformation ( int  port,
vtkInformation info 
) [protected, virtual]

These method should be reimplemented by subclasses that have more than a single input or single output. See vtkAlgorithm for more information.

Reimplemented from vtkImageAlgorithm.

virtual int vtkFastSplatter::RequestInformation ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

Subclasses can reimplement this method to collect information from their inputs and set information for their outputs.

Reimplemented from vtkImageAlgorithm.

Subclasses can reimplement this method to translate the update extent requests from each output port into update extent requests for the input connections.

Reimplemented from vtkImageAlgorithm.

virtual int vtkFastSplatter::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called in response to a REQUEST_DATA request from the executive. Subclasses should override either this method or the ExecuteDataWithInformation method in order to generate data for their outputs. For images, the output arrays will already be allocated, so all that is necessary is to fill in the voxel values.

Reimplemented from vtkImageAlgorithm.


Member Data Documentation

Definition at line 116 of file vtkFastSplatter.h.

Definition at line 117 of file vtkFastSplatter.h.

Definition at line 119 of file vtkFastSplatter.h.

Definition at line 120 of file vtkFastSplatter.h.

Definition at line 121 of file vtkFastSplatter.h.

Definition at line 122 of file vtkFastSplatter.h.

Definition at line 124 of file vtkFastSplatter.h.

Definition at line 139 of file vtkFastSplatter.h.

Definition at line 140 of file vtkFastSplatter.h.

Definition at line 143 of file vtkFastSplatter.h.

Definition at line 148 of file vtkFastSplatter.h.

Definition at line 149 of file vtkFastSplatter.h.


The documentation for this class was generated from the following file: