📄 fft.h
字号:
#if !defined(AFX_FFT_H__0CEEC925_09FB_405D_A316_139A9FD61E07__INCLUDED_)
#define AFX_FFT_H__0CEEC925_09FB_405D_A316_139A9FD61E07__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <complex>
#define round(d) (((d-floor(d))<=0.5)? (int) floor(d):(int) ceil(d))
typedef std::complex<double> Complex;
const int FORWARD = -1;
const int REVERSE = 1;
const char FFT_LINEAR = 2;
const char FFT_LOGARITHM = 3;
const double pi = 3.1415926536;
class FFT{
inline void swap(Complex &i, Complex &j) {
Complex temp = j;
j = i;
i = temp;
}
void BitReorder(Complex *F, int N);
void BitReorder(Complex **F, int N);
public:
//void ReadFile(char* fileName, Complex **imageArray, int N);
//void ReadFile(char *fileName, Complex ***imageArray, int N);
//void SaveFile(char *fileName, char *ext, Complex **imageArray, int N);
//void SaveFile(char *fileName, char *ext, Complex ***imageArray, int N);
void Four1D(Complex *F, int N, int dir);
void Four1D(Complex **F, int N, int dir);
void Four2D(Complex **c,int N, int dir);
void Four2D(Complex ***f, int N, int dir);
//void Four3D(Complex ***c, int N, int dir, int bands);
//Complex** Magnitude(Complex** imageArray, int N, int strech);
//void Strech(Complex **f, int N, char type=FFT_LINEAR);
//void Strech(Complex ***f, int N, int bands, char type=FFT_LINEAR);
//void WalshTransform(Complex *F, int N, int dir);
};
#endif // !defined(AFX_FFT_H__0CEEC925_09FB_405D_A316_139A9FD61E07__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -