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

📄 convert.pas

📁 基于libsvm
💻 PAS
字号:
unit convert;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  Tconvert_form = class(TForm)
    load_button: TButton;
    load_file_text: TEdit;
    save_button: TButton;
    save_path_edit: TEdit;
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    GroupBox1: TGroupBox;
    shuffle_rbutton: TRadioButton;
    standarize_rbutton: TRadioButton;
    convert_rbutton: TRadioButton;
    Button1: TButton;
    Button2: TButton;
    GroupBox4: TGroupBox;
    low_text: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    high_text: TEdit;
    GroupBox6: TGroupBox;
    GroupBox2: TGroupBox;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    GroupBox3: TGroupBox;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    GroupBox5: TGroupBox;
    RadioButton5: TRadioButton;
    RadioButton6: TRadioButton;
    procedure standarize_rbuttonClick(Sender: TObject);
    procedure convert_rbuttonClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure load_buttonClick(Sender: TObject);
    procedure save_buttonClick(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure shuffle_rbuttonClick(Sender: TObject);
    procedure RadioButton6Click(Sender: TObject);
    procedure RadioButton7Click(Sender: TObject);
    procedure GroupBox6Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  convert_form: Tconvert_form;
  check : boolean = true;

implementation

uses main, MaxMin;
{$R *.dfm}

procedure Tconvert_form.standarize_rbuttonClick(Sender: TObject);
begin
GroupBox4.Visible := true;
GroupBox5.Visible := false;
end;

procedure Tconvert_form.convert_rbuttonClick(Sender: TObject);
begin
GroupBox5.Visible := true;
GroupBox4.Visible := false;

end;

procedure Tconvert_form.FormCreate(Sender: TObject);
begin
GroupBox6.Visible := false;
GroupBox4.Visible := false;
GroupBox5.Visible := true;
GroupBox6.Top := GroupBox4.Top;
GroupBox5.Top := GroupBox4.Top;


end;

procedure Tconvert_form.Button2Click(Sender: TObject);
begin
convert_form.Visible := false;
end;

procedure Tconvert_form.load_buttonClick(Sender: TObject);
begin


    OpenDialog1.InitialDir := ExtractFilePath(Application.ExeName);
    if OpenDialog1.Execute then
    begin
       load_file_text.text := OpenDialog1.FileName;
       import_file := PChar(OpenDialog1.FileName);
       import_file_loaded := true;
    end

end;

procedure Tconvert_form.save_buttonClick(Sender: TObject);
begin
  if  SaveDialog1.Execute  then
  begin
    SaveDialog1.InitialDir := ExtractFilePath(Application.ExeName);
    save_path_edit.Text := SaveDialog1.FileName;
    output_file := PChar(SaveDialog1.FileName);
    output_file_loaded := true;




  end;

end;

procedure Tconvert_form.Button1Click(Sender: TObject);
var high_value : real;
    low_value : real;
    sign : integer;
begin
  if shuffle_rbutton.Checked then
  begin
     if (import_file_loaded and output_file_loaded) then
     begin
       shuffle(import_file, output_file, 100);
       Application.MessageBox(PChar('文件转换成功,生成的文件保存在' + output_file),PChar('提示'), MB_OK);
     end
     else
     begin
       ShowMessage('尚未导入文件和设置输出文件名');
     end;

  end
  else if  standarize_rbutton.Checked then
  begin
      if (import_file_loaded and output_file_loaded) then
      begin
        low_value := StrToFloat(low_text.Text);
        high_value := StrToFloat(high_text.Text);
        scale(low_value, high_value, import_file, output_file);
        Application.MessageBox(PChar('文件转换成功,生成的文件保存在' + output_file),PChar('提示'), MB_OK);
      end
       else
       ShowMessage('尚未导入文件和设置输出文件名');


  end
  else if  convert_rbutton.Checked then
  begin
    if RadioButton6.Checked then
      begin
        if(RadioButton1.Checked and RadioButton3.Checked) then
           sign := -1
        else if(RadioButton1.Checked and RadioButton4.Checked) then
           sign := -2
        else if (RadioButton2.Checked and RadioButton3.Checked) then
           sign := 1
        else if (RadioButton2.Checked and RadioButton4.Checked) then
           sign := 2;

        if (import_file_loaded and output_file_loaded) then
        begin
          dense2sparse(import_file, output_file, sign);
          Application.MessageBox(PChar('文件转换成功,生成的文件保存在' + output_file),PChar('提示'), MB_OK);
        end
        else
          ShowMessage('尚未导入文件和设置输出文件名');
     end else if RadioButton5.Checked then
     begin
        if (import_file_loaded and output_file_loaded) then
        begin
          sparse2dense(import_file, output_file);
          Application.MessageBox(PChar('稀疏格式像矩阵格式转化成功,生成的文件保存在' + output_file),PChar('提示'), MB_OK);
        end
        else
          ShowMessage('尚未导入文件和设置输出文件名');
     end
  end;



end;

procedure Tconvert_form.shuffle_rbuttonClick(Sender: TObject);
begin
 GroupBox4.Visible := false;
 GroupBox6.Visible := false;
end;

procedure Tconvert_form.RadioButton6Click(Sender: TObject);
begin
   GroupBox6.Visible := true;
   GroupBox5.Visible := false;
end;

procedure Tconvert_form.RadioButton7Click(Sender: TObject);
begin
  // if check then
  // begin

  // end;
   { else if check = false then
   begin
      RadioButton7.Checked := true;
      check := true;
   end;}
end;

procedure Tconvert_form.GroupBox6Click(Sender: TObject);
begin
   GroupBox6.Visible := false;
   GroupBox5.Visible := true;
   RadioButton6.Checked := false;
   RadioButton5.Checked := true;
end;

end.

⌨️ 快捷键说明

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