Oto procedura:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
procedure sierp(a,b,c,d,e,f,g,h:integer);
var
Form1: TForm1;
x1,x2,x3,x4,y1,y2,y3,y4: integer;
implementation
procedure sierp(a,b,c,d,e,f,g,h:integer);
var x1,x2,x3,x4,y1,y2,y3,y4: integer;
begin
If c-a>5 then
begin
form1.Canvas.MoveTo(a, B) ;
form1.Canvas.LineTo(c,d);
form1.Canvas.LineTo(e,f);
form1.Canvas.LineTo(g,h);
form1.Canvas.LineTo(a, B) ;
x1:=round((a+c)*1/2);
x2:=round((c+e)*1/2);
x3:=round((e+g)*1/2);
x4:=round((g+a)*1/2);
y1:=round((b+d)*1/2);
y2:=round((d+f)*1/2);
y3:=round((f+h)*1/2);
y4:=round((h+ B) *1/2);
sierp(a,b,x1,y1,c,d,x2,y2);
sierp(c,d,x2,y2,e,f,x3,y3);
sierp(e,f,x3,y3,g,h,x4,y4);
sierp(g,h,x4,y4,a,b,x1,y1);
end;
end;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
x1:=100;
x2:=400;
x3:=400;
x4:=100;
y1:=400;
y2:=400;
y3:=100;
y4:=100;
sierp(x1,y1,x2,y2,x3,y3,x4,y4);
end;
end.
Proszę o szybkie odpowiedzi, dotyczące tego problemu.