Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.07.2011, 00:45   #1
Fryg
Пользователь
 
Регистрация: 30.06.2011
Сообщений: 32
По умолчанию Графика в TurboPascal - нарисовать анимацию/мультфильм: ночной пейзаж, домики и летающая тарелка

да такое задание:

Задача: Создать мультфильм следующего содержания:

1) На экране возникает ночной пейзаж и секунды три ничего не происходит:
2) Затем звучит “космическая” музыка (секунд на 5).
3) Затем сверху слева появляется летающая тарелка (пусть это будет небольшой эллипс) и не спеша опускается на землю (до линии горизонта).
4) Затем снова раздается та же музыка.
5) Затем в окне ближайшего дома вспыхивает свет. Все.


вот код

Код:
uses graph, crt;
var device, mode   :integer;
    i,x_tree,y_tree,x_house,y_house,y_goriz,
    x_tar,y_tar,shirina_tar,visota_tar :integer;

procedure Tree;
   begin


       setcolor(white);
       setfillstyle(1,lightgreen);
       ellipse(x_tree,y_tree,0,360,15,30);
       floodfill(x_tree,y_tree,white);

       setfillstyle(1,brown);
       rectangle(x_tree-3,y_tree+30,x_tree+3,y_tree+60);
       floodfill(x_tree,y_tree+40,white);
   end;
procedure House;
   begin


       setcolor(white);
       rectangle(x_house,y_house,x_house+40,y_house+40);
       setfillstyle(1,lightblue);
       floodfill(x_house+1,y_house+1,white);

       rectangle(x_house+15,y_house+10,x_house+25,y_house+20);
       setfillstyle(1,darkgray);
       floodfill(x_house+20,y_house+15,white);

       line(x_house-5,y_house,x_house+45,y_house);
       Line(x_house-5,y_house,x_house+20,y_house-30);
       line(x_house+45,y_house,x_house+20,y_house-30);
       setfillstyle(1,red);
       floodfill(x_house+20,y_house-1,white);

   end;
procedure landscape;
   begin
     
      line(0,y_goriz,640,y_goriz);
      setfillstyle(1,blue);
      floodfill(0,100,white);
      setcolor(yellow);
      setfillstyle(1,yellow);
      circle(550,100,50);
      floodfill(550,100,yellow);
      for i:=1 to 150 do
        putpixel(random(640), random(240), random(16));

      x_tree:=100; y_tree:=400;
      x_tree:=550; y_tree:=380;
      x_tree:=300; y_tree:=300;

      x_house:=300; y_house:=400;
      x_house:=470; y_house:=300;
      setfillstyle(1,green);
      floodfill(0,241,white);
   end;
procedure Music;
   begin
       Sound(200);delay(1000);
       Sound(500);delay(1000);
       Sound(300);delay(1000);
       Nosound;
   end;
procedure Flying_Saucer;
   begin
      x_tar:=100; y_tar:=40; shirina_tar:=30; visota_tar:=15;
        repeat
          ellipse(x_tar,y_tar,0,360, shirina_tar,visota_tar);
          Delay(20);
          Setcolor(blue);
          ellipse(x_tar,y_tar,0,360, shirina_tar,visota_tar);
           y_tar:=y_tar+1;
        until y_tar>y_goriz;
         setcolor(white);
         ellipse(x_tar,y_tar,0,360, shirina_tar,visota_tar);
   end;
begin
    device:=0;
    InitGraph(device, mode, 'c:\tp\bgi');
    y_goriz:=240;
    Landscape;
    Delay(3000);
    Music;
    Flying_saucer;
    music;
     setfillstyle(1,yellow);
     floodfill(x_house+20,y_house+15,white);
    
    readln;
    closegraph;
end.

у меня изчезают деревья и домики

Последний раз редактировалось Fryg; 10.07.2011 в 03:33.
Fryg вне форума Ответить с цитированием
Старый 10.07.2011, 11:00   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Они у тебя не исчезают они просто не рисуются - ты же не вызываешь процедуру отрисовки.
Допиши:
Код:
    Landscape;House;Tree;
И еще: Тарелку совсем не видно - она синяя. Залей ее другим цветом
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нарисовать сложные орнаменты. Графика в ПаскальАвс Nurtas Помощь студентам 12 23.05.2011 13:43
Нарисовать и сдвинуть треугольники (Графика в TurboPascal) Ньютон Паскаль, Turbo Pascal, PascalABC.NET 1 28.04.2011 20:54
Как нарисовать на форме в delphi анимацию? Yamkin Помощь студентам 10 13.04.2011 17:50
Си/Нарисовать треугольник/графика Bl@st Помощь студентам 1 18.11.2009 00:08
Графика в Делфи. Как нарисовать строфоиду? stscolt Помощь студентам 3 07.09.2009 10:12