Добавил:
nyan
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:ИГС / IGS_2014-2015 / Lab_04 / glopen02 / glopen02
.cpp#include <afxwin.h>
#include <gl\gl.h>
#include <gl\glu.h>
#include <gl\glaux.h>
void DrawOpenGL(void);
void main()
{
//определяем окно для рисования на экране
auxInitPosition(100, 50, 600, 450);
//устанавливаем режимы работы OpenGL
auxInitDisplayMode(AUX_SINGLE | AUX_RGB);
//производит регистрацию окна в операционной системе
auxInitWindow("Console Application ");
//обрабатывает сообщения, вызывается функция DrawOpenGL в ответ на сообщение WM_PAINT
auxMainLoop((AUXMAINPROC)DrawOpenGL);
}
//рисуем графические объекты
void DrawOpenGL(void)
{
//устанавливаем двухмерную ортогональную область просмотра
//определяем работу с матрицей проекции
glMatrixMode(GL_PROJECTION);
//заменяет текущую матрицу единичной
glLoadIdentity();
//устанавливаем двухмерную ортогональную область просмотра
gluOrtho2D(-400, 400, -300, 300);
//задаем цвет фона
glClearColor(0,0,0.5, 1.0f);
glClear(GL_COLOR_BUFFER_BIT);
//устанавливаем текущий цвет
glColor3f(0.0, 1.0, 0.0);
//рисуем треугольник
glBegin(GL_TRIANGLES);
glVertex2f(-100, -100);
glVertex2f(0, 100);
glVertex2f(100, -100);
glEnd();
//устанавливаем текущий цвет
glColor3f(1.0, 0.0, 0.0);
//толщина линий - 6 пикселей
glLineWidth(6.0);
//рисуем связанную группу отрезков
glBegin(GL_LINE_STRIP);
glVertex2f(0, 150);
glVertex2f(150, -130);
glVertex2f(-150, -130);
glVertex2f(0, 150);
glEnd();
//блокирует выполнение прогрммы, пока не бубут
//выполнены все вызванные перед ней команды OPenGL
glFinish();
}