Скачиваний:
11
Добавлен:
15.06.2014
Размер:
2.24 Кб
Скачать
unit Unit2;

interface
uses Graphics;

type
Tpriam=Class(Tobject)
mx1,my1, mx2,my2,dy:integer;
bodycol, pencolor:Tcolor;
canvas:Tcanvas;
procedure draw(xx1,yy1,xx2,yy2:integer;pencol,brushcol:Tcolor);
end;

Tflag=class(tpriam)
procedure body;
procedure flag;
procedure vniz;
procedure vverh;
//procedure move(dx,dy:integer);
constructor create(x1,y1,x2,y2,dy1:integer;bodycol1:Tcolor;canvas1:Tcanvas);
end;



implementation

constructor tflag.create(x1,y1,x2,y2,dy1:integer;bodycol1:Tcolor;canvas1:Tcanvas);
begin
mx1:=x1;
mx2:=x2;
my1:=y1;
my2:=y2;
dy:=dy1;
bodycol:=bodycol1;
canvas:=canvas1;
end;

procedure tflag.body;
begin
draw(mx1,my1,mx2,my2,clblack,bodycol);
canvas.MoveTo(mx1,my1);
canvas.LineTo(mx1-60,my1);
canvas.lineto(mx1,my2);
canvas.MOveto(mx2-1,my2-1);
canvas.lineto(mx2+60,my1);
canvas.lineto(mx2-4,my1);
canvas.FloodFill(mx1-1,my1+1,clblack,fsBorder);
canvas.FloodFill(mx2+1,my1+1,clblack,fsBorder);
canvas.MoveTo(mx1+(mx2-mx1) div 2,my1);
canvas.lineto(mx1+(mx2-mx1) div 2,my1-150);
end;

procedure tflag.flag;
begin
draw(mx1+(mx2-mx1) div 2,my1-150,mx2-70,my2-200,clblack,CLGreen);
end;

procedure tflag.vniz;
var i,k:integer;
begin
i:=my2-200;
while i<=my1 do
begin
for k:=1 to 100000000 do;
draw(mx1+(mx2-mx1) div 2,my1-150+dy,mx2-70,my2-200+dy,clBlue,CLBlue);
canvas.Pen.Color:=Clblack;
canvas.MoveTo(mx1+(mx2-mx1) div 2,my1);
canvas.lineto(mx1+(mx2-mx1) div 2,my1-150);
i:=i+dy-61;
dy:=dy+2;
draw(mx1+(mx2-mx1) div 2,my1-150+dy,mx2-70,my2-200+dy,clblack,CLGREEN);
end;
end;

procedure tflag.vverh;
var i,k:integer;
begin
draw(mx1+(mx2-mx1) div 2,my1-150+dy,mx2-70,my2-200+dy,clBlue,CLBlue);
i:=130;
while i>=0 do
begin
for k:=1 to 100000000 do;
draw(mx1+(mx2-mx1) div 2,my1-150+dy,mx2-70,my2-200+dy,clBlue,CLBlue);
canvas.Pen.Color:=Clblack;
canvas.MoveTo(mx1+(mx2-mx1) div 2,my1);
canvas.lineto(mx1+(mx2-mx1) div 2,my1-150);
i:=i-2;
dy:=dy-2;
draw(mx1+(mx2-mx1) div 2,my1-150+dy,mx2-70,my2-200+dy,clblack,CLGreen);
end;
end;

procedure tpriam.draw(xx1,yy1,xx2,yy2:integer;pencol,brushcol:Tcolor);
begin
canvas.Pen.Color:=pencol;
canvas.Brush.Color:=brushcol;
canvas.rectangle(xx1,yy1,xx2,yy2);
end;

end.
Соседние файлы в папке кораблик_с_флагом
  • #
    15.06.2014434 б11Project1.cfg
  • #
    15.06.20144.41 Кб11Unit1.dcu
  • #
    15.06.2014819 б11Unit1.dfm
  • #
    15.06.2014900 б11Unit1.pas
  • #
    15.06.20143.32 Кб11Unit2.dcu
  • #
    15.06.20142.24 Кб11Unit2.pas