prosze oto kod tekst pod kodem :U
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls;
type
TForm1 = class(TForm)
Image1: TImage;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
polygon : array of tpoint; //tablica
o : integer;//i jedna zmienna
u : integer =-1; //und druga zmienna
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
var
dp : integer;
i,i2 : integer;
begin
//to na razie tylko graficzy algorytm podzielenia wielokąta wypukłego na trójkąty
image1.canvas.moveto(polygon[0].x,polygon[0].y);
for i:=1 to o do
begin
image1.canvas.lineto(polygon[i].x,polygon[i].y);
end;
image1.canvas.lineto(polygon[0].x,polygon[0].y);
////////
dp := high(polygon) div 2;
image1.canvas.moveto(polygon[dp].x,polygon[dp].y);
for i2:=0 to o do
begin
if not (polygon[dp].x = polygon[i2].x) then
if not (polygon[dp].y = polygon[i2].y) then
begin
image1.canvas.moveto(polygon[dp].x,polygon[dp].y);
image1.canvas.lineto(polygon[i2].x,polygon[i2].y);
end;
end;
////////
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
//okresla ilewielakat ma miec wierzcholkow + 1
randomize;
repeat
o := random(8);
until o > 3;
setlength(polygon,o);
form1.caption := inttostr(o);
end;
procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
//okresla punkty dla polygonu (wielokoąta)
inc(u);
if u > o then exit;
image1.canvas.pixels[x,y] := clred;
polygon[ u ].x := x;
polygon[ u ].y := y;
button1.caption := inttostr(u);
end;
end.
no spoko ale jak uzyje sobie deklarowania tych tepych wierzcholkow (procedura onmousedown) to mi zanczyna przyzamykaniu palikacji wywalac błędy i nie wiem czemu a jak tego nie uzyje (tego onmousedown) to aplikacja sie zamknie normalnie :U
http://www.resportgql.republika.pl/blad.jpg