Профиль «Прикладная информатика в экономике»




ОТОБРАЖЕНИЕ ДВУХМЕРНЫХ СЦЕН

СРЕДСТВАМИ ГРАФИЧЕСКОЙ БИБЛИОТЕКИ

OPENGL

 

Задания и программы лабораторных работ по дисциплине

"Геометрическое моделирование и компьютерная графика"

Для студентов направления 09.03.03 – «Прикладная информатика»,

профиль «Прикладная информатика в экономике»

 

Составитель: д.т.н., профессор Косников Ю.Н.

Пенза 2016
Задание 1. Система координат и примитивы OpenGL

Цель выполнения задания: изучить на практике отображение простых геометрических фигур в пределах нормализованного объема видимости.

Изучаемые команды

Командыинициализации: auxInitWindowPosition, auxInitWindowSize, glutInitWindowPosition, glutInitWindowSize.

Команды настройки цветов фона и изображения: glClearColor, glClear(GL_COLOR_BUFFER_BIT), glColor.

Команды рисования геометрических примитивов: glVertex, glBegin – glEnd.

Команды задания стиля вычерчивания: glLineWidth, glEnable(GL_LINE_SMOOTH), glEnable(GL_POINT_SMOOTH).

Варианты заданий приведены в таблице 1.

Таблица 1

N варианта Фигура Геометрический примитив
  Два раздельных треугольника Отрезок (GL_LINES), треугольник (GL_TRIANGLES)
  «Песочные часы» – два треугольника с общей вершиной Связанные отрезки (GL_LINE_STRIP), треугольник (GL_TRIANGLES)
  Два связанных треугольника Замкнутый контур (GL_LINE_LOOP)
  Смежные треугольник и прямоугольник Полигон (GL_POLYGON)
  Два смежных треугольника Треугольник (GL_TRIANGLES)
  «Созвездие» из пяти разноцветных точек и «метеор» – вектор с крупной точкой Точка (GL_POINTS), отрезок (GL_LINES)
  Неправильный четырехугольник с точкой в вершине Четырехугольник (GL_QUADS), точка (GL_POINTS)
  Четырехугольник с диагональю Связанные треугольники (GL_TRIANGLE_STRIP)
  Четырехугольник с диагональю Треугольник (GL_TRIANGLES)
  Два смежных четырехугольника Связанные четырехугольники (GL_QUAD_STRIP)
  Четырехугольник с диагональю Связанные треугольники (GL_TRIANGLE_FAN)
  Четырехугольник с диагональю Связанные отрезки (GL_LINE_STRIP)
  Параллелограмм с точками на углах Точка (GL_POINTS), полигон (GL_POLYGON)
  «Домик» – смежные треугольник и квадрат Треугольник (GL_TRIANGLES), четырехугольник (GL_QUADS)
  Треугольник и квадрат с общей вершиной Замкнутый контур (GL_LINE_LOOP), четырехугольник (GL_QUADS)
  Треугольник, вписанный в прямоугольник Треугольник (GL_TRIANGLES), связанные отрезки (GL_LINE_STRIP)
  Смежные пятиугольник и треугольник Полигон (GL_POLYGON)
  «Флажок» – вытянутый прямоугольник и треугольник Четырехугольник (GL_QUADS), треугольник (GL_TRIANGLES)
  «Флажок» – вектор и невыпуклый пятиугольник Отрезок (GL_LINES), полигон (GL_POLYGON)
  «Кораблик» – трапеция и вектор Четырехугольник (GL_QUADS), отрезок (GL_LINES)
  «Молоток» – трапеция и вытянутый прямоугольник Полигон (GL_POLYGON), четырехугольник (GL_QUADS)
  «Окно» – прямоугольник и многоугольник Замкнутый контур (GL_LINE_LOOP), полигон (GL_POLYGON)
  «Лопата» – выпуклый пятиугольник и вытянутый прямоугольник Полигон (GL_POLYGON), отрезок (GL_LINES)
  «Дупель один-один» – два смежных квадрата с точками в центрах Четырехугольник (GL_QUADS), точка (GL_POINTS),  
  Пятиугольник с двумя диагоналями Треугольник (GL_TRIANGLES), отрезок (GL_LINES)
  «Веселый Роджер» – вытянутая по верти-кали трапеция и ниже – косой крест из двух прямоугольников Четырехугольник (GL_QUADS), полигон (GL_POLYGON)
  «Рюмка» – равнобокая трапеция на 6-угольной ножке Полигон (GL_POLYGON), замкнутый контур (GL_LINE_LOOP),
  «Часы» – квадрат, два узких прямоугольника разной длины и крупная точка в центре Связанные отрезки (GL_LINE_STRIP), четырехугольник (GL_QUADS), точка (GL_POINTS)
  «Наполовину пустая бутылка» – прямоугольник и замкнутая ломаная линия из 8 сегментов Четырехугольник (GL_QUADS), полигон (GL_POLYGON)
  «Квадратная гайка» – правильный квадрат с отверстием (многоугольником) внутри Полигон (GL_POLYGON), связанные отрезки (GL_LINE_STRIP)
  «Крыша дома» – параллелограмм, сопряженный с треугольником Треугольник (GL_TRIANGLES), четырехугольник (GL_QUADS)
  Правильный шестиугольник с диагоналями и точкой большого размера в центре Связанные треугольники – «веер» (GL_TRIANGLE_FAN), точка (GL_POINTS)

Программа выполнения задания

1. Спроектировать изображение, выбрав координаты вершин, которые ограничивают примитивы. Координаты х и у вершин не должны превышать ±1, координата z берется равной нулю. Выбрать размеры окна вывода. Определить цвет фона (не черный) и цвет изображения – разный для каждого фрагмента изображения.

2. В программу-заготовку добавить команды задания окна и рисования изображения. Использовать формат команды задания вершин glVertex3f. Получить изображение заданных фигур на экране. Предъявить результаты преподавателю.

3. Изменяя координаты х и у вершин в диапазоне (-5,+5), определить границы объема видимости по соответствующим координатам, а также направления координатных осей и точку их начала.

4. Задать координату z одной из вершин равной +0.5, затем -0.5. Объяснить наблюдаемый эффект. Задать координату z одной из вершин равной +5, затем -5. Объяснить наблюдаемый эффект.

5. Ответить на контрольные вопросы преподавателя.

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-12-29 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: