Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
графика.docx
Скачиваний:
3
Добавлен:
26.08.2019
Размер:
40.28 Кб
Скачать

Тема 6: Физические принципы формирования оттенка.

В компьютерной графики имеются 2 вида световых объекта:

1)излучающие

2)несамосветящиеся объекты (отражают, преломляют падающий свет)

Аддитивное формирование оттенка объекта. – самосветящиеся RGB

Сутрактивное – несамосвтящиеся. Вычитание из падающенго света определ длин волн CMY

Цветовая модель позволяет описать необходимый оттенок и необходима для интерполяции.

В КГ чаще всего используются след модели:

1)RGB – аппаратно-ориентированная модель, используемая в ГР для аддитивного формирования2 оттенка самосветящихся объектов. Куб с началом отсчета с центром в системе координат. 00 00 00 – черный, ff ff ff – белый

2)CMY - аппаратно-ориентированная модель, используемая в ГР для субстрактивного формирования оттенка несамосветящихся объектов. Это дополнительные цвета к RGB. Куб с началом отсчета в точке RGB с максимальными значениями. 00 00 00 – белый. При векторном представлении единичный вектор –

3)YIQ - аппаратно-ориентированная модель, используемая в ТВ для сокращения передаваемой полосы частот за счет использования психофизиологических особенностей зрения.

4)HSV – цветовой тон, насыщенность, количество света. Ориентирована на человеческое восприятие и обеспечивающая возможность явного задания требуемого оттенка света. Пространства, определяемое данной схемой – перевернутый шестиугольный конус. Вертикальная ось – светлота(V [0//вершина,1//основание]) . Цветовой тон отсчитывается по контуру конуса(0 – красный, 60 – желтый, 180 – голубой, 240 – синий, 300 – пурпурный, 360 - красный). Насыщенность – определяет насколько оттенок близок к правильному ([0//ось,1//грань]).

5)HLS – цветовой тон, светлота, насыщенность. Ориентирована на человека и настроена на явное задание оттенка. Двойной конус. Черный цвет- вершина нижнего конуса, L=1. Белый свет – вершина верхнего конуса, L=0. Максимальные интенсивные цветовые тона соответствуют основания конусов L =0,5 . H соответствует углу поворота. S задается расстоянием от вертикальной оси до боковой поверхности конуса. Максимальная насыщенность на пересечении вершин конусов.

Тема. Задание цветов для графических устройств.

Используются чаще всего растровые дисплеи, которые используют аппаратно-ориентированную модель цветов RGB. Растровые дисплеи могут быть с таблицей цветности, в которой значение цвета пикселя, заносимого в память, представляет собой индекс в ТЦ. При необходимости отображения пикселя на экране в зависимости от его оттенка выбирается элемент таблицы цветности, содержащий тройку значений RGB.Она передается из видеопамяти на монитор для задания цвета пикселя. (хранится индекс из таблицы цветности)

Для полноценных дисплеев для каждого пикселя в память заносится трока значений RGB. Хранится сама тройка значений.

В модели RGB легко задавать яркость для одного из основных цветов, но затруднительно задавать оттенок с требуемым цветовым тоном и насыщенностью. В ГР для облегчения выбора цветового тона и насыщенности используется палитры цветов. Также используется модели HSV и HSL, которые позволяют непосредственно задать оттенок. Используется иногда интерполяция цветов// для создания эффектов реалистичности изображения.

В ГР интерполяция цветов используется при наложении цветов в технике акварели + при создании эффектов постепенного изменения цвета + построчном заполнении прямоугольников методом Гура.

Если требуется интерполировать между 2 оттенками с одинаковым тоном/насыщенностью, используются HSV/HSL. Основной характеристикой отображающих устройств является пространственное разрешение, которая определяется 1)размером растра; 2)возможностями размещения растра/пятна. Обычно растр/пятно представляет собой определенную область с убыванием интенсивности цвета от центра к краям. Для улучшения качества изображения используется пересечение растров/пятен. Если оно ниже уровня 0,6 от максимальной интенсивности, то растры/пятна различимы. Если выше, то нет. Для повышения качества изображения также используется форма пятна, или распределение яркости по пятну, или адресное разрешение//точность, с которой может задаваться позиция растра/пятна; как правило, больше ил равно пространственному//.

Тема. Генерация векторов.

Назначение генерации векторов – это соединение двух точек изображения отрезком прямой. В ГР чаще используются 4 алгоритма генерации векторов. Два алгоритма ЦДА (цифрового дифференциального анализатора): обычный и несимметричный; алгоритм Брезенхема для генерации векторов; алгоритм Брезенхема для генерации ребер заполненного многоугольника с уменьшением ступенчатости.

Для реализации алгоритма необходимо учитывать общие требования к изображению отрезка:

1)Концы отрезка должны находиться в заданных точках.

2)Отрезки должны выглядеть прямыми.

3)Яркость вдоль отрезка должна быть постоянной и не зависеть от длины и наклона оного.

Ни одно из этих условий не может быть выполнено на растровых устройствах, т.к. концы отрезков могут находиться только на пикселях (целое значение), отрезок аппроксимируется набором пикселей и он может прямым, только если он горизонтальный/вертикальный/под углом 45 в остальных случаях появляется ступенчатость. Яркость для различных отрезков не может быть постоянной. Перечисленные алгоритмы используются для уменьшения отклонений от указанных требований.

ЦДА

Основная задача ЦДА – решение дифференциального уравнения отрезка.

Py, Px – приращения отрезков по Y/X.

От конечного вычитается начальное.

ЦДА формирует дискретную аппроксимацию непрерывного решения данного дифура. Для обычного ЦДА, который чаще используется в векторных устройствах, определяется количество промежуточных точек/узлов. Они используются для аппроксимации кривой. Затем за N циклов вычисляются координаты очередных узлов.

Xi+1 = Xi + Px/N; Yi+1 = Yi + Py/N

Xi & Yi преобразуются в целочисленные значения, который указывают координаты след узла/ путем округления/отбрасывания дробной части.

Недостатки: точки могут прописываться несколько раз, что увеличивает время построения. Также используется операция деления при определении координат. Нельзя выбрать ведущую координату.

Несимметричный ЦДА

Использует ведущую/относительную координату и единичный шаг по относительной координате. Для выбора относительной координаты сравниваются приращения по оси Х и У.

Px > Py : X – ведущая ось; Px < Py : Y - ведущая ось

При выборе следующего узла координата X изменяется на 1 Px раз, а координата Y изменяется столько же, но по формуле Yi+1 = Py/Px .

Если ведущей является Y, то Yi будет меняться на 1, а Xi+1 = Px/Py/

Недостаток этого алгоритма – кол-во узлов аппроксимации должен быть достаточно большим и зачастую равен числу пикселей вдоль наибольшего приращения.

Достоинства – упрощение математических вычислений и исключается повторный расчет точек.

Этапы алгоритма

1)Вычисление приращений координат

2)Определение ведущей координаты

3)открывается цикл по ведущее координате от нач до кон значений

В нем определяются промежуточные координаты : по ведущей координате с добавлением единицы к текущей.

4)рисуется очередной узел и соединяется с предыдущим

Алгоритм Брезенхема

Не требует операции деления, но при этом обеспечивает минимальное отклонение сгенерированного образца от истинного отрезка

Если угловой коэффициент прямой меньше ½ , то следующая точка не меняет своих координат по ведущей оси, а по неведущей меняется на у.е. В ином случае, обе координаты меняют свое значение на у.е.

Используется величина отклонения точной позиции от середины между двумя возможными растровыми точками в направлении наименьшей относительной координаты. Если коэффициент отклонения меньше 0, то значение по y округляются до наименьшего целочисленного, в противном случае увеличивается на 1. Величина отклонения рассчитывается для каждого узла.

E1 = Py/Px - ½

Для последующих узлов величина отклонеия вычисляется след образом

En+1 = En + Py/Px

Py/Px < 0 : Xi+1 = Xi + 1; Yi+1 = Yi + 1

Py/Px > 0 : Xi+1 = Xi + 1; Yi+1 = Yi

///Пример для ведущего Y;

1)Выбираются начальные значения

2)Определение приращения

//иногда упрощают определение величины E, но при этом снижается качество отображения граней объекта. Вычисляется слуд образом : E = Py*2 – Px // для ведущего Y

3)рисуется первоначальная точка

4)открывается цикл и определяется, что если E больше или равна 0, то к обеим координатам по 1 и определяется величина отклонения для следующей точки. Ei+1 = Ei + 2(Py - Px) // Y leads

Если E < 0 , то 1 добавляется только к неведущей координате. И определяется приращение для текущее координаты.

5)рисуется текущая точка и соединяется с предыдущей.

Алгоритм используется в тех случаях, когда можно выбрать в зависимости от наклона ведущую ось.

Достоинства – упрощаются математические вычисления для определения координат, а в некоторых случаях уходит операция деления. Точки не прорисовываются многократно.

Недостаток – алгоритм за счет дополнительных вычислений и проверок становится более громоздким.

В некоторых ГР данный алгоритм используется в матричной форме.

Тема: Модели расчета освещенности граней 3D объекта.

В компьютерной графике основной характеристикой света является яркость.

Но т.к. она является субъективным понятием, основанным на восприятии человека, то для численных расчетов применяется термин «интенсивность» и рассматривается как яркость и является энергетической характеристикой световой волны. В большинстве ГР интенсивность принимает значение от 0 до 1. Равно 0 при полном отсутствии света, 1 при максимальной яркости.

В КГ для расчета освещенности граней трехмерных объектов используется трехкомпонентная цветовая модель RGB. Интенсивность отраженного света вычисляется отдельно для каждой из цветовых компонент. Затем объединяют в результирующий цвет.

При расчете используют следующие типы освещения и отражения:

1)рассеянное

2)диффузное

3)зеркальное

Освещение граней рассчитывается для каждого типа в отдельности, но если присутствуют несколько типов, то определяется результирующая интенсивность. Рассмотрим интенсивность для всех трех типов отражения.

1)Рассеянное освещение и отражение

Интенсивность считается постоянной в любой точке пространства. Она обусловлена множественными отражениями от всех объектов в пространстве. При освещении объекта рассеянным светом, интенсивность отраженного света определяется по формуле

Ia = Ip * ka, где Ia – интенсивность отраженного света. Ip – интенсивность падающего света. Ka – коэффициент рассеяния, Ka = [0,1].

Чем более матовый материал тем ближе к 0. Зеркальный же ближе к 1.

Аттестация – 2 задачи //график и примитив с преобразованием // + теория//логика