Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
Nikakoy
0 / 0 / 0
Регистрация: 28.01.2013
Сообщений: 6
#1

Управляемая анимация в C++

24.03.2013, 18:28. Просмотров 1459. Ответов 3
Метки нет (Все метки)

Нарисовать схему электрической цепи, чтобы ключи при нажатии на соответствующие цифры открывались и закрывались, при включеном ключе ток текет - провода зеленые, лампочки загораются в соответствие с законами физики, батареи зеленым цветом.
0
Миниатюры
Управляемая анимация в C++  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2013, 18:28
Ответы с готовыми решениями:

Файловая база данных, управляемая в консольном интерактивном режиме
Помогите пожалуйста. Не знаю с чего начать, а главное как реализовать в си....

Анимация
Как мне нарисовать ромб, так чтобы он менял свою форму, относительно своих...

анимация в С++
как заставить шарик вращаться?

Анимация в С++
Уважаемые, программисты! кто может сделать анимацию в программе С++, рисунок...

Анимация.
Я сделала анимацию барашка, он движется ,но, когда он двигается дальше,...

3
hofmn
Helter Skelter
61 / 61 / 19
Регистрация: 19.09.2012
Сообщений: 133
24.03.2013, 18:45 #2
Цитата Сообщение от Nikakoy Посмотреть сообщение
Нарисовать схему электрической цепи
В консоли? Как вы себе это представляете?
0
Nikakoy
0 / 0 / 0
Регистрация: 28.01.2013
Сообщений: 6
24.03.2013, 18:49  [ТС] #3
Цитата Сообщение от hofmn Посмотреть сообщение
В консоли? Как вы себе это представляете?
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
#include <graphics.h>       // для работы с графикой
#include <conio.h>          // для работы getch()
 
 
// ПРОЦЕДУРА ЛИНОВКИ ПОЛЯ НА КЛЕТКИ
   void Setka ( int k, int L, int H, int dx )
       {
     int x = 0; int y = 0;
     
     if ( k == 1 )
         {
       // Рисование сетки - серый цвет               
       while ( x <= L )
           {
         setcolor ( COLOR ( 60, 60, 60 ) );
         line ( x, 0, x, H ); 
         x = x + dx;  
           }
       while ( y <= H )
           {
         setcolor ( COLOR ( 60, 60, 60 ) );
         line ( 0, y, L, y ); 
         y = y + dx;  
           }           
         }                
     else
         {
       // Стирание сетки - черный цвет                           
       while ( x <= L )
           {
         setcolor ( 0 );
         line ( x, 0, x, H ); 
         x = x + dx;  
           }
       while ( y <= H )
           {
         setcolor ( 0 );
         line ( 0, y, L, y ); 
         y = y + dx;  
           }                      
         }                                             
       }        
// -------------------------------------------
// ПРОЦЕДУРА АНИМАЦИИ ВЫКЛЮЧАТЕЛЯ
   void Key_G ( int k, int num, int x, int y )
       {
     char numK [3];
 
     if ( k == 1 )
         { 
       // Стирание наклонной - черный цвет         
       setcolor ( 0 );                                   
       line ( x, y - 1, x + 33, y - 22 );               
       // Рисование прямой - зеленый цвет
       setcolor ( 10 );     
       line ( x, y, x + 36, y );
       setfillstyle (1, 10);
       circle ( x, y, 3 );
       floodfill ( x - 1, y - 1, 10);
       circle ( x + 40, y, 3 );       
       floodfill ( x + 40, y, 10);       
         }
     else
         {
       // Стирание прямой - черный цвет                          
       setcolor ( 0 );                    
       line ( x, y, x + 36, y );
       // Рисование наклонной - белый цвет                                     
       setcolor ( 15 );                              
       line ( x, y - 1, x + 33, y - 22 );
       setfillstyle (1, 15);
       circle ( x, y, 3 );
       floodfill ( x - 1, y - 1, 15);       
       circle ( x + 40, y, 3 );       
       floodfill ( x + 40, y, 15);              
         }  
       // Вывод клавиши управления для выключателя - желтый цвет             
       setcolor (14);
       sprintf ( numK, "%d", num );
//       outtextxy ( x + 12, y + 3, "K");                  
       outtextxy ( x + 16, y + 3, numK );                  
       }                  
