Пред.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 След.
Макеты страниц
Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO
5.3. СОКРАЩЕНИЕ ВРЕМЕНИ СИНТЕЗА ИЗОБРАЖЕНИЙСуществует два принципиальных направления сокращения времени синтеза изображений: устранение заведомо лишних вычислений и распараллеливание вычислений. Потребность в ускорении процесса синтеза связана с тем, что высококачественные и сложные изображения формируются на однопроцессорных машинах за десятки минут, что выходит за рамки даже самых скромных потребительских требований.
5.3.1. МЕТОД ОБОЛОЧЕКМетод оболочек получил широкое распространение в системах трехмерной машинной графики как для однопроцессорных, так и многопроцессорных машин. Свое название он получил от использования простых по конструкции трехмерных выпуклых фигур-оболочек, которые охватывают объект или его составные части и позволяют сравнительно просто выявлять часть пространства, где находится объект. Известно несколько модификаций метода, например в [145] показано его применение на этапе определения видимости. Оболочки-многоугольники.
Сущность метода, реализующего сокращение времени вычислений изображений с
тенями [21], заключается в следующем. На этапе создания математической
конструкции объекта каждый его отдельный элемент (примитив или система
примитивов) окружается интерактивно или автоматически [64,127] воображаемой
оболочкой – выпуклым многогранником. Число вершин
где
При
автоматическом построении выпуклой оболочки в качестве формы последней чаще
всего выбирают параллелепипед [60]. Основная идея определения положения и
размеров параллелепипеда заключается в вычислении максимальных габаритных
размеров охватывающего примитива вдоль осей Координаты
полученных точек и составляют матрицу
где
Множество
всех пересечений записывают в матрицу
где
Заметим,
что выпуклая трехмерная оболочка, построенная на точках матрицы
Рис. 5.3.1. Объект, его собственная и теневая оболочки (а), изображение объекта и его оболочек на экране (б) Спроецируем
точки матрицы Полученные
значения координат изображения точек из матрицы
где
Так
как теневая трехмерная оболочка На
этапе построения самого изображения, прежде чем производить трассирование луча
из каждого рецептора, последний оценивается на принадлежность внутренней
области оболочек Если
рецептор находится снаружи оболочки Использование описанного подхода для иерархии примитивов избавляет от слепого поиска и анализа точек пересечения трассирующего луча с заведомо невидимыми примитивами и комбинациями примитивов и сокращает время вычислений в несколько раз. При этом эффект от использования оболочек становится тем ощутимее, чем больше примитивов в составе объекта и сложнее их конструкция. Заметим,
что при вычислении матрицы
где
Эллиптические оболочки. Кроме многогранников и параллелепипедов в качестве оболочек можно применить эллипсоиды. Замечательным свойством эллипсоида среди всех поверхностей второго порядка является замкнутость поверхности, и поэтому эллипсоид может быть использован как оболочка, охватывающая объект. Изменением размера и ориентации полуосей можно достаточно плотно охватить тело практически любой конфигурации. Уиттед [149] впервые отметил применимость таких оболочек для сокращения вычислительных затрат при трассировании лучей. Для других методов синтеза эллиптическую форму оболочек применять нецелесообразно из-за необходимости поточечного или полигонального представления эллипсоида, что значительно сложнее, чем описание многогранника. Основная
идея предлагаемого подхода заключается в следующем. На этапе конструирования
объекта отдельные его части или весь объект окружают воображаемыми оболочками –
эллипсоидами. Определить видимость или затененность от эллипсоида гораздо
быстрее, чем для сложного, композиционного объекта или пространственно
комбинирующихся примитивов. Тогда устанавливают тс рецепторы, которые
"видят" эллипсоид и тень от него и все дальнейшие вычисления по
наблюдению самого объекта ведут только для этих, так называемых рабочих
рецепторов. Отношение общего числа рецепторов к числу рабочих приближенно
показывает, во сколько раз сократились вычислительные затраты. Приближенность
(оценки) связана с неплотностью прилегания оболочки к телу объекта. Рецепторы,
которые "видят" промежуток между оболочкой и объектом, определяют
некоторую часть ненужных вычислений, на которую уменьшается теоретический
коэффициент сокращения Пусть
некоторый геометрически сложный объект
где
Нетрудно показать из решения квадратного уравнения, к которому сводится данная система, что действительные решения существуют при условии
где
В другой форме это условие можно представить в виде[39]
где
Заметим,
что с вычислительной точки зрения эффективно провести проверку условия (5.3.2)
в два этапа. Сначала следует вычислить только значение Проверка условий (5.3.1), (5.3.2) является простой операцией для процессора, что обеспечивает быстрый отбор всех рецепторов, которые "видят" оболочку. Только для этих рецепторов следует вести дальнейшие вычисления по определению видимости самого тела объекта, что чувствительно сокращает вычисления. Как
и оболочки других форм, эллиптические оболочки могут составлять структуру с
несколькими уровнями вложения. На рис. 5.3.2,а показана башня, оболочкой
которой является
Рис. 5.3.2. Эллиптические оболочки (а) и их изображение (б) Оболочки-параллелепипеды. Такая оболочка определяет габаритные размеры примитива или семейства примитивов вдоль координатных осей. Каждый примитив представляется как бы погруженным в ящик, стенки которого параллельны координатным плоскостям. Пусть
примитивы и их оболочки заданы (пересчитаны) в экранной системе координат. Как
и раннее, ось При
ортографической проекции легко установить (см.[9]) признак необходимости
обработки очередным
Рис. 5.3.3. Построение оболочек-параллелепипедов Этот алгоритм может быть легко трансформирован для случая центральной проекции. Положение
граней параллелепипеда может быть определено аналитически как положение
касательных плоскостей, параллельных Покажем
на примере поверхностей второго порядка правила определения габаритных точек
примитивов. Под габаритными точками будем понимать точки касания поверхности
второго порядка с касательными плоскостями, параллельными Таким образом обеспечивается автоматическое построение параллелепипедных оболочек вокруг поверхностей второго порядка. В общем случае только эллипсоид имеет две габаритные точки в каждом направлении, поверхности другого вида простираются в бесконечность, поэтому их оболочка может быть представлена как полупространство.
|
1 |
Оглавление
|