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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2009, 00:11   #1
True_girl
Пользователь
 
Регистрация: 29.11.2008
Сообщений: 28
По умолчанию анимация в с++

Кто-нибудь может рассказать как с помощью клавиатуры управлять анимацией, передвигать объекты и т.д. ?
Если у кого - нибудь есть какие-нибудь материалы по графике и анмации поделитесь, пожалуйста!
True_girl вне форума Ответить с цитированием
Старый 19.02.2009, 09:20   #2
Geg[C/c++]
Пользователь
 
Аватар для Geg[C/c++]
 
Регистрация: 18.02.2009
Сообщений: 76
По умолчанию

Советую для сбора "какие-нибудь материалы" воспользоваться ресурсами поисковиками.
Все что не делается все к ... А какого черта? Делайте все что задумали и все что вам захочется.
Если конечно задуманное вами не попадает под статью.. © Geg[C/c++][поиск]
Geg[C/c++] вне форума Ответить с цитированием
Старый 19.02.2009, 20:44   #3
bag
Пользователь
 
Регистрация: 20.06.2008
Сообщений: 95
По умолчанию

True_girl, тебе надо на досовском C++ или всетаки на Visual C++? Если на досовском, то могу тебе дать примерчик, недавно написаный мной. Думаю, он тебе будет полезен.
Вложения
Тип файла: rar CL.rar (2.1 Кб, 79 просмотров)
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
bag вне форума Ответить с цитированием
Старый 19.02.2009, 22:47   #4
True_girl
Пользователь
 
Регистрация: 29.11.2008
Сообщений: 28
По умолчанию

bag, спасибо, мне надо на досовском с++
True_girl вне форума Ответить с цитированием
Старый 20.02.2009, 17:23   #5
True_girl
Пользователь
 
Регистрация: 29.11.2008
Сообщений: 28
По умолчанию

а может кто-нибудь помочь организовать взрыв. вообщем надо что бы самолетик разлетался на множество кусочков!расскажите пожалуйста как это организовать на turbo c++ под DOS? вот сам код картинки
Код:
#include<graphics.h>
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<dos.h>
#include<iostream.h>

char *fname[] = { "DEFAULT font",
  "TRIPLEX font",
  "SMALL font",
  "SANS SERIF font",
  "GOTHIC font"
};
char *lname[] = {
"SOLID_LINE",
"DOTTED_LINE",
"CENTER_LINE",
"DASHED_LINE",
"USERBIT_LINE"
};
int main()
{
 int gd,gm,err;
 gd=DETECT;
 int i;
 char msg[80];
 initgraph(&gd,&gm,"");
 err=graphresult();
 if(err!=grOk)
  {
   printf("Error");
   getch();
   return 0;
  }

 setcolor(8);
 setbkcolor(11);
 line (250,220,250,200);
 line (250,200,280,170);
 line (280,170,280,110);
 line (280,110,270,100);
 line (270,100,220,130);
 line (220,130,220,100);
 line (220,100,270,70);
 line (270,70,270,60);
 line (270,60,280,50);
 line (280,50,280,20);
 line (280,20,290,5);
 line (290,5,300,20);
 line (300,20,300,50);
 line (300,50,310,60);
 line (310,60,310,70);
 line (310,70,360,100);
 line (360,100,360,130);
 line (360,130,310,100);
 line (310,100,300,110);
 line (300,110,300,170);
 line (300,170,330,200);
 line (330,200,330,220);
 line (330,220,310,220);
 line (310,220,300,210);
 line (300,210,280,210);
 line (280,210,270,220);
 line (270,220,250,220);

 setfillstyle(1,8);
 floodfill(269,219,8);

  //oblachko
 setfillstyle(1,3);
 setcolor(3);
 fillellipse(100,100,23,15);
 fillellipse(130,100,15,15);
 fillellipse(160,100,23,15);
 fillellipse(120,80,18,15);
 fillellipse(140,80,18,15);



 int size1,size2; //animaciya

 size1=imagesize(200,2,380,325);
 void *arrow;
 arrow=malloc(size1);
 getimage(200,2,380,325,arrow);

 size2=imagesize(75,50,200,15);
 void *oblachko;
 oblachko=malloc(size2);
 getimage(75,50,200,130,oblachko);
 cleardevice();
 for (int y=0; y<400; y=y+150){
 for(int x=100;x<600;x=x+300)
 {
   putimage(x,y,oblachko,COPY_PUT);
   delay(50);
 }   }
 free(oblachko);

 setcolor(14);
 setfillstyle(1,14);
 fillellipse(0,0,100,100);
 setlinestyle(2,4,3);
line(50,50,150,150);
line(10,50,45,200);
line(15,50,100,180);
line(210,50,250,70);
line(55,150,75,200);
line(140,70,190,100);
line(150,110,190,149);
  setcolor(14);
 setfillstyle(1,14);
 fillellipse(0,0,100,130);
 for ( y=480; y>0; y--)
 {
   putimage(220,y,arrow,COPY_PUT);
   delay(10);
 }
 free(arrow);

 setcolor(4);
 settextstyle(3,0,433);
 settextstyle(0,0, 4);
 outtextxy(150,400,"PlaneKiller");
 getch();
 closegraph();
 return 0;
}
True_girl вне форума Ответить с цитированием
Старый 22.02.2009, 16:28   #6
bag
Пользователь
 
Регистрация: 20.06.2008
Сообщений: 95
По умолчанию

Ну, тут 2 пути:
1) Выводить самолет не весь целиком, а как совокупность спрайтов кусочков. Вначале их двигать в одном направлении, чтобы они образовывали силуэт самолета, а затем задать каждому кусочку свою траекторию (в разные стороны). Способ довольно муторный.
2) Двигать самолет одним спрайтом. Когда он должен разлететься, сделать в следующей последовательности:
- нарисовать самолет;
- найти и запомнить в массиве координаты всех точек самолета;
- задать каждой точке свою траекторию. Например, задать центр самолета, определить для каждой точки угол и радиус по отношению к центру, а затем выводить точки, постепенно увеличивая радиусы.
Не забывайте оставлять отзывы (кнопочка в левом нижнем углу сообщения)
bag вне форума Ответить с цитированием
Старый 23.02.2009, 00:22   #7
Grizzzli
 
Регистрация: 13.12.2008
Сообщений: 9
По умолчанию

можно поподробнее 2 спооб, т.е смотри, если вот так написать самолет?
Код:
int poly[54] = {250, 470, 250, 450, 280, 420, 280, 360,
                        270, 350, 220, 380, 220, 350, 270, 320,
                        270, 310, 280, 300, 280, 270, 290, 255,
                        300, 270, 300, 300, 310, 310, 310, 320,
                        360, 350, 360, 380, 310, 350, 300, 360,
                        300, 420, 330, 450, 330, 470, 310, 470,
                        300, 460, 280, 460, 270, 470};
вроде массив координат,а вот как сделать пункт 3?
Grizzzli вне форума Ответить с цитированием
Старый 01.03.2009, 18:57   #8
Grizzzli
 
Регистрация: 13.12.2008
Сообщений: 9
По умолчанию

А вот еще вопрос: можно ли вставить как - нибудь картинку, на задний план, чтобы ее ничего не могло стиреть и т.д и как это можно сделать?
Grizzzli вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Анимация BuTeK1 Паскаль, Turbo Pascal, PascalABC.NET 0 19.01.2009 00:30
анимация волшебная Общие вопросы Delphi 0 17.12.2008 21:01
Анимация SanekIrk Общие вопросы Delphi 2 15.08.2008 21:57
Анимация SanekIrk Общие вопросы Delphi 11 08.08.2008 15:24
Анимация Rembo Софт 6 02.12.2007 18:31