
- •Задачи компьютерной графики и ее место среди других методов обработки информации
- •Основные направления компьютерной графики. Основные структурные элементы системы машинной графики
- •Виды данных, представленных в форме изображений
- •Класс 1: тоновые и цветные изображения
- •Класс 2: двухуровневые или представляемые в нескольких «цветах» изображения
- •Класс 3: непрерывные кривые и линии
- •Класс 4: точки или многоугольники
- •Виды данных, представленных в форме изображений Понятие изображения
- •Понятие о структуре изображения. Основные графические элементы (примитивы)
- •Графические элементы (примитивы).
- •Видимые и невидимые поверхности. Ограничения на сложность изображения
- •Ограничения на сложность изображения
- •Тесты глубины Тест 1.
- •Тест 2.
- •Тест 3. Проверка сканирующей прямой
- •Алгоритмы удаления невидимых поверхностей
- •Алгоритм сканирующей прямой Уоткинса
- •Алгоритм Робертса
- •Растровое представление геометрических объектов. Растровая развертка отрезка
- •Растровая развертка отрезка.
- •Растровая развертка сплошных областей. Закраска многоугольников
- •Закраска многоугольников.
- •Растровая развертка сплошных областей. Закраска ограниченной области
- •Алгоритмы отсечения отрезков Отсечение отрезков
- •Алгоритм Сазерленда-Коэна
- •Алгоритм средней точки
- •Алгоритм Кируса-Бека
- •Метод Гуро
- •Метод Фонга
- •Модели расчета освещенности граней трехмерных объектов
- •Методы трассировки лучей. Метод прямой трассировки лучей
- •Классический метод обратной трассировки лучей
- •Методы повышения качества изображения при обратной трассировке лучей Текстурные карты и свойства материалов. Работа с растровыми картами (bmp, png, jpeg)
- •Отображение шероховатости (bump-mapping)
- •Сглаживание (antialiasing)
- •Кубические сплайны
Графические элементы (примитивы).
Перечислим наиболее общие элементы графического изображения:
Точка. Представляется набором координат и цветом.
Примитив. Является либо графическим примитивом, либо символом. Примитив определяется координатной точкой и некоторыми другими характеристиками. Например, примитив окружность может иметь характеристики: координаты точки центра и радиус; примитив отрезок: координаты точки начала, координаты кочки конца или координаты точки начала, длина, угол направления; символ определяется кодом.
Элемент – упорядоченная совокупность примитивов, возможно различных типов. Например, элемент квадрат может быть представлен последовательностью четырех примитивов типа отрезок; элемент кольцо – последовательностью двух примитивов типа окружность и так далее.
Сегмент – совокупность несвязанных элементом. Характер связи элементов отображаются графом. Содержательно сегмент формирует часть изображения (блок) , например в некоторой области всего поля.
Структура – совокупность сегментов. Содержательно формирует все изображение из блоков.
Видимые и невидимые поверхности. Ограничения на сложность изображения
Система стандартных геометрических преобразований позволяет получить изображение заданного положения трехмерного объекта в плоскости экрана (картинной плоскости). Такое преобразование применяется ко всем точкам объекта, автоматически формируя видимые искажения в соответствии с типом выбранного проецирования на плоскость.
При центральном перспективном преобразовании точки р(х, у, z) в точку Р(Х, У) координаты определяются по формулам
где - (0, 0, z0) - положение точки
зрения. Часто для упрощения при
проецировании схожих объектов применяют
ортогональное проецирование, полагая
и
,
.Но
для окончательного формирования
изображения необходимо визуально
показать глубину трехмерного пространства
на плоскости.
При проецировании используются все точки изображения, т.е. объект считается прозрачным. Наиболее простой и распространенной считается каркасная модель, когда фрагмент некоторой поверхности изображается ограничивающими ее линиями.
Чтобы показать объект, следует сделать поверхности непрозрачными, т.е. удалить с изображения невидимые части ограничивающих линий.
Очевидно, что для двух поверхностей, которые накладываются друг на друга в направлении проецирования, ограничивающие линии могут оказаться невидимыми у поверхности, лежащей дальше от точки зрения.
Очевидно, что в наиболее общем случае возникает проблема разделения ограничивающих линий на видимые и невидимые отрезки.
В наиболее простом случае можно избежать дробления ограничивающих линий на отрезки видимости и невидимости. Если объект считается непрозрачным, то достаточно закрашивать его поверхности, начиная с самой удаленной от точки зрения, и меняя оттенок или фактуру закраски по мере приближения очередной поверхности к точке зрения. Тогда объемность изображения получится автоматически. Заметим, что в данном случае все равно необходимо провести так называемый тест глубины (ТГ) и отсортировать все поверхности объекта по степени их удаления от точки зрения. Очевидно, что в этом случае проводить много лишних вычислений для невидимых частей изображения. Уменьшение числа вычислений особенно важно при формировании сложного изображения и изображения в динамике.
Поэтому для непрозрачных тоновых объектов также устраняют невидимые линии и поверхности с целью экономии вычисления.
Однако устранение невидимых линий и поверхностей также требует вычислений. Поэтому для решения проблемы удаления невидимых частей изображения как правило применяются некоторые стандартные соглашения относительно сложности изображения и разработано большое число специальных алгоритмов.