Для рисования прямоугольника на плоскости можно воспользоваться командой glRectf. Это одна из версий команды glRect. Ее аргументом являются координаты двух точек — противоположных углов рисуемого прямоугольника. Посмотрите простой пример на построение прямоугольника с использованием этой команды. При использовании glRect необходимо помнить, что координата по оси Z в текущей системе координат для всех вершин равна нулю. Константа GL_QUADS задает примитив, когда перечисляемые вершины берутся по четыре и по ним строятся независимые четырехугольники. Следующий код — иллюстрация использования этого примитива: строятся два независимых четырехугольника
Примитив, задаваемый константой GL_QUAD_STRIP, состоит из связанных четырехугольников. Первый четырехугольник формируется из вершин номер один, два, три и четыре. Второй четырехугольник в качестве опорных берет вторую, третью, пятую и четвертую вершины. И так далее. Если в предыдущем примере поменять константу на GL_QUAD_STRIP то изображение в окне получится таким, как на рисунке Для рисования выпуклого многоугольника используется примитив GL_POLYGON. Многоугольник строится из связанных треугольников с общей вершиной, в качестве которой берется первая среди перечисляемых в командных скобках. Код для рисования шестиугольника может выглядеть так:
glBegin (GL_POLYGON); For i := 0 to 6 do begin glColor3f (random, random, random); glVertex2f (0.5 * cos (2 * Pi * i / 6), 0.5 * sin (2 * Pi * i / 6)); end; glEnd;
Обратите внимание, что в отличие от предыдущих реализаций этой задачи вершины шестиугольника последовательно соединяются не с центром окна, а с крайней правой вершиной, указанной самой первой. Для воспроизведения треугольников и четырехугольников лучше не использовать примитив GL_POLYGON, в таких случаях оптимальным будет использование примитивов, специально предназначенных для этих фигур.
Зарег. на сайте Всего: 25156 Новых за месяц: 3 Новых за неделю: 0 Новых вчера: 0 Новых сегодня: 0 Из них Администраторов: 1 Модераторов: 2 Проверенных: 1 Обычных юзеров: 25152
Все материалы размещенные на сайте пренадлежат их владельцам и предоставляются исключительно в ознакомительных целях. Администрация этого сайта не несет ответственность за использование материалов,ссылок и информации находящихся на этом сайте. !!! Все авторские права принадлежат только настоящим владельцам всех файлов которые публикуются на этом сайте!!!