Анимация готового рисунка - Turbo Pascal
Формулировка задачи:
ВОТ ЕСТЬ КОД РИСУНКА НУЖНО СДЕЛАТЬ ТАК ЧТОБ ОН ДВИГАЛСЯ Ровно - замедленно вверх
Решение задачи: «Анимация готового рисунка»
textual
Листинг программы
Program dva; uses Graph,crt; procedure ris(x,y,c1,c2,c3:integer); begin setcolor(c1); Line(x-20,y+50,x+30,y+50); Line(x+30,y+50,x+20,y+70); Line(x+20,y+70,x-30,y+70); Line(x-30,y+70,x-20,y+50); Setfillstyle(10,c3); FloodFill(x,y+60,c1); line(x,y,x,y+60); setfillstyle(3,c2); PieSlice(x,y,150,210,30); arc(x,y,330,30,30); line(x,y,x+25,y-15); line(x,y,x+25,y+15); floodfill(x+5,y,c1); end; var graphdriver:integer; graphmode,x,y,z:integer; begin graphdriver:=detect; initgraph(graphdriver,graphmode,'C:\bp\bin'); setbkcolor(3); x:=getmaxX div 2; y:=getmaxY-80; z:=50; while y>20 do begin cleardevice; ris(x,y,1,4,14); delay(z); y:=y-5; z:=z+1; end; readln; closegraph; end.
Объяснение кода листинга программы
- Программа начинается с объявления типа данных и имени программы.
- В процедуре
ris
используются команды для изменения цвета и стиля линий, а также для заполнения области цветом. - Затем вызывается функция
FloodFill
, которая заполняет область цветом. - Далее вызываются функции
PieSlice
иarc
, которые рисуют сегмент круга. - Затем вызываются функции
line
иfloodfill
, которые рисуют линии и заполняют область цветом. - Переменные
graphdriver
,graphmode
,x
,y
,z
инициализируются значениями, полученными от системы. - Цикл
while
выполняется до тех пор, покаy
не станет меньше 20. - Внутри цикла вызывается процедура
ris
, которая рисует анимацию. - После завершения цикла
while
вызывается функцияreadln
, чтобы дождаться ввода пользователя. - Наконец, вызывается функция
closegraph
, чтобы закрыть графический драйвер.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д