- •Алгоритмы компьютерной графики
- •1 . Генерация векторов
- •1.1. Цифровой дифференциальный анализатор (цда)
- •1.2. Алгоритм Брезенхема
- •З адание на лабораторную работу № 1 "Генерация векторов"
- •2. Фильтрация. М одифицированный алгоритм Брезенхема
- •2 .1. Модифицированный алгоритм Брезенхема
- •2.2. Улучшение качества изображения фильтрацией
- •З адание на лабораторную работу № 2 "Фильтрация. Модифицированный алгоритм Брезенхема "
- •3 . Алгоритмы генерации окружности
- •3.1. Целочисленный алгоритм Брезенхема
- •3.2. Алгоритм Мичнера для построения окружности
- •З адание на лабораторную работу № 3 "Алгоритмы генерации окружности"
- •4. Алгоритмы построчного заполнения м ногоугольников
- •З адание на лабораторную работу № 4 "Алгоритмы построчного заполнения многоугольников"
- •5. Заливка области с затравкой
- •5 .1. Заливка области с затравкой
- •5.2. Простой алгоритм заливки
- •5.3 Построчный алгоритм заливки с затравкой
- •З адание на лабораторную работу № 5 "Заливка области с затравкой "
- •6 . Алгоритмы отсечения отрезков
- •6.1. Двумерный алгоритм Коэна-Сазерленда
- •6.2. Двумерный fc-алгоритм
- •6.3. Алгоритм Кируса-Бека
- •6.3.1. Определение факта выпуклости многоугольника
- •6.3.2. Вычисление уравнения внутренней нормали
- •З адание на лабораторную работу № 6 "Алгоритмы отсечения отрезков"
- •7 . Алгоритмы отсечения многоугольников
- •7.1 Алгоритм Сазерленда-Ходжмена
- •7.2. Алгоритм отсечения многоугольников Вейлера-Азертона
- •З адание на лабораторную работу № 7 "Алгоритмы отсечения многоугольников"
- •Заключение
- •Оглавление
З адание на лабораторную работу № 7 "Алгоритмы отсечения многоугольников"
Построить отсекаемый многоугольник (цвет 1).
Построить отсекающий многоугольник (цвет 2).
Выделить цветом область отсечения (цвет 3).
Повторить для всех вариантов расположения многоугольников:
отсекаемый многоугольник вне отсекающего многоугольника;
отсекаемый многоугольник внутри отсекающего многоугольника;
отсекаемый многоугольник пересекает отсекающий многоугольник и т.д. (в том числе различные варианты пересечения отверстий).
Сравните два алгоритма. Отметьте преимущества и недостатки.
Заключение
В данном учебном пособии были рассмотрены основные алгоритмы компьютерной графики, без которых было бы невозможно написание таких программ как WinWord, CorelDraw и Acrobat Reader.
Список используемой литературы очень обширен, а конкретная реализация алгоритма зависит только от квалификации программиста, но приведем основные источники, которыми пользовались авторы при написании данного пособия:
Роджерс Д. Алгоритмические основы машинной графики: Пер. с англ.: М.: Мир, 1989.
Вельтмандер П.В. Алгоритмы компьютерной графики: http://ermak.cs.nstu.ru/kg_rivs
D. Hearn, P. Baker, Computer Graphics: Prentice Hall, Inc., Englewood Cliffs, New Jersey, 1994.
Оглавление
Стр.
1. Генерация векторов 4
1.1. Цифровой дифференциальный анализатор (ЦДА) 5
1.2. Алгоритм Брезенхема 6
Задание на лабораторную работу № 1 "Генерация векторов" 9
2. Фильтрация. Модифицированный алгоритм Брезенхема 10
2.1. Модифицированный алгоритм Брезенхема 10
2.2. Улучшение качества изображения фильтрацией 12
Задание на лабораторную работу № 2 "Фильтрация. Модифицированный алгоритм Брезенхема " 13
3. алгоритмы генерации окружности 14
3.1. Целочисленный алгоритм Брезенхема 14
3.2. Алгоритм Мичнера для построения окружности 17
Задание на лабораторную работу № 3 "Алгоритмы генерации окружности" 18
4. Алгоритмы построчного заполнения многоугольников 19
Задание на лабораторную работу № 4 "Алгоритмы построчного заполнения многоугольников" 21
5. Заливка области с затравкой 23
5.1. Заливка области с затравкой 23
5.2. Простой алгоритм заливки 24
5.3 Построчный алгоритм заливки с затравкой 25
Задание на лабораторную работу № 5 "Заливка области с затравкой " 26
6. Алгоритмы отсечения отрезков 27
6.1. Двумерный алгоритм Коэна-Сазерленда 27
6.2. Двумерный FC-алгоритм 28
6.3. Алгоритм Кируса-Бека 30
6.3.1. Определение факта выпуклости многоугольника 34
6.3.2. Вычисление уравнения внутренней нормали 34
Задание на лабораторную работу № 6 "Алгоритмы отсечения отрезков" 37
7. Алгоритмы отсечения многоугольников 38
7.1 Алгоритм Сазерленда-Ходжмена 38
7.2. Алгоритм отсечения многоугольников Вейлера-Азертона 41
Задание на лабораторную работу № 7 "Алгоритмы отсечения многоугольников" 47
Заключение 48
оглавление 49