Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 27, средняя оценка - 4.74
JM007
0 / 0 / 0
Регистрация: 04.04.2010
Сообщений: 57
#1

Анимация в Borland C++ v.3 - C++

16.04.2010, 18:59. Просмотров 3386. Ответов 5
Метки нет (Все метки)

Всем привет!
Подскажите пожалуйста как делать анимацию в графическом(dos) режиме
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2010, 18:59     Анимация в Borland C++ v.3
Посмотрите здесь:

Анимация в borland v6 - C++
Доброго времени суток! Подскажите пожалуйста,как мне написать движение объекта в восьми направлениях? Ну,т.е. при нажатии на кнопку с...

Русские хелпы по Borland C++ 5.* и Borland C++ Bulder - C++
Подскажите где найти русские хелпы на Borland C++ 5.* и Borland C++ Bulder ...

C++ borland - C++
Помогите пожалуйста решить, сам не имею возможности т. к. мозг не шарит =\ 1. Дана сторона равностороннего треугольника. Найти площадь...

Borland c++ 5.02 - C++
Тут получается 9 задач за каждую могу заплатить по 100 рублей.Кого заинтересовало Мой Icq 428850079. Сначала пишем в аську. Там...

Borland C++ 3.11 - C++
Помогите пожалуйста используя Borland C++ 3.11 Вот задание в формате doc: ...

Borland C++ - C++
Форумчане , помогите. Начали изучение С++ в универе. Сделал 2 лбораторки, препод проверил , сказал ошибок нет.НО программа не работает....

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vorona
Peace 2 all shining faces
668 / 530 / 45
Регистрация: 05.03.2010
Сообщений: 1,276
16.04.2010, 19:55     Анимация в Borland C++ v.3 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
 
int main(void)
{
    int gdriver = DETECT, gmode, errorcode;
    int midx, midy;
    int radius = 50;
 
    initgraph(&gdriver, &gmode, "");
 
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        printf("Graphics error: %s\n", grapherrormsg(errorcode));
        printf("Press any key to halt:");
        getch();
        exit(1);
    }
 
    midx = 0 + radius;
    midy = getmaxy() / 2;
 
    for(float i = midx; i < 640 - radius; i+=0.3){
        setcolor(getbkcolor());
        circle(i-1, midy, radius);
        setcolor(GREEN);
        circle(i, midy, radius);
    }
 
    getch();
    closegraph();
        return 0;
}
рисует круг)
простейший пример анимации - перемещать фигуру с определенным шагом в определенном направлении и за ней рисовать такую же фигуру цвета фона с таким же шагом в таком же направлении, т.е. она будет зарисовывать след от нашей фигурки, и получится движение)

В Хэлпе ВСРР 3.1 есть примеры всех ф-ций граф режима и там все очень просто и доступно написано, а вот с движком могут быть нюансы... но это позже
думаю, суть вам ясна, напишите ф-цию, которая будет реализовывать движение и принимать параметры координат и во всевозможных циклах вставляйте ее)
будут вопросы, обращайтесь)
JM007
0 / 0 / 0
Регистрация: 04.04.2010
Сообщений: 57
16.04.2010, 22:14  [ТС]     Анимация в Borland C++ v.3 #3
Спасибо.))
Как сделать так, чтобы короткие линие двигались на определенном интервале бесконечно(например как красные муравьи в Word), подскажите пожалуйста...
Vorona
Peace 2 all shining faces
668 / 530 / 45
Регистрация: 05.03.2010
Сообщений: 1,276
17.04.2010, 02:15     Анимация в Borland C++ v.3 #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include <dos.h>
 
int main()
{
    int gdriver = DETECT, gmode, errorcode;
 
    initgraph(&gdriver, &gmode, "");
 
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        printf("Graphics error: %s\n", grapherrormsg(errorcode));
        printf("Press any key to halt:");
        getch();
        exit(1);
    }
 
    int x = 50, y = 50, y1 = y, finish = 400;
    for(int i = x; i < finish; i+=10){
        setcolor(getbkcolor());
        line(i-10, y, i+10, y1);
        if(i+10 == finish)
            i = x;
        setcolor(RED);
        line(i, y, i+10, y1);
        delay(100);
    }
    getch();
        closegraph();
        return 0;
}
Ctrl+Pause Break аварийное завершение программы, т.к. цикл бесконечный)
JM007
0 / 0 / 0
Регистрация: 04.04.2010
Сообщений: 57
18.04.2010, 17:11  [ТС]     Анимация в Borland C++ v.3 #5
А как сделать так, чтобы линия шла не вправо, а влево...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.04.2010, 17:33     Анимация в Borland C++ v.3
Еще ссылки по теме:

Borland c++ - C++
Помогите, пожалуйста, решить задачу: Даны числа a и b. Сколько в диапазоне чисел, в которых есть по крайней мере 2 одинаковые цифры?

Borland C++3.1 - C++
Этот старый &quot;инструмент&quot; стоит уже давно забыть и перейти в более новый? Вообще искал, описаний про него нет, справка на англ тем более не...

borland c++ - C++
люди откуда можно скачать borland C++ builder

Borland C - C++
Ребята помогите плиз решить простую задачку!! Найти произведение всех цифр заданого четырехзначного числа!! Заранее спасибо...

Borland c++ - C++
вычислить Z=(S1+S2)/2, где S1 сумма положительных элементов массиваY(M). (M,N&lt;=50)

Borland c++ 4.5 - C++
#include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;cstring.h&gt; #include &lt;string.h&gt; class OverflowException { public: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Vorona
Peace 2 all shining faces
668 / 530 / 45
Регистрация: 05.03.2010
Сообщений: 1,276
18.04.2010, 17:33     Анимация в Borland C++ v.3 #6
поменяйте в цикле for( ;; ) значения i
C
1
for(int i = finish; i > x; i-=10){
в данном случае значения i это пиксели экрана 640х480
(0, 0)_____________
|...........................|
|...........................|
|...........................|
|...........................|
|...........................|
|_________________|(640, 480)
таким образом пиксели расположены на экране((0,0) - верхний левый угол и (640,480) - нижний правый)
центр экрана - (320,240) пиксели
или можно узнать такими ф-циями:
C
1
2
3
4
5
int x = getmaxx()/2;
int y = getmaxy()/2;
//нарисовать красную точку в центре экрана
int color = RED;
putpixel(x, y, color);
Yandex
Объявления
18.04.2010, 17:33     Анимация в Borland C++ v.3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru