Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КГ Лаб 02 Побудова дротяних зображень.doc
Скачиваний:
5
Добавлен:
14.02.2015
Размер:
227.33 Кб
Скачать

Розв’язок

Спершу сформуємо числове значення шаблона для формування штрихпунктирних ліній:

Номер розряду

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

Значення біта

1

1

1

1

1

1

1

1

1

1

0

0

1

1

0

0

Вигляд лінії

Шістандцяткове число

F

F

C

C

Таким чином двійкове значення шаблона для штрихпунктирних лінійb1111111111001100, що відповідає $FFCC.Текст фрагмента процедури, що формує наведене на рис. 2.2 зображення подано нижче:

// Включення режиму згладжування та режиму управління шаблонами

glEnable(GL_LINE_SMOOTH);

glEnable(GL_LINE_STIPPLE);

// Виведення на екран трикутника

glColor3d(1,0,0); // Червоний колір переднього плану

glLineStipple(2,$FFFF); // Встановлення шаблону – суцільної лінії

glLineWidth(3); // Товщина лінії 3 піксела

glBegin(GL_LINE_LOOP); // Трикутник – замкнена ламана лінія

glVertex2d(0,1); // Перша вершина

glVertex2d(cos(-pi/6),sin(-pi/6)); // Друга вершина

glVertex2d(cos(-5*pi/6),sin(-5*pi/6)); // Третя вершина

glEnd;

// Виведення на екран кола

glColor3d(0,0,1); // Синій колір переднього плану

glLineStipple(2,$FFCC); // Встановлення шаблону штрихпунктир

glLineWidth(1); // Товщина лінії 1 піксель

glBegin(GL_LINE_LOOP); // Коло – замкнена ламана лінія

Fi:=0; // Початкове значення кута у полярної системі координат

while Fi<=2*pi do

begin

glVertex2d(cos(Fi),sin(fi)); // Вершина

Fi:=Fi+pi/100; // Приріст кута

end;

glEnd;

Результат роботи даної програми показано на рис. 2.3.

Рис. 2.3. Результат роботи програми

Слід пам’ятати, що всі змінні, які застосовуються в розглянутих прикладах необхідно попередньо оголошувати. Наприклад в останньому прикладі слід попередньо оголосити змінну Fi типу single.

Завдання на лабораторну роботу

З застосуванням графічної бібліотеки Open GL розробити програму, що виводить на екран графік функції на проміжку -1.0 ≤ x ≤ 1.0 згідно варіанта. Графік повинен виводитися в окремому вікні, на графікуслід показати координатні осі зі стрілками та сітку (вся область виводу графікаповинна бути розділена на десять клітин по осях абсцис та ординат). Лініяграфіка функції повинна відрізнятися від координатних осей кольором та бути в2 рази товщею. Лінії сітки повинні відображатися пунктиром.

Варіанти завдань наведено в таблиці:

Функція

Функція

1

14

2

15

3

16

4

17

5

18

6

19

7

20

8

21

9

22

10

23

11

24

12

25

13

26

До звіту включити:

1. Конспективний виклад теоретичних відомостей, необхідних для виконання лабораторної роботи.

2. Текст проекту Object Pascal що формує зображення.

3. Графічне зображення графіка функції.

4. Висновки по роботі.

Вижол Ю.О.Комп’ютерна графіка