#include <vtkGradientFilter.h>
Estimates the gradient of a field in a data set. The gradient calculation is dependent on the input dataset type. The created gradient array is of the same type as the array it is calculated from (e.g. point data or cell data) as well as data type (e.g. float, double). At the boundary the gradient is not central differencing. The output array has 3*number of components of the input data array. The ordering for the output tuple will be {du/dx, du/dy, du/dz, dv/dx, dv/dy, dv/dz, dw/dx, dw/dy, dw/dz} for an input array {u, v, w}.
Definition at line 42 of file vtkGradientFilter.h.
Public Types | |
typedef vtkDataSetAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
virtual void | SetInputScalars (int fieldAssociation, const char *name) |
virtual void | SetInputScalars (int fieldAssociation, int fieldAttributeType) |
virtual char * | GetResultArrayName () |
virtual void | SetResultArrayName (const char *) |
virtual int | GetFasterApproximation () |
virtual void | SetFasterApproximation (int) |
virtual void | FasterApproximationOn () |
virtual void | FasterApproximationOff () |
virtual void | SetComputeVorticity (int) |
virtual int | GetComputeVorticity () |
virtual void | ComputeVorticityOn () |
virtual void | ComputeVorticityOff () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkGradientFilter * | SafeDownCast (vtkObject *o) |
static vtkGradientFilter * | New () |
Protected Member Functions | |
vtkGradientFilter () | |
~vtkGradientFilter () | |
virtual int | RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | ComputeUnstructuredGridGradient (vtkDataArray *Array, int fieldAssociation, vtkDataSet *input, vtkDataSet *output) |
virtual int | ComputeRegularGridGradient (vtkDataArray *Array, int fieldAssociation, vtkDataSet *output) |
Protected Attributes | |
char * | ResultArrayName |
int | FasterApproximation |
int | ComputeVorticity |
vtkGradientFilter::vtkGradientFilter | ( | ) | [protected] |
vtkGradientFilter::~vtkGradientFilter | ( | ) | [protected] |
virtual const char* vtkGradientFilter::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkDataSetAlgorithm.
static int vtkGradientFilter::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 vtkDataSetAlgorithm.
virtual int vtkGradientFilter::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 vtkDataSetAlgorithm.
static vtkGradientFilter* vtkGradientFilter::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkDataSetAlgorithm.
virtual void vtkGradientFilter::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 vtkDataSetAlgorithm.
static vtkGradientFilter* vtkGradientFilter::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkDataSetAlgorithm.
virtual void vtkGradientFilter::SetInputScalars | ( | int | fieldAssociation, | |
const char * | name | |||
) | [virtual] |
These are basically a convenience method that calls SetInputArrayToProcess to set the array used as the input scalars. The fieldAssociation comes from the vtkDataObject::FieldAssocations enum. The fieldAttributeType comes from the vtkDataSetAttributes::AttributeTypes enum.
virtual void vtkGradientFilter::SetInputScalars | ( | int | fieldAssociation, | |
int | fieldAttributeType | |||
) | [virtual] |
These are basically a convenience method that calls SetInputArrayToProcess to set the array used as the input scalars. The fieldAssociation comes from the vtkDataObject::FieldAssocations enum. The fieldAttributeType comes from the vtkDataSetAttributes::AttributeTypes enum.
virtual char* vtkGradientFilter::GetResultArrayName | ( | ) | [virtual] |
Get/Set the name of the resulting array to create. If NULL (the default) then the output array will be named "Gradients".
virtual void vtkGradientFilter::SetResultArrayName | ( | const char * | ) | [virtual] |
Get/Set the name of the resulting array to create. If NULL (the default) then the output array will be named "Gradients".
virtual int vtkGradientFilter::GetFasterApproximation | ( | ) | [virtual] |
When this flag is on (default is off), the gradient filter will provide a less accurate (but close) algorithm that performs fewer derivative calculations (and is therefore faster). The error contains some smoothing of the output data and some possible errors on the boundary. This parameter has no effect when performing the gradient of cell data. This only applies if the input grid is a vtkUnstructuredGrid or a vtkPolyData.
virtual void vtkGradientFilter::SetFasterApproximation | ( | int | ) | [virtual] |
When this flag is on (default is off), the gradient filter will provide a less accurate (but close) algorithm that performs fewer derivative calculations (and is therefore faster). The error contains some smoothing of the output data and some possible errors on the boundary. This parameter has no effect when performing the gradient of cell data. This only applies if the input grid is a vtkUnstructuredGrid or a vtkPolyData.
virtual void vtkGradientFilter::FasterApproximationOn | ( | ) | [virtual] |
When this flag is on (default is off), the gradient filter will provide a less accurate (but close) algorithm that performs fewer derivative calculations (and is therefore faster). The error contains some smoothing of the output data and some possible errors on the boundary. This parameter has no effect when performing the gradient of cell data. This only applies if the input grid is a vtkUnstructuredGrid or a vtkPolyData.
virtual void vtkGradientFilter::FasterApproximationOff | ( | ) | [virtual] |
When this flag is on (default is off), the gradient filter will provide a less accurate (but close) algorithm that performs fewer derivative calculations (and is therefore faster). The error contains some smoothing of the output data and some possible errors on the boundary. This parameter has no effect when performing the gradient of cell data. This only applies if the input grid is a vtkUnstructuredGrid or a vtkPolyData.
virtual void vtkGradientFilter::SetComputeVorticity | ( | int | ) | [virtual] |
Set the resultant array to be vorticity/curl of the input array. The input array must have 3 components.
virtual int vtkGradientFilter::GetComputeVorticity | ( | ) | [virtual] |
Set the resultant array to be vorticity/curl of the input array. The input array must have 3 components.
virtual void vtkGradientFilter::ComputeVorticityOn | ( | ) | [virtual] |
Set the resultant array to be vorticity/curl of the input array. The input array must have 3 components.
virtual void vtkGradientFilter::ComputeVorticityOff | ( | ) | [virtual] |
Set the resultant array to be vorticity/curl of the input array. The input array must have 3 components.
virtual int vtkGradientFilter::RequestUpdateExtent | ( | vtkInformation * | , | |
vtkInformationVector ** | , | |||
vtkInformationVector * | ||||
) | [protected, virtual] |
This is called within ProcessRequest when each filter in the pipeline decides what portion of its input is needed to create the portion of its output that the downstream filter asks for. This happens during the second pass in the pipeline execution process.
Reimplemented from vtkDataSetAlgorithm.
virtual int vtkGradientFilter::RequestData | ( | vtkInformation * | , | |
vtkInformationVector ** | , | |||
vtkInformationVector * | ||||
) | [protected, virtual] |
This is called within ProcessRequest when a request asks the algorithm to do its work. This is the method you should override to do whatever the algorithm is designed to do. This happens during the fourth pass in the pipeline execution process.
Reimplemented from vtkDataSetAlgorithm.
virtual int vtkGradientFilter::ComputeUnstructuredGridGradient | ( | vtkDataArray * | Array, | |
int | fieldAssociation, | |||
vtkDataSet * | input, | |||
vtkDataSet * | output | |||
) | [protected, virtual] |
Compute the gradients for grids that are not a vtkImageData, vtkRectilinearGrid, or vtkStructuredGrid. Returns non-zero if the operation was successful.
virtual int vtkGradientFilter::ComputeRegularGridGradient | ( | vtkDataArray * | Array, | |
int | fieldAssociation, | |||
vtkDataSet * | output | |||
) | [protected, virtual] |
Compute the gradients for either a vtkImageData, vtkRectilinearGrid or a vtkStructuredGrid. Computes the gradient using finite differences. Returns non-zero if the operation was successful.
char* vtkGradientFilter::ResultArrayName [protected] |
If non-null then it contains the name of the outputted gradient array
Definition at line 116 of file vtkGradientFilter.h.
int vtkGradientFilter::FasterApproximation [protected] |
When this flag is on (default is off), the gradient filter will provide a less accurate (but close) algorithm that performs fewer derivative calculations (and is therefore faster). The error contains some smoothing of the output data and some possible errors on the boundary. This parameter has no effect when performing the gradient of cell data. This only applies if the input grid is a vtkUnstructuredGrid or a vtkPolyData.
Definition at line 125 of file vtkGradientFilter.h.
int vtkGradientFilter::ComputeVorticity [protected] |
Flag to indicate that vorticity/curl of the input vector is to be computed. The input array to be processed must have 3 components. By default ComputeVorticity is off.
Definition at line 130 of file vtkGradientFilter.h.