Смекни!
smekni.com

Разработка анимационно-обучающей программы механической системы (стр. 12 из 13)

Bar(70,230,166,240);

SetFillStyle(1,Red);

Bar(71,231,165,239);

SetFillStyle(1,0);

FillEllipse(166,235,3,5);

For I:=1 To 5 Do

Begin

SetColor(Blue);

Ellipse(70+i,235,90,270,3,5);

End;

SetColor(Yellow);

Ellipse(76,235,90,270,3,5);

Bar(72,233,35,237);

Rectangle(72,233,35,237);

{- 6 -}

SetColor(Yellow);

SetFillStyle(1,Black);

Bar(97,235,100,253);

Bar(147,235,150,253);

Rectangle(97,235,100,253);

Rectangle(147,235,150,253);

{- 8 -}

SetColor(Yellow);

SetFillStyle(1,2);


Bar(45,330,190,400);

For I:=1 To 20 Do

Begin

SetColor(Blue);

Line(44+i,330,44,365);

Line(211-i,365,191-i,400);

End;

SetColor(Yellow);

Line(64,330,190,330); Line(64,330,44,365);

Line(44,365,170,365); Line(170,365,190,330);

Line(190,330,190,365); Line(190,365,170,400);

Line(170,365,170,400); Line(170,400,44,400);

Line(44,400,44,365); Line(64,330,64,365);

{- 7 -}

{- 7.1 -}

SetColor(Yellow);

SetFillStyle(1,Blue);

Rectangle(88,265,102,310);

FillEllipse(95,265,8,3);

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(95,310,8,3);


SetColor(Yellow);

Rectangle(93,311,97,350);

SetFillStyle(1,Blue);

FillEllipse(95,310,3,2);

SetColor(Blue);

Line(93,350,97,350);

SetColor(Yellow);

Ellipse(95,350,180,360,2,1);

{- 7.2 -}

SetColor(Yellow);

SetFillStyle(1,Blue);

Rectangle(138,265,152,310);

FillEllipse(145,265,8,3);

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(145,310,8,3);

SetColor(Yellow);

Rectangle(143,311,147,350);

SetFillStyle(1,Blue);

FillEllipse(145,310,3,2);

SetColor(Blue);

Line(143,350,147,350);


SetColor(Yellow);

Ellipse(145,350,180,360,2,1);

{- 2 -}

SetColor(Yellow);

Line(95,47,95,215);

Line(145,47,145,215);

Line(95,220,95,263);

Line(145,220,145,263);

Line(95,257,89,263);

Line(95,257,101,263);

Line(145,257,139,263);

Line(145,257,151,263);

SetFillStyle(1,Black);

Bar(138,130,148,132);

Rectangle(138,130,148,132);

{- Line -}

SetColor(11);

Line(140,40,200,25);

Line(150,130,200,120);

Line(134,183,200,170);

Line(160,238,200,230);

Line(150,250,200,260);

Line(150,280,200,290);

Line(170,345,210,355);

Line(200,205,148,217);

Line(98,217,200,192);

Line(175,190,210,180);

Line(160,208,210,195);

SetColor(Yellow);

SetTextStyle(2,0,4);

OutTextXY(204,21,'1');

OutTextXY(204,116,'2');

OutTextXY(204,166,'3 - 9');

OutTextXY(213,176,'4');

OutTextXY(204,226,'5');

OutTextXY(204,256,'6');

OutTextXY(204,286,'7');

OutTextXY(214,351,'8');

OutTextXY(213,190,'10');

OutTextXY(202,184,'11');

OutTextXY(202,200,'12');

{- Animation -}

SetColor(10);

SetTextStyle(5,0,1);

OutTextXY(230,20,'Dlya Zapuska Programmy Nagmite');

SetColor(10);

SetTextStyle(7,0,1);

OutTextXY(520,25,'<ENTER>');

Repeat;

Delay(50000);

SetColor(Yellow);

SetTextStyle(7,0,1);

OutTextXY(520,25,'<ENTER>');

Sound(1200);

Delay(50000);

SetColor(Red);

SetTextStyle(7,0,1);

