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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2012, 18:52   #1
Kukurudza
Форумчанин
 
Регистрация: 02.06.2011
Сообщений: 282
По умолчанию C++ OpenGL

есть сценка. как заставить, например кубик, постоянно вращаться вокруг оси OY?
в смысле чтобы кнопки постоянно не нажимать. то есть я написал программу, которая по нажатию кнопки поворачивает кубик на 2 градуса вокруг оси OY. а как сделать чтобы он постоянно вращался?
Kukurudza вне форума Ответить с цитированием
Старый 22.01.2012, 19:05   #2
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от Kukurudza Посмотреть сообщение
есть сценка. как заставить, например кубик, постоянно вращаться вокруг оси OY?
в смысле чтобы кнопки постоянно не нажимать. то есть я написал программу, которая по нажатию кнопки поворачивает кубик на 2 градуса вокруг оси OY. а как сделать чтобы он постоянно вращался?
При нажатии на клавишу, у тебя происходит приращение угла на 2 градуса.

Теперь тебе нужно, что бы приращение происходило без нажатия.
То есть, код, который реализует это приращение должен запустится без нажатий на клавишу. Например - где нибудь в вечном цикле.

То есть код, который реализует приращение нужно вынести в отдельную функцию. А в коде, который запускает при нажатии на клавишу, нужно запускать эту функцию.

Тогда ты сможешь в вечном цикле тупо запускать опять таки эту же самую функцию, и приращение будет происходить как при нажатии, так и само по себе.
_Bers вне форума Ответить с цитированием
Старый 22.01.2012, 19:12   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ну так как OpenGL предполагает окно, значит таймер самое то.
ну а далее glRotate.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 08.02.2012, 18:30   #4
Kukurudza
Форумчанин
 
Регистрация: 02.06.2011
Сообщений: 282
По умолчанию

хочу поднять тему. вот далее краткий код.могу выложить полный. преподу надо чтобы при запуске программы фигура сразу же крутилась (без каких либо нажатий клавиш и ТД и ТП) как это реализовать?

Код:

void displaySolid (void)
{
//че то рисуем
	glutSwapBuffers();
	glFlush();
}


/* Функция обрабатывает сообщения от клавиатуры */
void Keyboard( unsigned char key, int x, int y )
{
	switch (key)
	{
/* Нажали q - выход из программы */
		case 033: exit(1); break;
		case 49:
		{
//вот тут цикл который должен повторяться. то есть фигура должна постоянно вращаться. 
			for ( int i = 0; i < 3600; ++i )
			{
				displaySolid ();
			};
			break;
		};
		default: break;
	}
	glutPostRedisplay();
}

/* головная программа */
int _tmain(int argc, _TCHAR* argv[])
{
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
	glutInitWindowSize(640, 480);
	glutInitWindowPosition(100,100);


	glutDisplayFunc(displaySolid);
	glutKeyboardFunc(Keyboard);

	glutMainLoop();
}
Kukurudza вне форума Ответить с цитированием
Старый 08.02.2012, 18:48   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

http://pyopengl.sourceforge.net/docu...unc.3GLUT.html
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenGL grafgrial Фриланс 3 10.11.2011 16:32
openGL jasul Софт 2 29.10.2011 14:28
OpenGL StudentofSUSU Помощь студентам 2 15.03.2010 19:26
Opengl Алексадр Компоненты Delphi 4 29.09.2009 17:23
OpenGL в С# LeGAl Общие вопросы .NET 0 30.04.2009 02:15