
- •Предмет, цели и задачи компьютерной графики.
- •Исторические этапы развития компьютерной графики
- •Современные направления и виды компьютерной графики, типы изображений.
- •Устройства ввода
- •Мышь, трекбол, джойстик
- •Сенсорные панели
- •Устройства вывода (дисплеи), цветовые модели.
- •Системы координат в машинной графике.
- •Аффинные преобразования (перенос и масштабирование).
- •Аффинные преобразования (вращение).
- •Однородные координаты и матричное представление 2d-преобразований.
- •Матричное представление 3d-преобразований.
- •Проекции. Основные виды и их отличия.
- •Математический аппарат центральной перспективной проекции.
- •Проблема удаления невидимых линий и поверхностей. Обзор основных подходов и алгоритмов.
- •Удаление невидимых линий методом плавающего горизонта.
- •Алгоритм удаления невидимых поверхностей с использованием z-буфера.
- •Удаление невидимых линий на основе алгоритма Робертса.
- •Удаление невидимых поверхностей методом трассировки лучей.
- •Алгоритм удаления невидимых поверхностей Варнока.
- •Построчный алгоритм удаления невидимых поверхностей Уоткинса.
- •Алгоритмы списка приоритетов. Метод сортировки по глубине (Ньюэла – Ньюэла – Санча).
- •Алгоритм Вейлера – Азертона.
- •Алгоритм Галимберти – Монтанари.
- •Алгоритм генерации отрезков (симметричный цда).
- •Алгоритм генерации отрезков (простой цда).
- •Алгоритм Брезенхема для генерации отрезков.
- •Проблема растровой развертки окружностей.
- •Алгоритм Брезенхема для развертки окружностей.
- •Алгоритмы заливки областей на основе построчного сканирования.
- •Алгоритмы заливки областей на основе затравочного заполнения.
- •Основы фрактальной геометрии.
- •Алгоритмы отсечения. Постановка задачи.
- •Алгоритм отсечения Коэна-Сазерленда.
- •33.Синтез реалистических изображений. Расчет интенсивности при различных видах освещения.
- •Классификация источников освещения. Проблема расчета затухания интенсивности (радиальное, угловое).
- •Методы закраски Гуро и Фонга.
- •Моделирование глобального освещения методом трассировки лучей (прямая и обратная трассировки).
- •Распределенная трассировка лучей. Дефект алиайзинга и методы его устранения.
- •Методы оптимизации методов трассировки лучей. Основные характеристики и недостатки методов трассировки лучей.
- •Метод излучательности.
Системы координат в машинной графике.
Три вида систем координат:
Мировая (СКМ) – начало расположено в некоторой произвольной точке, местоположение этой точки впоследствии не меняется; длина осей стремится к бесконечности.
Система координат наблюдателя (СКН) – подразумевается, что мы переносим локальную точку отсчета туда, где стоит наблюдатель. Эта система определяется положение наблюдателя в пространстве и направление его взгляда; может перемещаться относительно мировой системы координат
Система координат объекта (СКО) – в ней заданы координаты точек объекта, причем для каждого объекта имеется своя СК.
Экранная(двухмерная)
Для того чтобы увидеть 3D-объект на экране, надо:
по тетради:
1) задать объект в мировой с.к.
2) задать видовую систему координат
3) проецирование из видовой системы координат в экранную
версия 09:
Преобразовать координаты объекта (заданные в СКО) в мировые координаты
Преобразовать полученные координаты объекта (в СКМ) в СКН
Спроецировать полученные координаты на проекционную плоскость в СКН
СК могут отличаться по геометрической аксиоматике, положенной в их основе:
а) Декартова СК (прямоугольная) – чисто математическая
б) Приборная СК двухмерная система, жестко привязанная к специфике работы прибора
в) Полярная – цилиндрическая, сферическая
г) Геодезическая СК – описывает положение точки на поверхностях различных семейств сфероидов, эллипсоидов
д) Неевклидовы СК – построены на иных геометриях
Аффинные преобразования (перенос и масштабирование).
Аффинные преобразования – это пространственные преобразования, имеющие следующие свойства:
n-мерный объект после преобразования всегда остается n-мерным
сохраняется свойство параллельности линий и плоскостей
сохраняются пропорции параллельных объектов
В
результате АП сохраняются отношения
между частями объекта (подобие). К
основным аффинным преобразованиям
относятся перенос, масштабирование,
отображение и вращение.
Перенос точки А в точку В:
АВ – вектор
переноса. Пусть R
– радиус-вектор, соответствующий вектору
переноса АВ. Тогда переходу из А в В
будет соответствовать векторная запись:
.
Масштабирование
– растяжение объекта вдоль выбранных
осей координат – применяется к каждой
точке объекта
.
Матрица масштабирования:
.
Аффинные преобразования (вращение).
Аффинные преобразования – это пространственные преобразования, имеющие следующие свойства:
n-мерный объект отображается в n-мерный объект
сохраняется свойство параллельности линий и плоскостей
сохраняются пропорции параллельных объектов
В результате АП сохраняются отношения между частями объекта (подобие). К основным аффинным преобразованиям относятся перенос, масштабирование, отображение и вращение.
Вращение:
Однородные координаты и матричное представление 2d-преобразований.
В случае выполнения
операций масштабирование-поворот в
любых комбинациях можно составить
результирующую матрицу, которая будет
получена путем композиции (произведения)
всех промежуточных матриц преобразования.
Это гораздо удобнее. Однако, получить
результирующую матрицу невозможно,
если в цепочке присутствует хотя бы
одна операция переноса. Аппарат однородных
координат позволяет строить результирующую
матрицу для всех трех преобразований.
Двумерный вектор
в
однородных координатах записывается
в виде
,
где
.
Число
называется масштабным множителем. Для
того чтобы из вектора, записанного в
однородных координатах получить вектор
в обычных координатах необходимо
разделить первые две координаты на
третью:
.
Точки двумерного пространства будут описываться трехэлементными вектор-строками, поэтому и матрицы преобразований, на которые будет умножаться вектор точки, будут иметь размеры 3х3. Запишем матричное преобразование операции переноса для однородных координат:
или
,
где
.
При последовательном
переносе точки
в
точку
и
затем в точку
компоненты
суммарного вектора переноса являются
суммами соответствующих компонент
последовательных векторов переноса.
Рассмотрим, каковы будут элементы
матрицы суммарного переноса. Пусть
,
.
Подставив первое уравнение во второе
получаем
.
Матричное произведение, т.е. суммарный
перенос равен произведению соответствующих
матриц переноса:
Запишем матричный
вид операции масштабирования:
.
- матрица масштабирования
Последовательные
масштабирования:
Для операции
поворота:
,
- матрица поворота.
Последовательность
поворотов:
Любая последовательность операций, включающая перенос, масштабирование и вращение, в однородных координатах может быть представлена одной матрицей, которая является произведением всех матриц данных операций.