OutTextXY(520,25,'<ENTER>');

NoSound;

Until Keypressed;

SetColor(Blue);

SetTextStyle(5,0,1);

OutTextXY(230,20,'Dlya Zapuska Programmy Nagmite');

SetColor(Blue);

SetTextStyle(7,0,1);

OutTextXY(520,25,'<ENTER>');

{- 7 -}

ReadLn;

Sound(100);

Delay(10000);

NoSound;

SetTextStyle(2,0,2);

SetColor(Yellow);

OutTextXY(121,130,'7');

If W>0 Then

Begin

SetFillStyle(1,Blue);

Bar(2,2,636,477);

SetColor(Yellow); SetFillStyle(1,Red);

FillEllipse(120,45,25,25);

SetColor(Yellow); SetFillStyle(1,Blue);

FillEllipse(120,45,2,2);

SetColor(Black);

Line(80,45,98,45); Line(102,45,120,45);

Line(120,45,138,45); Line(142,45,160,45);

Line(120,5,120,23); Line(120,27,120,45);

Line(120,45,120,63); Line(120,67,120,85);

SetColor(Yellow);

Line(120,45,112,53);

Line(120,45,128,53);

Line(112,53,128,53);

SetColor(Black);

Line(112,54,110,57); Line(116,54,114,57);

Line(120,54,118,57); Line(124,54,122,57);

Line(128,54,126,57);


{- 10 -}

SetFillStyle(1,8);

SetColor(Yellow);

Bar(60,185,175,220);

Rectangle(60,185,175,220);

For I:=1 To 15 Do

Begin

SetColor(Blue);

Line(59+i,185,59,220);

Line(191-i,184,176-i,220);

End;

SetColor(Yellow);

Line(75,185,59,220);

Line(175,185,160,220);

SetColor(Black);

Line(85,178,92,178); Line(85,178,85,185);

Line(92,178,92,185); Line(85,185,92,185);

Line(85,185,82,190); Line(92,185,89,190);

Line(82,190,89,190);

Line(155,178,162,178); Line(155,178,155,185);

Line(162,178,162,185); Line(155,185,162,185);

Line(155,185,152,190); Line(162,185,159,190);

Line(152,190,159,190);

{- 4 -}


SetColor(Yellow);

SetFillStyle(1,8);

FillEllipse(173,197,3,10);

For I:=1 To 8 Do

Begin

SetColor(8);

FillEllipse(175-i,202+(i*2),2,2);

End;

SetColor(Yellow);

Line(171,204,166,219);

Line(176,203,169,219);

Ellipse(167,219,180,360,2,2);

SetColor(Yellow);

SetFillStyle(1,4);

FillEllipse(173,196,1,3);

{- 3 -}

SetColor(Red); SetFillStyle(7,Yellow);

Bar(127,79,137,189);

Rectangle(127,79,137,189);

SetColor(Red); SetFillStyle(1,Black);

Bar(132,81,135,187);

SetColor(Black);

SetTextStyle(2,0,1);

OutTextXY(121,82,'0');

OutTextXY(121,88,'1');

OutTextXY(121,94,'2');

OutTextXY(121,102,'3');

OutTextXY(121,110,'4');

OutTextXY(121,116,'5');

OutTextXY(121,122,'6');

OutTextXY(121,130,'7');

OutTextXY(121,138,'8');

OutTextXY(121,146,'9');

OutTextXY(118,154,'10');

OutTextXY(118,162,'11');

OutTextXY(118,170,'11');

OutTextXY(118,178,'11');

{- 11 -}

{- 12 -}

SetFillStyle(1,0);

SetColor(Yellow);

FillEllipse(95,215,8,5);

FillEllipse(145,215,8,5);

{- 5 -}

SetColor(Yellow);

SetFillStyle(1,Yellow);

Bar(70,230,166,240);

SetFillStyle(1,Red);

Bar(71,231,165,239);

SetFillStyle(1,0);

FillEllipse(166,235,3,5);

For I:=1 To 5 Do

Begin

SetColor(Blue);

Ellipse(70+i,235,90,270,3,5);