// -------------------------------------------
// ПРОЦЕДУРА АНИМАЦИИ ГОРИЗОНТАЛЬНОГО СОЕДИНЕНИЯ
   void Lin_G ( int k, int xn, int yn, int L )
       {
       int i, n;
     if ( k == 1 )
         {
       // Рисование отрезка - зеленый цвет                                       
       setcolor ( 10 );
       line ( xn, yn, xn + L, yn );       
         }
     else
         {
       // Рисование отрезка - белый цвет                        
       setcolor ( 15 );
       line ( xn, yn, xn + L, yn );             
         }       
       }
// -------------------------------------------
 
// ОСНОВНОЙ БЛОК ПРОГРАММЫ
int main()
{
  int L, H, code;
  int  keyS = 0, key12 = 0; 
  int num01 = 1, key01 = 0; 
  int num02 = 2, key02 = 0;    
  L = 500; H = 500;
  initwindow ( L, H );                         // Графическое окно
  code = 0;
  
    while ( code != 27 )
        {
        if ( kbhit() ) code = getch();
      if ((( code == 115 ) || ( code == 83 )) && ( keyS == 0 )) { keyS = 1; code = 0; }      
      if ((( code == 115 ) || ( code == 83 )) && ( keyS == 1 )) { keyS = 0; code = 0; }
      if (( code == 49 ) && ( key01 == 0 )) { key01 = 1; code = 0; }      
      if (( code == 49 ) && ( key01 == 1 )) { key01 = 0; code = 0; }
      if (( code == 50 ) && ( key02 == 0 )) { key02 = 1; code = 0; }      
      if (( code == 50 ) && ( key02 == 1 )) { key02 = 0; code = 0; }
    // ВЫЗОВ ПРОЦЕДУРЫ - ЛИНОВАНИЕ ПОЛЯ
//     Setka ( keyS, L, H, 10 );                   // Сетка для удобства подсчета 
    // ВЫЗОВ ПРОЦЕДУР - АНИМИРОВАННЫЙ КЛЮЧ                        
    Key_G ( key01, num01, 150, 50 );               // Длина выключателя равна 40 единиц 
    Key_G ( key02, num02, 250, 50 );               // Длина выключателя равна 40 единиц
      if ( key01 && key02 ) key12 = 1; else key12 = 0; 
    // ВЫЗОВ ПРОЦЕДУР - АНИМИРОВАННЫЕ СОЕДИНЕНИЯ
    Lin_G ( key01, 190, 50, 60 );                  // Длина соединения равна  60 единиц                 
    Lin_G ( key12, 290, 50, 150 );                 // Длина соединения равна 150 единиц    
 
        }  
 
 
     
  // Задержка графического окна
  
//  getch();
  closegraph();
}
0
Вложения
Тип файла: txt Новый текстовый документ.txt (4.7 Кб, 15 просмотров)
Nikakoy
0 / 0 / 0
Регистрация: 28.01.2013
Сообщений: 6
24.03.2013, 18:50  [ТС] #4
Цитата Сообщение от hofmn Посмотреть сообщение
В консоли? Как вы себе это представляете?
Это пример кода
Нужно продолжить и нарисовать то что во вложении - рисунок
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2013, 18:50

Анимация
Всем привет. Меня интересует такой вопрос. Есть файл *.FBX насколько сложно...

Анимация
Ребята помогите написать анимацию(на ваш выбор). Анимация должна быть не очень...

Анимация символов
превед )) решил побаловаться в с++. Нарисовал простенький рисунок( \ / # $...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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