Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkImageRFFT Class Reference

#include <vtkImageRFFT.h>

Inheritance diagram for vtkImageRFFT:

Inheritance graph
[legend]
Collaboration diagram for vtkImageRFFT:

Collaboration graph
[legend]
List of all members.

Detailed Description

Reverse Fast Fourier Transform.

Date:
2002/01/22 15:33:16
Revision:
1.32

vtkImageRFFT implements the reverse fast Fourier transform. The input can have real or complex data in any components and data types, but the output is always complex floats 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. In most cases the RFFT will produce an image whose imaginary values are all zero's. In this case vtkImageExtractComponents can be used to remove this imaginary components leaving only the real image.

See also:
vtkImageExtractComponenents
Created by:
  • Law, Charles
CVS contributions (if > 5%):
  • Law, Charles (82%)
  • Martin, Ken (9%)
CVS logs (CVSweb):
  • .cxx (/Imaging/vtkImageRFFT.cxx)
  • .h (/Imaging/vtkImageRFFT.h)
Tests:
vtkImageRFFT (Tests)

Definition at line 58 of file vtkImageRFFT.h.

Public Types

typedef vtkImageFourierFilter Superclass

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
virtual void IterativeExecuteData (vtkImageData *in, vtkImageData *out)
int SplitExtent (int splitExt[6], int startExt[6], int num, int total)

Static Public Methods

vtkImageRFFT * New ()
int IsTypeOf (const char *type)
vtkImageRFFT * SafeDownCast (vtkObject *o)

Protected Methods

 vtkImageRFFT ()
 ~vtkImageRFFT ()
void ExecuteInformation (vtkImageData *inData, vtkImageData *outData)
void ComputeInputUpdateExtent (int inExt[6], int outExt[6])
void ExecuteInformation ()
void ThreadedExecute (vtkImageData *inData, vtkImageData *outData, int outExt[6], int threadId)


Member Typedef Documentation

typedef vtkImageFourierFilter vtkImageRFFT::Superclass
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

Definition at line 62 of file vtkImageRFFT.h.


Constructor & Destructor Documentation

vtkImageRFFT::vtkImageRFFT   [inline, protected]
 

Definition at line 80 of file vtkImageRFFT.h.

vtkImageRFFT::~vtkImageRFFT   [inline, protected]
 

Definition at line 81 of file vtkImageRFFT.h.


Member Function Documentation

vtkImageRFFT* vtkImageRFFT::New   [static]
 

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

Reimplemented from vtkObject.

virtual const char* vtkImageRFFT::GetClassName   [virtual]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

int vtkImageRFFT::IsTypeOf const char *    type [static]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

virtual int vtkImageRFFT::IsA const char *    type [virtual]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

vtkImageRFFT* vtkImageRFFT::SafeDownCast vtkObject   o [static]
 

Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.

Reimplemented from vtkImageFourierFilter.

int vtkImageRFFT::SplitExtent int    splitExt[6],
int    startExt[6],
int    num,
int    total
[virtual]
 

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 vtkImageToImageFilter.

virtual void vtkImageRFFT::IterativeExecuteData vtkImageData   in,
vtkImageData   out
[inline, virtual]
 

Implements vtkImageIterateFilter.

Definition at line 76 of file vtkImageRFFT.h.

References vtkImageToImageFilter::MultiThread().

void vtkImageRFFT::ExecuteInformation vtkImageData   inData,
vtkImageData   outData
[protected, virtual]
 

Reimplemented from vtkImageIterateFilter.

void vtkImageRFFT::ComputeInputUpdateExtent int    inExt[6],
int    outExt[6]
[protected, virtual]
 

Reimplemented from vtkImageIterateFilter.

void vtkImageRFFT::ExecuteInformation   [inline, protected, virtual]
 

Reimplemented from vtkImageIterateFilter.

Definition at line 85 of file vtkImageRFFT.h.

References vtkImageIterateFilter::ExecuteInformation().

void vtkImageRFFT::ThreadedExecute vtkImageData   inData,
vtkImageData   outData,
int    outExt[6],
int    threadId
[protected, virtual]
 

If the subclass does not define an Execute method, then the task will be broken up, multiple threads will be spawned, and each thread will call this method. It is public so that the thread functions can call this method.

Reimplemented from vtkImageToImageFilter.


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