⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit_main.cpp

📁 模式识别程序
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <iostream.h>
#include <fstream.h>
#include <memory.h>
#include "Unit_main.h"
#include "stdio.h"
#include <dir.h>

#include "UnitFeature.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
Bevel1->Left=50;
Bevel1->Top=50;
Bevel1->Height=270;
Bevel1->Width=540;
Form1->Canvas->Rectangle(100,50,590,320);
ComboBox1->Text="";
for(int i=0;i<27;i++)
{
ComboBox1->Items->Insert(i,i+1);
}

}
//---------------------------------------------------------------------------

void __fastcall TForm1::Opn_FileClick(TObject *Sender)
{
  char dir[120],file[150]="\0";
   FILE *fp;
   //int size; char data;
   getcwd(dir,100);
   chdir(dir);

   TOpenDialog  *dlg=new TOpenDialog(this);
   dlg->InitialDir=dir;
   dlg->Filter="txt(*.txt)|*.txt|All Files(*.*)|*.*||";
   dlg->FileName="*.txt";

   if(dlg->Execute())
   {
      sprintf(file,"%s",dlg->FileName);
   }
   else return;
   /*memset(da,0.0,sizeof(double)*540);
   ifstream istrm;
   istrm.open(file);

   for(int i=0;i<540;i++)
	{
        istrm>>da[i];
	}
   istrm.close(); */
   fp=fopen(file,"r");
   if(!fp){return;}
   for(int i=0;i<540;i++)
   {
   fscanf(fp, "%f", &da[i]);
   }
  //fread(a,sizeof(float),540,fp);

   fclose(fp);
   for(int i=0;i<540;i++)
   {
   da[i]=da[i]*1.0;
   }

}
//---------------------------------------------------------------------------

void __fastcall TForm1::Show_picClick(TObject *Sender)
{

Form1->Refresh();
if(ComboBox1->Text=="")
{
  ShowMessage(AnsiString("请选择数据组!"));
  return;
}
int data_num;
float max=-1000.0,min=1000.0;
data_num=StrToInt(ComboBox1->Text);
for(int i=0;i<20;i++)
{
 if(da[data_num*20-20+i]>max)max=da[data_num*20-20+i];
 if(da[data_num*20-20+i]<min)min=da[data_num*20-20+i];
}
Form1->Canvas->Pen->Color=clRed;
Form1->Canvas->Brush->Style=bsClear;
//画X轴
Form1->Canvas->MoveTo(200,200);
Form1->Canvas->LineTo(430,200);
Form1->Canvas->LineTo(425,195);
Form1->Canvas->MoveTo(430,200);
Form1->Canvas->LineTo(425,205);
Form1->Canvas->TextOutA(440,200,"X轴");
Form1->Canvas->TextOutA(300,80,"这是第"+ComboBox1->Text+"组数据");
Form1->Canvas->TextOutA(200,205,"0");
Form1->Canvas->TextOutA(295,205,"10");
Form1->Canvas->TextOutA(395,205,"20");

//画y轴
Form1->Canvas->MoveTo(200,300);
Form1->Canvas->LineTo(200,70);
Form1->Canvas->LineTo(195,75);
Form1->Canvas->MoveTo(200,70);
Form1->Canvas->LineTo(205,75);
Form1->Canvas->TextOutA(175,60,"Y轴");
Form1->Canvas->TextOutA(170,70,"×1000");
Form1->Canvas->TextOutA(165,200-max*1000.0,max*1000.0);
//Form1->Canvas->TextOutA(145,198-max*1000,"×1000");
Form1->Canvas->TextOutA(165,200-min*1000.0,min*1000.0);
//Form1->Canvas->TextOutA(145,212-min*1000,"×1000");

//



Form1->Canvas->Pen->Color=clGreen;
Form1->Canvas->Brush->Style=bsClear;
Form1->Canvas->MoveTo(200,200-da[data_num*20-20]*1000.0);
for(int i=0;i<20;i++)
{
Form1->Canvas->LineTo(200+10*i,200-da[data_num*20-20+i]*1000.0);
}
 /*for(int j=0;j<3;j++)
 {
   for(int k=0;k<9;k++)
    {
    Form1->Canvas->MoveTo(50+k*60,100+60*j-data[(j+1)*(k+1)*20-20]*100.0);
    for(int i=0;i<20;i++)
    {
     Form1->Canvas->LineTo(50+k*60+i*2,100+60*j-data[(j+1)*(k+1)*20-20+i]*100.0);
    }
    }
 }*/
}
//---------------------------------------------------------------------------


void __fastcall TForm1::ComboBox1Click(TObject *Sender)
{
 ComboBox1->Text="";
}
//---------------------------------------------------------------------------


void __fastcall TForm1::Feature_paraClick(TObject *Sender)
{

 Form_Feture->Show();
}
//---------------------------------------------------------------------------


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -