
Добавил:
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:asd / корзина / лекции по TP / Lecture_Pascal / graph / COLESO
.PAS program cub;
uses graph,crt;
const
r=40; yo=350; x0:integer=500;
a=105; b=200; h=300;
var
graphdriver,graphmode,k : integer;
x1,dx,y,y1,x,dy,dy3 : integer;
x4,x5,x6,x7,y4,y5,y6,y7,dy2 : integer;
dx1,dy1,x2,y2,x3,y3,dx3,dx2 : integer;
alfa,alf : real;
procedure line_spin(xo,i:integer;dalfa:real);
procedure picture(col:word);
begin
setcolor(col);
line(x,y,x1,y1);
line(x2,y2,x3,y3);
line(x4,y4,x5,y5);
line(x6,y6,x7,y7);
line(a,b,a,h);
circle(xo,yo,r);
circle(a,b,r);
end;
begin
x:=xo+r; x2:=xo+r;
y:=yo; y2:=yo;
x1:=xo-r; x3:=xo-r;
y1:=yo; y3:=yo;
alfa:=0;
repeat
dx:=round(r*cos(alfa));
dy:=round(r*sin(alfa));
dx1:=round(r*cos(alfa+pi/2));
dy1:=round(r*sin(alfa+pi/2));
picture(white);
delay(8000);
picture(black);
if k>144 then alf:=alf-dalfa;
dx2:=round(r*cos(alf));
dy2:=round(r*sin(alf));
dx3:=round(r*cos(alf+pi/2));
dy3:=round(r*sin(alf+pi/2));
x4:=a+dx2; x5:=a-dx2; x6:=a+dx3; x7:=a-dx3;
y4:=b-dy2; y5:=b+dy2; y6:=b-dy3; y7:=b+dy3;
if k<=144 then
begin
xo:=xo-i;
x:=xo+dx; x1:=xo-dx; x2:=xo+dx1; x3:=xo-dx1;
y:=yo-dy; y1:=yo+dy; y2:=yo-dy1; y3:=yo+dy1;
end;
alfa:=alfa+dalfa;
k:=k+1;
until keypressed;
end;
begin
graphdriver:=detect;
clrscr;
initgraph(graphdriver,graphmode,'c:\tp70\bgi');
setbkcolor(black);
rectangle(170,300,40,400);
line_spin(500,2,pi/72);
closegraph;
end.
uses graph,crt;
const
r=40; yo=350; x0:integer=500;
a=105; b=200; h=300;
var
graphdriver,graphmode,k : integer;
x1,dx,y,y1,x,dy,dy3 : integer;
x4,x5,x6,x7,y4,y5,y6,y7,dy2 : integer;
dx1,dy1,x2,y2,x3,y3,dx3,dx2 : integer;
alfa,alf : real;
procedure line_spin(xo,i:integer;dalfa:real);
procedure picture(col:word);
begin
setcolor(col);
line(x,y,x1,y1);
line(x2,y2,x3,y3);
line(x4,y4,x5,y5);
line(x6,y6,x7,y7);
line(a,b,a,h);
circle(xo,yo,r);
circle(a,b,r);
end;
begin
x:=xo+r; x2:=xo+r;
y:=yo; y2:=yo;
x1:=xo-r; x3:=xo-r;
y1:=yo; y3:=yo;
alfa:=0;
repeat
dx:=round(r*cos(alfa));
dy:=round(r*sin(alfa));
dx1:=round(r*cos(alfa+pi/2));
dy1:=round(r*sin(alfa+pi/2));
picture(white);
delay(8000);
picture(black);
if k>144 then alf:=alf-dalfa;
dx2:=round(r*cos(alf));
dy2:=round(r*sin(alf));
dx3:=round(r*cos(alf+pi/2));
dy3:=round(r*sin(alf+pi/2));
x4:=a+dx2; x5:=a-dx2; x6:=a+dx3; x7:=a-dx3;
y4:=b-dy2; y5:=b+dy2; y6:=b-dy3; y7:=b+dy3;
if k<=144 then
begin
xo:=xo-i;
x:=xo+dx; x1:=xo-dx; x2:=xo+dx1; x3:=xo-dx1;
y:=yo-dy; y1:=yo+dy; y2:=yo-dy1; y3:=yo+dy1;
end;
alfa:=alfa+dalfa;
k:=k+1;
until keypressed;
end;
begin
graphdriver:=detect;
clrscr;
initgraph(graphdriver,graphmode,'c:\tp70\bgi');
setbkcolor(black);
rectangle(170,300,40,400);
line_spin(500,2,pi/72);
closegraph;
end.
Соседние файлы в папке graph