uses GraphABC;
begin
LockDrawing;
for var i:=1 to 500 do
begin
Window.Clear;
Brush.Color := clGreen;
Ellipse(i,100,i+100,200);
Redraw;
Sleep(1);
end;
end.
Восстановите программу с примером анимации.
Добавьте в программу комментарии, которые поясняют назначение команд и используемых величин:
Стереть старое изображение
Перерисовать новое изображение
Пауза перед следующим кадром
Вычисление нового положения объекта
Начальное и конечное положение объекта
Величина смещения объекта по оси X за один кадр
Текущее значение X и Y координат объекта и его прорисовка
Радиус круга
Скорость анимации
Размер экрана
USESGraphABC;constWidth=800;Height=300;Speed=4;R=40;varx0,x1,dx,x,y:INTEGER;beginSetWindowSize(Width,Height);Pen.Width:=2;Pen.Color:=RGB(60,0,0);x0:=R;x1:=Width+R;dx:=4;x:=x0;y:=150;LockDrawing;whilex<x1DObeginClearWindow;x:=x+dx;Brush.Color:=clRed;Circle(x,y,R);Redraw;Sleep(Speed);endend.
Измените программу из задачи 1 так, чтобы круг двигался по вертикали. Сохраните программу в файле с именем по образцу 11Б_ФИ_Prg_7_2.pas .
Дополните программу из задачи 1 продолжением движения круга в обратном направлении – от правого края экрана до левого. Сохраните программу в файле с именем по образцу 11Б_ФИ_Prg_7_3.pas .
Измените программу из задачи 3 так, чтобы круги двигались по вертикали навстречу друг другу. Снизу двигается красный, сверху синий. Сохраните программу в файле с именем по образцу 11Б_ФИ_Prg_7_4.pas .
Измените программу из задачи 4 так, чтобы круги двигались по диагонали. Сохраните программу в файле с именем по образцу 11Б_ФИ_Prg_7_5.pas .