#include <vtkImageFFT.h>
vtkImageFFT implements a fast Fourier transform. The input can have real or complex data in any components and data types, but the output is always complex doubles with real values in component0, and imaginary values in component1. The filter is fastest for images that have power of two sizes. The filter uses a butterfly fitlers for each prime factor of the dimension. This makes images with prime number dimensions (i.e. 17x17) much slower to compute. Multi dimensional (i.e volumes) FFT's are decomposed so that each axis executes in series.
Definition at line 37 of file vtkImageFFT.h.
Public Types | |
typedef vtkImageFourierFilter | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
int | SplitExtent (int splitExt[6], int startExt[6], int num, int total) |
Static Public Member Functions | |
static vtkImageFFT * | New () |
static int | IsTypeOf (const char *type) |
static vtkImageFFT * | SafeDownCast (vtkObject *o) |
Protected Member Functions | |
vtkImageFFT () | |
~vtkImageFFT () | |
virtual int | IterativeRequestInformation (vtkInformation *in, vtkInformation *out) |
virtual int | IterativeRequestUpdateExtent (vtkInformation *in, vtkInformation *out) |
void | ThreadedExecute (vtkImageData *inData, vtkImageData *outData, int outExt[6], int threadId) |
Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.
Reimplemented from vtkImageFourierFilter.
Definition at line 41 of file vtkImageFFT.h.
vtkImageFFT::vtkImageFFT | ( | ) | [inline, protected] |
Definition at line 56 of file vtkImageFFT.h.
vtkImageFFT::~vtkImageFFT | ( | ) | [inline, protected] |
Definition at line 57 of file vtkImageFFT.h.
static vtkImageFFT* vtkImageFFT::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkAlgorithm.
virtual const char* vtkImageFFT::GetClassName | ( | ) | [virtual] |
Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.
Reimplemented from vtkImageFourierFilter.
static int vtkImageFFT::IsTypeOf | ( | const char * | type | ) | [static] |
Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.
Reimplemented from vtkImageFourierFilter.
virtual int vtkImageFFT::IsA | ( | const char * | type | ) | [virtual] |
Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.
Reimplemented from vtkImageFourierFilter.
static vtkImageFFT* vtkImageFFT::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.
Reimplemented from vtkImageFourierFilter.
int vtkImageFFT::SplitExtent | ( | int | splitExt[6], | |
int | startExt[6], | |||
int | num, | |||
int | total | |||
) | [virtual] |
Used internally for streaming and threads. Splits output update extent into num pieces. This method needs to be called num times. Results must not overlap for consistent starting extent. Subclass can override this method. This method returns the number of pieces resulting from a successful split. This can be from 1 to "total". If 1 is returned, the extent cannot be split.
Reimplemented from vtkThreadedImageAlgorithm.
virtual int vtkImageFFT::IterativeRequestInformation | ( | vtkInformation * | in, | |
vtkInformation * | out | |||
) | [protected, virtual] |
Reimplemented from vtkImageIterateFilter.
virtual int vtkImageFFT::IterativeRequestUpdateExtent | ( | vtkInformation * | in, | |
vtkInformation * | out | |||
) | [protected, virtual] |
Reimplemented from vtkImageIterateFilter.
void vtkImageFFT::ThreadedExecute | ( | vtkImageData * | inData, | |
vtkImageData * | outData, | |||
int | outExt[6], | |||
int | threadId | |||
) | [protected, virtual] |
Reimplemented from vtkThreadedImageAlgorithm.