133 lines
3.0 KiB
Plaintext
133 lines
3.0 KiB
Plaintext
unit umain;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
|
|
StdCtrls, ieview, imageenview, iefft, ComCtrls, imageenproc, hyieutils,
|
|
iexBitmaps, hyiedefs, iesettings, iexLayers, iexRulers;
|
|
|
|
type
|
|
TForm1 = class(TForm)
|
|
Label1: TLabel;
|
|
ImageEnView1: TImageEnView;
|
|
Button1: TButton;
|
|
Button2: TButton;
|
|
ImageEnView2: TImageEnView;
|
|
Label2: TLabel;
|
|
ProgressBar1: TProgressBar;
|
|
Button3: TButton;
|
|
GroupBox1: TGroupBox;
|
|
Label3: TLabel;
|
|
Edit1: TEdit;
|
|
Button4: TButton;
|
|
Label4: TLabel;
|
|
Edit2: TEdit;
|
|
Button5: TButton;
|
|
Label5: TLabel;
|
|
Label6: TLabel;
|
|
Button6: TButton;
|
|
procedure Button1Click(Sender: TObject);
|
|
procedure Button2Click(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
procedure FormDestroy(Sender: TObject);
|
|
procedure ImageEnView1Progress(Sender: TObject; per: Integer);
|
|
procedure Button3Click(Sender: TObject);
|
|
procedure Button4Click(Sender: TObject);
|
|
procedure Button5Click(Sender: TObject);
|
|
procedure ImageEnView2SelectionChanging(Sender: TObject);
|
|
procedure Button6Click(Sender: TObject);
|
|
private
|
|
{ Private declarations }
|
|
public
|
|
{ Public declarations }
|
|
FTImage:TIEFtImage;
|
|
end;
|
|
|
|
var
|
|
Form1: TForm1;
|
|
|
|
implementation
|
|
|
|
{$R *.DFM}
|
|
{$R WindowsTheme.res}
|
|
|
|
procedure TForm1.FormCreate(Sender: TObject);
|
|
begin
|
|
FTImage:=nil;
|
|
end;
|
|
|
|
procedure TForm1.FormDestroy(Sender: TObject);
|
|
begin
|
|
if assigned(FTImage) then
|
|
FTImage.Free;
|
|
end;
|
|
|
|
// Open Original Image
|
|
procedure TForm1.Button1Click(Sender: TObject);
|
|
begin
|
|
with ImageEnView1.IO do
|
|
LoadFromFile( ExecuteOpenDialog('','',false,1,'') );
|
|
end;
|
|
|
|
procedure TForm1.ImageEnView1Progress(Sender: TObject; per: Integer);
|
|
begin
|
|
ProgressBar1.Position := per;
|
|
ProgressBar1.Visible := per < 100;
|
|
end;
|
|
|
|
// Create FFT
|
|
procedure TForm1.Button2Click(Sender: TObject);
|
|
begin
|
|
if assigned(FTImage) then
|
|
FTImage.Free;
|
|
FTImage:=ImageEnView1.Proc.FTCreateImage( ieitRGB ,-1,-1 );
|
|
ImageEnView2.Proc.FTDisplayFrom( FTImage );
|
|
end;
|
|
|
|
// ReCreate image
|
|
procedure TForm1.Button3Click(Sender: TObject);
|
|
begin
|
|
if assigned(FTImage) then
|
|
ImageEnView1.Proc.FTConvertFrom( FTImage );
|
|
end;
|
|
|
|
// Do "HI Pass"
|
|
procedure TForm1.Button4Click(Sender: TObject);
|
|
begin
|
|
if assigned(FTImage) then
|
|
begin
|
|
FTImage.HiPass( StrToIntDef(edit1.text,1) );
|
|
ImageEnView2.Proc.FTDisplayFrom( FTImage );
|
|
end;
|
|
end;
|
|
|
|
// Do "Lo Pass"
|
|
procedure TForm1.Button5Click(Sender: TObject);
|
|
begin
|
|
if assigned(FTImage) then
|
|
begin
|
|
FTImage.LoPass( StrToIntDef(edit2.text,1) );
|
|
ImageEnView2.Proc.FTDisplayFrom( FTImage );
|
|
end;
|
|
end;
|
|
|
|
procedure TForm1.ImageEnView2SelectionChanging(Sender: TObject);
|
|
begin
|
|
with ImageEnView2 do
|
|
label6.caption := IntToStr(SelX1)+','+IntToStr(SelY1)+','+IntToStr(SelX2)+','+IntToStr(SelY2);
|
|
end;
|
|
|
|
// Do Clear Area
|
|
procedure TForm1.Button6Click(Sender: TObject);
|
|
begin
|
|
if assigned(FTImage) then
|
|
begin
|
|
with ImageEnView2 do
|
|
FTImage.ClearZone( SelX1,SelY1,SelX2,SelY2 );
|
|
ImageEnView2.Proc.FTDisplayFrom( FTImage );
|
|
end;
|
|
end;
|
|
|
|
end.
|