End;

SetColor(Yellow);

Ellipse(76,235,90,270,3,5);

Bar(72,233,35,237);

Rectangle(72,233,35,237);

{- 6 -}

SetColor(Yellow);

SetFillStyle(1,Black);

Bar(97,235,100,253);

Bar(147,235,150,253);

Rectangle(97,235,100,253);

Rectangle(147,235,150,253);

{- 8 -}

SetColor(Yellow);

SetFillStyle(1,2);

Bar(45,330,190,400);


For I:=1 To 20 Do

Begin

SetColor(Blue);

Line(44+i,330,44,365);

Line(211-i,365,191-i,400);

End;

SetColor(Yellow);

Line(64,330,190,330); Line(64,330,44,365);

Line(44,365,170,365); Line(170,365,190,330);

Line(190,330,190,365); Line(190,365,170,400);

Line(170,365,170,400); Line(170,400,44,400);

Line(44,400,44,365); Line(64,330,64,365);

{- 7 -}

{- 7.1 -}

SetColor(Yellow);

SetFillStyle(1,Blue);

Rectangle(88,265,102,310);

FillEllipse(95,265,8,3);

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(95,310,8,3);

SetColor(Yellow);

Rectangle(93,311,97,350);

SetFillStyle(1,Blue);


FillEllipse(95,310,3,2);

SetColor(Blue);

Line(93,350,97,350);

SetColor(Yellow);

Ellipse(95,350,180,360,2,1);

{- 7.2 -}

SetColor(Yellow);

SetFillStyle(1,Blue);

Rectangle(138,265,152,310);

FillEllipse(145,265,8,3);

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(145,310,8,3);

SetColor(Yellow);

Rectangle(143,311,147,350);

SetFillStyle(1,Blue);

FillEllipse(145,310,3,2);

SetColor(Blue);

Line(143,350,147,350);

SetColor(Yellow);

Ellipse(145,350,180,360,2,1);


{- 2 -}

SetColor(Yellow);

Line(95,47,95,215);

Line(145,47,145,215);

Line(95,220,95,263);

Line(145,220,145,263);

Line(95,257,89,263);

Line(95,257,101,263);

Line(145,257,139,263);

Line(145,257,151,263);

SetFillStyle(1,Black);

Bar(138,130,148,132);

Rectangle(138,130,148,132);

For I:=1 To 50 Do

Begin

SetColor(9);

Line(98,254,98,254+i);

Line(99,254,99,254+i);

Line(148,254,148,254+i);

Line(149,254,149,254+i);

Delay(1000);

End;

For B:=1 To W Do

Begin

Sound(100+(B*5));

If B=3 Then a:=a+1;

If B=6 Then a:=a+1;

If B=9 Then a:=a+1;

If B=12 Then a:=a+1;

If B=15 Then a:=a+1;

If B=17 Then a:=a+1;

If B=19 Then a:=a+1;

If B=21 Then a:=a+1;

If B=23 Then a:=a+1;

If B=25 Then a:=a+1;

If B=25 Then a:=a+1;

SetColor(Yellow);

Ellipse(95,310-B,360,0,6,2);

Ellipse(145,310-(B+a),360,0,6,2);

Delay(7000);

SetColor(9);

SetFillStyle(1,9);

FillEllipse(95,310-B,6,2);

FillEllipse(145,310-(B+a),6,2);

End;

SetColor(Yellow);

Ellipse(95,310-B,360,0,6,2);

Ellipse(145,310-(B+a),360,0,6,2);

For I:=1 To 14 Do

Begin

SetFillStyle(1,Blue);

Bar(98,252+i*2,99,255+i*2);

Bar(148,254+i,149,255+i);

Delay(1000);

End;

SetColor(Yellow);

Line(95,220,95,263);

Line(145,220,145,263);

Line(95,257,89,263);

Line(95,257,101,263);

Line(145,257,139,263);

Line(145,257,151,263);

FillEllipse(95,265,8,3);

FillEllipse(145,265,8,3);

NoSound;

Sound(100);

Delay(10000);

NoSound;

{- 5 -}

Sound(100);

Delay(10000);

Nosound;

For I:=1 To 149 Do

Begin

Sound(500-(i*3));

SetColor(Red);

SetFillStyle(1,Red);

FillEllipse(75-i,235,2,5);

SetColor(Yellow);

Ellipse(75-i,235,90,270,2,5);

SetColor(Yellow);

SetFillStyle(1,Black);

Bar(50-i,234,35-i,236);

Line(35-i,233,35-i,237);

SetFillStyle(1,0);

FillEllipse(166-i,235,3,5);

SetColor(Blue);

Ellipse(167-i,235,270,90,3,5);

{- 6 -}

SetColor(Yellow);

SetFillStyle(1,Black);

Bar(97-i,235,100-i,253);

Bar(147-i,235,150-i,253);

Rectangle(97-i,235,100-i,253);

Rectangle(147-i,235,150-i,253);

SetColor(Red);

Line(101-i,231,101-i,254);

Line(151-i,231,151-i,254);

SetColor(Yellow);

Line(101-i,240,101-i,240);

Line(151-i,240,151-i,240);

SetColor(Blue);

Line(101-i,241,101-i,254);

Line(151-i,241,151-i,254);


Delay(700);

SetColor(Yellow);

Line(95,220,95,263);

Line(145,220,145,263);

End;

NoSound;

Sound(100);

Delay(10000);

NoSound;

For I:=C To 53 Do

Begin

If C<=40 Then y:=C;

SetColor(8);

SetFillStyle(1,9);

Bar(144,310,146,311+C);

Bar(94,310,96,311+C);

SetColor(Yellow);

Delay(1000);

SetColor(Yellow);

Ellipse(145,350,180,360,2,1);

Ellipse(95,350,180,360,2,1);

Sound(100+C);

End;

For D:=1 To W Do

Begin

SetColor(Yellow);

SetFillStyle(1,9);

FillEllipse(95,310-B+D,6,2);

FillEllipse(145,310-(B+a)+D,6,2);

SetColor(Blue);

Ellipse(95,309-B+D,0,180,6,2);

Ellipse(145,309-(B+a)+D,0,180,6,2);

Delay(6000);

Sound(153+D);

End;

For E:=1 To 19 Do

Begin

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(95,310,6,2);

SetColor(Blue);

SetFillStyle(1,Blue);

Bar(94,310+E,96,311+E);

Delay(3000);

Sound(178+E);

End;

SetColor(Yellow);

Line(90,330,100,330);

For FF:=1 To 32 Do

Begin

SetFillStyle(1,2);

Bar(94,331+FF,96,332+FF);

Delay(1000);

Sound(197+FF);

End;

SetColor(Yellow);

Ellipse(95,350,180,360,2,1);

SetColor(Yellow);

Line(88,265,88,310);

Line(102,265,102,310);

U:=1;

For G:=1 To W+7 Do

Begin

If G=8 Then

Begin

SetColor(Yellow);

OutTextXY(121,138,'8');

SetColor(Black);

OutTextXY(121,130,'7');

End;

If G=16 Then

Begin

SetColor(Yellow);

OutTextXY(121,146,'9');

SetColor(Black);

OutTextXY(121,138,'8');

End;

If G=24 Then

Begin

SetColor(Yellow);

OutTextXY(118,154,'10');

SetColor(Black);

OutTextXY(121,146,'9');

End;

If G=32 Then

Begin

SetColor(Yellow);

OutTextXY(118,162,'11');

SetColor(Black);

OutTextXY(118,154,'10');

End;

If G<=15 Then y:=G;

If G=3 Then u:=u+1;

If G=6 Then u:=u+1;

If G=9 Then u:=u+1;

If G=12 Then u:=u+1;

If G=15 Then u:=u+1;

If G=18 Then u:=u+1;

If G=21 Then u:=u+1;

If G=24 Then u:=u+1;

If G=27 Then u:=u+1;

If G=29 Then u:=u+1;

If G=30 Then u:=u+1;

If G=30 Then u:=u+1;

If G=32 Then u:=u+1;

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(95,265-G,7,3);

