Здавалка
Главная | Обратная связь

Побудова графіка функції за алгоритмом Брезенхема



Мета роботи

Навчитися будувати за алгоритмом Брезенхема графіки функцій, заданих рівняннями в параметричному вигляді та рівняннями у полярних координатах.

Завдання

Побудувати графіки для 2-х функцій за номером варіанта двома способами:

· за допомогою стандартних вбудованих операторів мови програмування для побудови відрізків прямих, які найкраще аппроксимують криву графіка.

· за допомогою ламаної лінії, кожний відрізок якої будувати за алгоритмом Брезенхема. Створити власну функцію або процедуру побудови відрізка лінії за алгоритмом Брезенхема.

Вимоги до програми

Тестові значення кроку зміни аргументу t або j, параметрів функцій (а, b та ін.) вибираються студентом самостійно і описуються в програмі як початкові значення, що використовуються для побудови графіків відразу після запуску програми.

Програма повинна:

a) дозволяти користувачеві вибирати за допомогою меню функцію та спосіб побудови графіка (з використанням стандартної команди Line або за алгоритмом Брезенхема);

b) виводити на екран координатні осі та оцифровану сітку (з точністю до округлених значень типу цілих, десятків тощо), а також підписи по осях абсцис та ординат;

c) надавати можливість користувачеві змінювати параметри та крок побудови графіків, колір та товщину ліній графіка;

d) виконувати автоматичне масштабування побудови графіка при різних змінах значень параметрів.

Варіанти завдань

1) Криві, задані рівняннями у параметричному вигляді

Назва кривої Рівняння кривої
1. Строфоїда ; ; a > 0; ; j Î (0; 2p)
2. Циклоїда ; a, b > 0; t Î (0; 2p)
3. Трохоїда ; a, b > 0; t Î (0; 2p)
4. Декартовий лист ; ; a > 0; ; j Î (0; 2p)
5. n-пелюсткова ромашка a > 0; t Î (0; p)
6. Равлик Паскаля (кардіоїда) a, b > 0; t Î (0; 2p)
7. Циссоїда ; ; a > 0; ; j Î (0; 2p)
8. Астроїда ; ; a > 0; t Î (0; 2p)
9. Конхоїда Нікомеда ; ; > 0; t Î (0; 2p)
10. Епіциклоїда ; ; a, b > 0; t Î (0; 2p)
11. Евольвента круга ; ; a>0; t Î (0; 2p)
12. Гіпоциклоїда ; ; a, a1, b > 0; t Î (0; 2p)
13. Трактриса ; ; a > 0; t Î (0; p); t Î (p; 2p)
14. Трисектриса a > 0; t Î (0; 2p)

 

2) Криві, задані рівняннями у полярних координатах

(r, j – полярні координати; а, , с – параметри кривих)

Назва кривої Рівняння кривої
1. Крива Каппа
2. Жезл
3. Лемніската Бернуллі
4. Трисектриса Маклорена
5. Кохлеоіда
6. Овал Кассіні
7. Петельне зчеплення
8. Математичні рози ; a – радіус рози; n – кількість пелюсток рози
9. Спіраль Архімеда
10. Спіраль Галілея
11. Спіраль Ферма
12. Гіперболічна спіраль
13. Спіраль
14. Параболічна спіраль
15. Логарифмічна спіраль
16. Лемніската Бернуллі ; j Î (-p/4; p/4); j Î (-3p/4; 5p/4)
17. Декартовий лист
18. Равлик Паскаля (кардіоїда)

Контрольні питання

1. Який вид має рівняння функції у параметричному вигляді та у полярних координатах?

2. Як перетворити рівняння у полярних координатах до рівняння у параметричному вигляді та навпаки?

3. Як виконати масштабування при побудові графічних об’єктів?

Література

1. Культин Н.Б. Программирование в Turbo Pascal 7.0 и в Delphi. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2001. – 416 c. – С. 226-232.

2. Порєв В.М. Комп’ютерна графіка. – К.: “Корнійчук”, 2000. – С. 41-49.

Шикин Е.В., Боресков А.В. Компьютерная графика. Полигональные модели. – М.: ДИАЛОГ-МИФИ, 2001. – 464 c. – С. 157-161.

3. Роджерс Д. Алгоритмические основы машинной графики: Пер. с англ. – М.: Мир, 1989. – 512 с. – С. 54-60.

 

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.