Turbo Pascal для начинающих




Задача 198


{ Рисует кораблик с использованием метода базовой точки }
uses Graph;
const
{ шаг сетки }
dx=5; { по X}
dy=5; ( по Y}
grDriver:integer; { драйвер }
grMode:integer; { графический режим }
grPath:string; { место расположения драйвера }
ErrCode:integer; { результат инициализации граф. режима }
х,у:integer; ( координаты базовой точки кораблика
begin
grDriver := VGA; grMode:=VGAHi; grPath:='e:\tp\bgi'
режим VGA}
разрешение 640x480}
драйвер, файл EGAVGA.BGI, находится
в каталоге d:\tp\bgi }
InitGraph(grDriver, grMode,grPath);
ErrCode : = GraphResult;
if ErrCode <> grOk then Halt(l);
x:=10;
y:=200;
{ корпус }
MoveTo(x,y);
LineTo(x,y-2*dy);
LineTo(x+10*dx,y-2*dy);
LineTo(x+ll*dx,y-3*dy);
LineTo(x+17*dx,y-3*dy);
LineTo(x+14*dx,y);
LineTo(x,y);
{ надстройка }
MoveTo(x+3*dx,y-2*dy);
LineTo(x+4*dx,y-3*dy);
LineTo(x+4*dx,y-4*dy);
LineTo(x+13*dx,y-4*dy);
LineTo(x+13*dx,y-3*dy);
Line(x+5*dx,y-3*dy,x+9*dx,y-3*dy);
{ капитанский мостик }
Rectangle(x+8*dx,y-4*dy,x+ll*dx,y-5*dy);
{ труба }
Rectangle(x+7*dx,y-4*dy,x+8*dx,y-7*dy);
{ иллюминаторы }
Circle(x+12*dx,y-2*dy,Trunc(dx/2));
Circle(x+14*dx,y-2*dy,Trunc(dx/2));
( мачта }
Line(x+10*dx,y-5*dy,x+10*dx,y-10*dy);
{ оснастка }
MoveTo(x+17*dx,y-3*dy);
LineTo(x+10*dx,y-10*dy);
LineTo(x,y-2*dy);
154
dln; CloseGraph; end.









Начало    Назад    Вперед




Книжный магазин