SetColor(Blue);

Ellipse(95,266-G,180,360,6,3);

Ellipse(95,267-G,180,360,6,3);


SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(95,310-G,8,3);

SetColor(Blue);

Ellipse(95,311-G,180,360,8,3);

Ellipse(95,312-G,180,360,8,3);

SetColor(Yellow);

Rectangle(93,311-G,97,350-G);

SetFillStyle(1,Blue);

FillEllipse(95,310-G,3,2);

SetColor(Yellow);

Ellipse(95,350-G,180,360,2,1);

If G<=21 Then

Begin

SetColor(2);

Ellipse(95,351-G,180,360,3,2);

End

Else

Begin

SetColor(Blue);

Ellipse(95,351-G,180,360,3,2);

End;

SetColor(Yellow);

Line(95,257-G,89,263-G);

Line(95,257-G,101,263-G);


SetColor(Blue);

Line(95,258-G,90,264-G);

Line(95,258-G,100,264-G);

{- 7.2 -}

SetColor(Yellow);

SetFillStyle(1,Blue);

Rectangle(138,265+G,152,310+G);

FillEllipse(145,265+G,8,3);

SetColor(Blue);

Ellipse(145,264+G,0,190,8,3);

Line(137,265,137,310);

Line(153,265,153,310);

Line(87,265,87,310);

Line(103,265,103,310);

SetColor(Yellow);

SetFillStyle(1,9);

FillEllipse(145,310+G,7,3);

Bar(144,348+y,146,347+y);

SetColor(9);

Ellipse(145,310+G,0,190,7,3);

SetColor(Yellow);

Rectangle(143,313+G,147,350+y);

SetColor(Yellow);

Line(145,47,145,256+G);

Line(145,220+G,145,263+G);

Line(145,257+G,139,263+G);

Line(145,257+G,151,263+G);

SetColor(Blue);

Line(145,256+G,139,262+G);

Line(145,256+G,151,262+G);

SetColor(Yellow);

SetFillStyle(1,Black);

Bar(138,130+G,148,132+G);

Rectangle(138,130+G,148,132+G);

SetFillStyle(1,Blue);

Bar(138,129+G,144,129+G);

Bar(145,129+G,149,129+G);

SetColor(Yellow);

SetFillStyle(1,9);

FillEllipse(145,309-(B+a)+D+(G+u),6,2);

SetColor(Blue);

Ellipse(145,308-(B+a)+D+(G+u),0,180,6,2);

Ellipse(145,307-(B+a)+D+(G+u),0,180,6,2);

Ellipse(145,305-(B+a)+D+(G+u),0,180,6,2);

Ellipse(145,304-(B+a)+D+(G+u),0,180,6,2);

Delay(5000);

SetColor(Yellow);

Line(80,330,100,330);

SetColor(2);

Line(80,331,100,331);

Line(80,332,100,332);

If G>24 Then

Begin

SetFillStyle(1,2);

Bar(139,331,151,339);

SetColor(Yellow);

Line(140,330,150,330);

End;

Sound(129+G);

End;

SetFillStyle(1,2);

Bar(144,340,146,363);

Nosound;

Q:=W+7;

SetColor(Blue);

Line(95,257-Q,90,262-Q);

Line(95,257-Q,100,262-Q);

For I:=1 To W+7 Do

Begin

{- 7.1 -}


Sound(129+G+I);

SetColor(Yellow);

Line(95,260-Q+i,95,200);

SetColor(Yellow);

SetFillStyle(1,Blue);

Rectangle(88,265-Q+I,102,310-Q+I);

FillEllipse(95,265-Q+I,8,3);

SetColor(Yellow);

SetFillStyle(1,Blue);

FillEllipse(95,310-Q+I,7,3);

SetColor(Yellow);

Rectangle(93,311-Q+I,97,350-Q+I);

SetFillStyle(1,Blue);

FillEllipse(95,310-Q+I,3,2);

SetColor(Blue);

Line(93,350-Q,97,350-Q);

Ellipse(95,264-Q+I,0,180,8,3);

Ellipse(95,308-Q+I,0,180,6,3);