📄 main.~cpp
字号:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include <math.h>
#include "Main.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
#define PI 3.1415926
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void TForm1::AutoCoreFilter()
{
int i,j,n1,j1;
float *r1=new float[m_lSignalLength+6];
for (i=0;i<m_lSignalLength;i++)
{
r1[i] = 0.0;
n1=m_lSignalLength-i;
for (j=1;j<=n1;j++)
{
j1=i+j;
r1[i]=r1[i]+m_pfSourceSignal[j-1]*m_pfSourceSignal[j1-1];
}
r1[i]=r1[i]/n1;//(n1+1);
}
for (i=0;i<m_lSignalLength;i++)
{
m_pfSourceSignal[i]=r1[i]; //原来是倒序排列,现在改为正序排列
}
delete [] r1;
/*float *temp = new float[m_lSignalLength];
memcpy(temp,m_pfSourceSignal,m_lSignalLength*sizeof(float));
delete [] temp; */
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
m_pfSourceSignal = new float[1024];
m_lSignalLength = 1024;
for(int i=0;i<1024;i++)
{
m_pfSourceSignal[i] = sin(i*8*PI/1024 );
}
for(int j=0;j<1024;j++)
{
Series1->AddXY(j,m_pfSourceSignal[j],clGreen);
}
AutoCoreFilter();
for(int k=0;k<1024;k++)
{
Series2->AddXY(k,m_pfSourceSignal[k],clGreen);
}
delete []m_pfSourceSignal;
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -