КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Изометрия и диметрия
В изометрической проекции координатные оси объекта отображаются на визуальную плоскость под углом 1200, а масштабные коэффициенты по всем трем осям одинаковы. Для диметрической проекции оси Y и X проецируются параллельно осям Y* и X* визуальной плоскости, а проекция оси Z совпадает с биссектрисой угла между осями Y* и X*. Причем коэффициент искажения по оси Z равен ½ (отношение длины проекции к длине отрезка). Таким образом, матрица изометрического проецирования Qи и матрица диметрического проецирования Qд имеют вид:
Перспективные проекции
Предположим, что центр проецирования лежит на оси Z в точке "с" (0,0,с) и плоскость проецирования совпадает с координатной плоскостью Y/X. Возьмем в пространстве произвольную точку и проведем через нее и точку "с" прямую.
где точка "с" называется точкой схода. В общем виде, когда оси координатной системы не параллельны визуальной плоскости, матрица QП содержит три точки схода (-a,0,0), (0,-b,0) и (0,0,-c) на осях X, Y и Z соответственно, т.е. всего может быть не более 3-х точек схода (по одной на каждой оси). В этом случае матрица QП имеет вид:
Работу глаза можно описать достаточно точно геометрически, однако зрительное восприятие не создается только глазом. Зрительное восприятие в большей степени создается мозгом. Он "расширяет", "сжимает" с различной интенсивностью разные фрагменты изображений, получаемых на сетчатке, и создает образ 3-х мерного пространства. Этот образ позволяет человеку оценивать расстояние до предметов, их высоту, глубину и т.п. Косоугольная проекция.
Матрица, описывающая косоугольное проецирования, имеет вид:
Применение матрицы QК приводит к сдвигу и последующему проецированию. Точки с координатой z переносятся в направлении Х на zLcosa и в направлении y на zLsina, и затем осуществляется ортографическое проецирование на плоскость z=0. Сдвиг сохраняет параллельность прямых, а также углы и расстояния в плоскостях, параллельных оси z=0. Для свободной проекции L=1, а угол b=45°. Для кабинетной проекции L=1/2, а b=arctg(2)=63,4°. Ортографическое проектирование есть частный случай косоугольного проецирования (L=0 и b=90°). . Рассмотренные матрицы преобразований не всегда позволяют получить полное представление о предмете. Поэтому в системах 3_х мерной графики нет необходимости фиксировать какие-либо конкретные виды проекций. Для наиболее полного представления о предмете чаще используют операции вращения предмета вокруг двух или трех осей. Например, матрица
осуществляет поворот на угол y относительно оси Y, на угол j - вокруг оси Х и выполняет проецирование вдоль оси Z. ЗАКРАШИВАНИЕ Одной из определяющих проблем на пути создания реалистических изображений является проблема закрашивания поверхностей, ограничивающих построенные объекты. Мы остановимся на описании некоторых простейших моделей, требующих сравнительно небольших вычислительных затрат. Световая энергия, падающая на поверхность от источника света, может быть поглощена, отражена и пропущена. Количество поглощенной, отраженной и пропущенной энергии зависит от длины световой волны. При этом цвет поверхности объекта определяется поглощаемыми длинами волн. Свойства отраженного света зависят от формы и направления источника света, а также от ориентации освещаемой поверхности и ее свойств. Свет, отраженный от объекта, может быть диффузным и зеркальным: диффузно отраженный свет рассеивается равномерно по всем направлениям, зеркальное отражение происходит от внешней поверхности объекта. Свет точечного источника отражается от идеального рассеивателя по закону косинусов Ламберта:
На объекты реальных сцен падает еще и рассеянный свет, соответствующий отражению света от других объектов. Поскольку точный расчет рассеянного освещения требует значительных вычислительных затрат, в компьютерной графике при вычислении интенсивности поступают так:
где Интенсивность света, естественно, зависит от расстояния
где Интенсивность зеркально отраженного света зависит от угла падения, длины волны и свойств вещества. Так как физические свойства зеркального отражения довольно сложны, то в простых моделях освещения обычно пользуются следующей эмпирической моделью (моделью Фонга):
где Объединяя последние две формулы, получаем модель освещения (функцию закраски), используемую для расчета интенсивности (или тона) точек поверхности объекта (или пикселов изображения):
Функцию закраски, используя единичные векторы внешней нормали
Замечание: Чтобы получить цветное изображение, необходимо найти функции закраски для каждого из трех основных цветов - красного, зеленого и синего. Поскольку цвет зеркально отраженного света определяется цветом падающего, то постоянная Если точечных источников света несколько, скажем m, то модель освещения определяется так
Вектор в вершине получаем путем усреднением нормалей граней:
Закраска методом Гуро
Обратимся к рис. 10, на котором изображена выпуклая четырехугольная грань. Предположим, что интенсивности в ее вершинах Пусть Будем считать, что интенсивность на отрезке
Для определения интенсивности в точках Тогда интенсивность в точках
где Метод Гуро обеспечивает непрерывное изменение интенсивности при переходе от одной грани к другой без разрывов и скачков. Еще одним преимуществом этого метода является его инкрементальный характер: грань рисуется в виде набора горизонтальных отрезков, причем так, что интенсивность последующего пиксела отрезка отличается от интенсивности предыдущего на постоянную величину для данного отрезка. Кроме того, при переходе от отрезка к отрезку значения интенсивности в его концах также изменяются линейно. Таким образом, процесс рисования грани слагается из следующих шагов: 1) проектирование вершин грани на экран и вычисление нормалей для каждой грани; 2) вычисление нормалей в вершинах граней как усреднение нормалей граней; 3) отыскание интенсивностей в вершинах согласно выбранной модели освещения; 4) определение координат концов очередного отрезка и значений интенсивности в них линейной интерполяцией; 5) рисование отрезка с линейным изменением интенсивности между его концами. Замечания: 1. При определении освещенности в вершине, естественно, встает вопрос о выборе нормали. Часто в качестве нормали в вершине выбирается нормированная сумма нормалей прилегающих граней
2. Дефекты изображения, возникающие при закраске Гуро, частично объясняются тем, что этот метод не обеспечивает гладкости изменения интенсивности. Закраска методом Фонга Как и описанный выше метод закраски Гуро, закраска Фонга при расчете интенсивности также опирается на интерполирование. Однако в отличие от метода Гуро здесь интерполируется не значение интенсивности по уже известным ее значениям в опорных точках, а значение вектора внешней нормали, которое затем используется для вычисления интенсивности пиксела. Поэтому закраска Фонга требует заметно большего объема вычислений. Правда, при этом и изображение получается более близким к реалистичному (в частности, при закраске Фонга зеркальные блики выглядят довольно правдоподобно). Метод Фонга заключается в построении для каждой точки вектора, играющего роль вектора внешней нормали, и использовании этого вектора для вычисления освещенности в рассматриваемой точке по формуле (5). При этом схема интерполяции, используемая при закраске Фонга, аналогична интерполяции в закраске Гуро. Для определения вектора "нормали"
а векторы внешних нормален в точках
Нормирование вектора Замечания: 1. Как и метод Гуро метод Фонга также в значительной степени носит инкрементальный характер. 2. Применяя метод Фонга, мы фактически строим на многогранной модели непрерывное поле единичных векторов, использование которого в качестве поля внешних нормалей обеспечивает гладкость получаемого изображения. 3. Ясно, что требования к качеству изображения напрямую связаны с точностью рассматриваемой модели и объемом соответствующих ей вычислений. Несомненным достоинством предложенных моделей закраски (Гуро и Фонга) является их сравнительная простота. Однако вследствие значительных упрощений получаемый результат не всегда оказывается удовлетворительным. Преодолевать этот барьер качества лучше всего путем использования более совершенных моделей и методов. Моделирование текстуры Для придания более естественного вила сцене желательно иметь возможность менять параметры поверхности (в простейшем случае - цвет) в зависимости от положения точки на ней. Ниже будут рассмотрены различные способы достижения этого. Существуют разные способы моделирования текстуры, но практически все они подразделяются на два основных класса: • проективные текстуры: • процедурные (сплошные - solid) текстуры. Представим себе, что необходимо задать определенную текстуру (например, мрамор) какому-либо объекту. Возможны два пути: 1. Взять изображение реальной мраморной поверхности и отобразить (спроектировать) его каким-либо образом на поверхность объекта. То есть перевести исходные трехмерные координаты точки в двумерные и использовать последние для индексации в изображение. 2. Построить некоторую функцию С(х, у, z), определяющую для каждой точки пространства (х, у, z) цвет таким образом, чтобы объект, цвет которого задается этой функцией, имел вид объекта, сделанного из мрамора. Первый путь соответствует проективным текстурам. Он наиболее прост, однако имеет целый ряд существенных недостатков: требует большого объема памяти для хранения используемых изображений, обладает сравнительно небольшой гибкостью и к тому же сопряжен с большими сложностями в подборе способа проектирования для объектов сложной формы. Поэтому в практических задачах, как правило, используется лишь небольшое количество стандартных вариантов проектирования: плоское (параллельное проектирование вдоль заданного направления), цилиндрическое и сферическое. Для параметрически заданных поверхностей часто в качестве проекции точки ( Второй путь не требует больших затрат памяти и одинаково хорошо работает с объектами любой (сколь угодно сложной) формы. Поскольку подобная функция обычно зависит от большого количества параметров, то, изменяя их, можно легко изменять параметры текстуры. Основным недостатком этого подхода является сложность подбора соответствующей функции.
Дата добавления: 2014-12-08; Просмотров: 3929; Нарушение авторских прав?; Мы поможем в написании вашей работы! |