ТАБЛИЦА 4.2. Обзор функций атрибутов OpenGL

Функция

Описание

glutlnitDisplayMode

Выбирается цветовой режим: GLUT_RGB либо GLUT_INDEX

glColor*

Задается цвет RGB или RGBA

gllndex*

Задается цвет с использованием элементов таблицы цветов

glutSetColor (index, r, g, b) ;

Запись цвета в определенную позицию таблицы цветов

glEnable (GL_BLEND);

Активизация функции смешивания цветов

glBlendFunc (sFact, dFact);

Задаются коэффициенты смешивания цветов

glEnableClientState

Активизируются возможности создания

(GL_COLOR_ARRAY) ;

цветовых массивов OpenGL

glColorPointer(size, type, stride, array);

Задается цветовой массив RGB

gllndexPointer(type, stride,

Задается цветовой массив в режиме цве

array);

товых коэффициентов

Функция

Описание

glPointSize (size)

Задается размер точки

glLineWidth (width);

Задается ширина линии

glEnable

Активизируется стиль линии

(GL_LINE_STIPPLE);

glEnable

Активизируется стиль заполнения

(GL_POLYGON_STIPPLE);

glLineStipple (repeat,

Задается узор стиля линии

pattern) ;

glPolygonStipple

Задается узор стиля заполнения

(pattern);

glPolygonMode

Передняя или задняя сторона фигуры изображается как набор сторон или вершин

glEdgeFlag

Устанавливается флаг стороны закрашенного многоугольника со значением СЬ_ТШЕ или СЬ_ЕАЬЗЕ, что определяет статус этой стороны

glFrontFace

Порядок вершин передней стороны задается как СЬ_ССЮ или СЬ_СЮ

glEnable

Активизируется устранение контурных неровностей с помощью функций 6Ь_Р0ШТ_ЗМ00ТН, СЬ_ЬШЕ_ЗМООТН или СЬ_РОЬУС(Ж_ЗМООТН. (Еще нужно активизировать функцию смешивания цветов)

glGet**

Различные функции запроса, выявляющие спецификацию типа данных, имя символьной константы параметра состояния и ссылку на массив

glPushAttrib

Сохранение всех параметров состояния в заданной группе атрибутов

glPopAttrib

Восстановление всех значений параметров состояния, которые были сохранены последними

ЛИТЕРАТУРА

Методики мягкого окрашивания описываются в статье [97]. Способы устранения контурных неровностей рассматриваются в работах [68, 109, 175, 182, 260, 362, 402]. Приложения, в которых используются оттенки серого цвета, изучаются в работе [67]. Другие рассуждения, связанные с атрибутами и параметрами состояния, можно найти в публикациях [8, 122, 151, 176, 244].

Примеры программ с использованием функций атрибутов OpenGL приведены в книге [400].

Полный перечень функций атрибутов OpenGL можно найти в справочнике [320], а атрибуты символов библиотеки GLUT обсуждаются в книге [174].

УПРАЖНЕНИЯ

4.1. Воспользуйтесь функцией glutSetColor и составьте цветовую таблицу из набора входных цветовых значений.

4.2. С помощью цветового массива и массива вершин составьте описание сцены, содержащей по меньшей мере шесть двухмерных объектов.

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

4.4. С помощью цветового массива и массива вершин составьте описание сцены, содержащей по меньшей мере четыре трехмерных объекта.

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


⇐ вернуться назад | | далее ⇒