25 #ifndef vtkImageFourierFilter_h 26 #define vtkImageFourierFilter_h 29 #include "vtkImagingFourierModule.h" 43 #define vtkImageComplexEuclidSet(C, R, I) \ 47 #define vtkImageComplexPolarSet(C, M, P) \ 48 (C).Real = (M)*cos(P); \ 51 #define vtkImageComplexPrint(C) \ 52 printf("(%.3f, %.3f)", (C).Real, (C).Imag) 54 #define vtkImageComplexScale(cOut, S, cIn) \ 55 (cOut).Real = (cIn).Real * (S); \ 56 (cOut).Imag = (cIn).Imag * (S) 58 #define vtkImageComplexConjugate(cIn, cOut) \ 59 (cOut).Imag = (cIn).Imag * -1.0; \ 60 (cOut).Real = (cIn).Real 62 #define vtkImageComplexAdd(C1, C2, cOut) \ 63 (cOut).Real = (C1).Real + (C2).Real; \ 64 (cOut).Imag = (C1).Imag + (C2).Imag 66 #define vtkImageComplexSubtract(C1, C2, cOut) \ 67 (cOut).Real = (C1).Real - (C2).Real; \ 68 (cOut).Imag = (C1).Imag - (C2).Imag 70 #define vtkImageComplexMultiply(C1, C2, cOut) \ 72 vtkImageComplex _vtkImageComplexMultiplyTemp; \ 73 _vtkImageComplexMultiplyTemp.Real = (C1).Real*(C2).Real-(C1).Imag*(C2).Imag;\ 74 _vtkImageComplexMultiplyTemp.Imag = (C1).Real*(C2).Imag+(C1).Imag*(C2).Real;\ 75 cOut = _vtkImageComplexMultiplyTemp; \ 79 #define vtkImageComplexExponential(cIn, cOut) \ 81 double tmp = exp(cIn.Real); \ 82 cOut.Real = tmp * cos(cIn.Imag); \ 83 cOut.Imag = tmp * sin(cIn.Imag); \ 116 int N,
int bsize,
int fb);
118 int N,
int bsize,
int n,
int fb);
int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
~vtkImageFourierFilter() override
Superclass that implements complex numbers.
Filters that execute axes in series.