Задание
Реализовать программу с использованием графики и анимации объектов. Для реализации использовать С++ на базе MS Visual Studio с подключенным OpenGL.
Функционал программы
void home() - функция прорисовки первого здания;
void home1() - функция прорисовки второго здания;
void sun() - функция прорисовки солнца;
void oblako() - функция прорисовки облаков;
void avto() - функция прорисовки автомобиля;
void bus() - функция прорисовки автобуса;
void water() - функция прорисовки пруда;
void tree() - функция прорисовки дерева;
void background() - функция заливки общего фона.
Содержание отчета к программе
Введение. 3
1 Постановка задачи. 4
2 Алгоритм решения задачи. 4
3 Описание элементов программы.. 6
3.1 Прорисовка фона и статичных элементов. 6
3.2 Реализация анимации. 6
4 Контрольный пример. 7
Заключение. 8
Приложение А - Программный код. 9
Фрагмент программного кода
void home() { glPushMatrix(); //здание glColor3f(0.811, 0.256, 0.129); glTranslated(2.5, -0.5, 10); glScaled(4, 2, 1); glutSolidCube(1); glColor3f(0, 0, 0); glutWireCube(1); glPopMatrix(); glPushMatrix(); //Крыша glColor3ub(138, 127, 142); glBegin(GL_TRIANGLES); glVertex3f(3.0f, 1.0f, 0.0f); //верхняя вершина glVertex3f(0.7f, 0.1f, 0.0f); //левая вершина glVertex3f(5.1f, 0.1f, 0.0f); //правая вершина glEnd(); glFlush(); glPopMatrix(); glPushMatrix(); //дверь glColor3f(0.545, 0.270, 0.074); glTranslated(2, -1.3, 0); glScaled(0.5, 1.1, 1); glutSolidCube(1); glColor3f(0, 0, 0); glutWireCube(1); glPopMatrix(); glPushMatrix(); //окно glColor3f(0.960, 0.960, 0.960); glTranslated(3.5, -1, 0); glScaled(0.8, 1, 1); glutSolidCube(1); glColor3f(0, 0, 0); glutWireCube(1); glPopMatrix(); }
Скриншот архива с проектом
Пояснительная записка и
Пояснения по запуску программы
Необходимо скачать или взять прикрепленный glut-3.7.6-bin
Smitsonit