Трехмерная компьютерная графикаРефераты >> Программирование и компьютеры >> Трехмерная компьютерная графика
Д. Рот указал, что алгоритм трассировки лучей можно использовать также и для создания каркасных чертежей сплошных тел. При этом предполагается, что лучи порождаются в том порядке, в каком происходит сканирование экрана, т. е. сверху вниз и слева направо. Получающаяся процедура такова:
Если видимая поверхность для Пиксел(x, y) соответствует фону или отличается от видимой поверхности для Пиксел(x – 1 , y) или для Пиксел(x, y – 1), то изобразить этот пиксел. В противном случае пиксел не изображать.
Алгоритм трассировки лучей можно использовать, кроме того, для определения физических свойств сплошного тела. Полное рассмотрение этого вопроса не входит в эту работу. Однако для иллюстрации этого подхода приведем один пример. В частности, объем любого сплошного тела можно определить, аппроксимируя его суммой маленьких прямоугольных параллелепипедов. Это можно проделать, породив множество параллельных лучей, расположенных на определенных расстояниях друг от друга. Точки пересечения каждого луча с заданным объемом вычисляются и упорядочиваются вдоль направления этого луча. Если подвергнуть луч переносу, совмещающему его с осью z, как это было описано выше, то объем каждого прямоугольного параллелепипеда будет равен:
где lx и ly – расстояние между лучами по горизонтали и вертикали соответственно. Каждое слагаемое (zi-1 – zi) представляет собой участок луча, лежащий внутри заданного тела. Объем тела, следовательно, равен сумме объемов всех таких прямоугольных параллелепипедов. Точность результатов зависит от числа использованных лучей. Точность можно повысить, умеренно увеличив объем вычислений и рекурсивно уменьшив размер «пиксела», в том случае, если объемы смежных прямоугольных параллелепипедов различаются более чем на заранее заданную величину. При таком подходе точнее определяются объемы тех элементов тела, где имеют место быстрые изменения, например в окрестностях ребер тел, ограниченных криволинейными поверхностями.
Ввиду внутренне присущей алгоритму трассировки лучей параллельности вычислений (здесь все лучи обрабатываются одинаково и независимо друг от друга) его можно реализовать аппаратно на основе интегральных схем с использованием методов параллельной обработки.
Резюме
В этой работе детально обсуждалось несколько основных алгоритмов, используемых для решения задачи удаления невидимых линий или поверхностей. Однако это далеко не все, что имеется. Кроме выше сказанного можно назвать алгоритм удаления невидимых линий предложенный Хеджли, который основан на использовании списка приоритетов, разбиения и построчного сканирования. Этот алгоритм работает в пространстве объекта, получает на входе выпуклые или невыпуклые многоугольники, а оценка его эффективности линейно зависит от числа объектов.
Другим примером является предложенный Азертоном интервальный алгоритм построчного сканирования, который используется для визуализации сцен, получающихся в системе конструктивного моделирования сплошных тел. Внутренний цикл этого алгоритма изменен так, чтобы можно было реализовать одномерные теоретико-множественные операции, необходимые для моделирующей системы, которая пользуется алгоритмом трассировки лучей. Азертон указывает, что этот интервальный алгоритм построчного сканирования требует примерно в 60 раз меньше времени, чем обычный алгоритм трассировки лучей.
В заключении хочу сказать, что компьютерная графика не стоит на месте. Уже давно существуют многочисленные программные и аппаратные реализации алгоритмов построения изображения. На рынке достаточно широко представлены всевозможные графические акселераторы и массивы быстрой памяти. Ведущие производители электронных компонентов поддерживают обработку изображения на уровне процессорной техники (MMX – Intel, 3D Now – AMD), следовательно, становится возможным реализация «медленных», но дающих лучшее качество изображения алгоритмов. Отдельно следует отметить такое явления, как виртуальная реальность, которая уже в настоящее время получает широкое распространение. Одним словом, компьютерная графика будет развиваться до тех пор – пока будет развиваться и совершенствоваться компьютерная техника.
Литература:
I. Д. Роджерс «Алгоритмические основы машинной графики»
Москва «Мир» 1989
II. Е. В. Шикин, А. В. Боресков, А. А. Зайцев
«Начала компьютерной графики»
Москва «Диалог - МИФИ» 1993