помогите анимировать солнце program qq; uses GraphABC; var
Помогите анимировать солнце
program qq; uses GraphABC; var x,h:real;
i,N,r,k,c:integer;
begin
N:=10;
c:=8;
begin
k:=1;
r:=100;
i:=1;
repeat
SetBrushColor(rgb(230-k,230-k,0));
circle(200,200,r);
k:=k+20;
i:=i+1;
r:=r-20;
until i=c;
end;
Rectangle (0,580,1920,1018);
FlooDfill (1,581,cllime);
FlooDfill (10,4,clblue);
Rectangle (800,380,1100,680);
h:=(1100-800)/(N+1);
x:=800+h;
for i:=1 to N do
begin
Line (round(x),380,round(x),680);
x:=x+h;
end;
FlooDfill (801,381,clbrown);
FlooDfill (829,381,clbrown);
FlooDfill (857,381,clbrown);
FlooDfill (885,381,clbrown);
FlooDfill (910,381,clbrown);
FlooDfill (938,381,clbrown);
FlooDfill (966,381,clbrown);
FlooDfill (994,381,clbrown);
FlooDfill (1022,381,clbrown);
FlooDfill (1050,381,clbrown);
FlooDfill (1078,381,clbrown);
Rectangle (900,480,1000,590);
FlooDfill (901,481,clgray);
Rectangle (904,484,996,530);
FlooDfill (905,485,clyellow);
Rectangle (904,534,950,586);
FlooDfill (905,535,clred);
Rectangle (954,534,996,586);
FlooDfill (955,535,clblue);
Line (950,300,1100,380);
Line (800,380,950,300);
Line (800,380,1100,380);
FlooDfill (1036,379,clgray);
FlooDfill (950,350,clsilver);
Circle (950,340,30);
FlooDfill (950,340,clred);
Rectangle (305,615,280,624);
FlooDfill (291,616,clgreen);
Rectangle (350,600,330,670);
FlooDfill (340,650,clgreen);
Rectangle (400,600,420,670);
FlooDfill (410,650,clgreen);
Circle (470,600,30);
FlooDfill (470,600,clgreen);
Circle (480,580,10);
FlooDfill (480,580,clwhite);
Circle (482,582,2);
FlooDfill (482,582,clblack);
Rectangle (480,600,500,604);
FlooDfill (484,602,clred);
Ellipse (300,590,450,650);
FlooDfill (350,600,clbrown);
end.
uses GraphABC;
procedure Sun(x, y: integer);
begin
var c := 8;
for var j := 1 to 100 do
begin
var r := 15 * c;
var k := 0;
if j mod 2 = 0 then k := 20;
for var i := 0 to c do
begin
Brush.Color := RGB(230 - k, 230 - k, 0);
Circle(x, y, r);
k := k + 15;
r := r - 15;
sleep(100);
end;
end;
end;
procedure House(x, y: integer);
begin
Brush.Color := clBrown;
Pen.Color := clBurlyWood;
var house_width := 300;
var house_height := 300;
var count := 10;
var step := round(house_width / count);
FillRectangle(x, y, x + house_width, y + house_height);
var xx := x;
for var i := 1 to count - 1 do
begin
xx := xx + step;
Line(xx, y, xx, y + house_height);
end;
Brush.Color := clGray;
FillRectangle(x + 100, y + 100, x + 200, y + 210);
Brush.Color := clYellow;
FillRectangle(x + 105, y + 105, x + 195, y + 150);
Brush.Color := clRed;
FillRectangle(x + 105, y + 155, x + 150, y + 205);
Brush.Color := clBlue;
FillRectangle(x + 155, y + 155, x + 195, y + 205);
MoveTo(x + house_width div 2, y - 80);
LineTo(x + house_width, y, Pen.Color);
LineTo(x, y, Pen.Color);
LineTo(x + house_width div 2, y - 80, Pen.Color);
FlooDfill(x + house_width div 2, y - 10, clOlive);
Brush.Color := clRed;
Circle(x + house_width div 2, y - 35, 30);
end;
procedure Turtoise(x, y: integer);
begin
Brush.Color := clGreen;
Pen.Color := clGreen;
FillRectangle(x + 5, y + 15, x - 20, y + 24);
FillRectangle(x + 50, y, x + 30, y + 70);
FillRectangle(x + 100, y, x + 120, y + 70);
FillCircle(x + 170, y, 30);
Brush.Color := clWhite;
FillCircle(x + 180, y - 20, 10);
Brush.Color := clBlack;
FillCircle(x + 182, y - 18, 2);
Brush.Color := clRed;
FillRectangle(x + 180, y, x + 200, y + 4);
Brush.Color := clBrown;
FillEllipse(x, y - 10, x + 150, y + 50);
end;
begin
Window.Init(0, 0, 1920, 1000, clBlue);
Brush.Color := clLimeGreen;
Rectangle(0, 580, 1920, 1018);
House(700, 380);
Turtoise(300, 600);
Turtoise(900, 750);
Sun(1200, 200);
end.
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Физика.
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.