Интерактивные графические системы
Категория реферата: Рефераты по информатике, программированию
Теги реферата: бесплатные рефераты и курсовые, quality assurance design patterns системный анализ
Добавил(а) на сайт: Нюхтилин.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 | Следующая страница реферата
( ( X1, Y1, Z1, ( П1 ( П2 ) ( П3 ) = -1
Таким образом точка 1 будучи ближайшей к источнику луча не является видимой, так как находится вне объекта.
Если ближайшая точка не находится на поверхности объекта ( см. пример
), она исключается из дальнейшего рассмотрения. Среди оставшихся точек
снова выделяются ближайшие и процесс продолжается до тех пор, пока либо не
исключатся все точки, либо не будет найдена точка, одновременно и
ближайшая, и принадлежащая объекту, так как матрицы WHO и Т перестраивались
синхронно, то номера поверхности и примитива для видимой точки
прочитываются из первой строки матрицы WHO.
Если объект и прямая заданы в объектной системе координат, то наиболее
общий критерий к ближайшей точке
( ХF - ХБ )2 + ( YF - YБ )2 + ( ZF - ZБ )2 (( ( ХF -Xn )2 + (YF - Yn )2 +
( ZF - Zn )2
для любого n.
В частных случаях критерий может быть упрощен:
(XБ, YБ , ZБ) : abs (ХF - ХБ ) (( abs ( ХF -Xn ) для ( n
(XБ, YБ , ZБ) : abs (YF - YБ ) (( abs (YF - Yn ) для ( n
(XБ, YБ , ZБ) : abs ( ZF - ZБ ) (( abs ( ZF - Zn ) для ( n
Применение упрощенных критериев оправдано в том случае, когда априорно известно не параллельность любого светового луча плоскостям Yz, Xz и XY.
Например: последний критерий может быть использован при моделировании аэрофотосъёмки.
Определение затенённых точек.
Точки объекта видимые рецепторами подразделяются на два класса:
- точки, освещённые прямым светом;
- точки, находящиеся в тени.
Алгоритм вычисления освещённости для этих классов существенно различен. Поэтому для каждой видимой точки устанавливается признак освещённости(затенённости. Идея решения данной задачи основана на следующем факте: видимая точка освещена (находится на свету), если её не закрывают от источника света другие поверхности или эта точка является ближайшей к источнику света, среди всех остальных, лежащих на световом луче.
[pic]
Для определения затенённости точки (XБ, YБ , ZБ) необходимо провести световой луч из источника света на видимую точку и найти точки пересечения этой прямой со всеми поверхностями, входящими в состав объекта. Поскольку объект состоит из примитивов, то первоначально определяется пересечение луча с поверхностью каждого примитива. Если примитив содержит K поверхностей вида fk (X,Y,Z) = 0, (k = 1,K), то K раз решается система:
X - XB Y - YB
Z - ZB
------------- = ------------- = ---------
XSUN - XB YSUN - YB ZSUN -
ZB'
fk (X,Y,Z) = 0
Затем среди множества решений отбирают действительное, а среди них точку, ближайшую к источнику света и лежащую на поверхности объекта.
Примечание: Алгоритм определения затенённости идентичен алгоритму определения видимости, но точка центра проектирования заменяется на точку источника излучения, а точка центра рецептора на видимую точку. Если видимая из рецептора точка является ближайшей к источнику света, то она освещена прямыми лучами.
Проведя данные вычисления для всех I*J рецепторов удаётся получить
информацию о координатах видимой из каждого рецептора точки (XB , YB ,
ZB)ij, о номере примитива, номере функции поверхности, которой принадлежит
точка и признак затенённости / освещённости.
Примечание: При неизменном ракурсе нет необходимости каждый
раз вновь определять видимые точки, при перемещении источника света.
Координаты видимых точек остаются неизменными. Пересчитывается только
признак освещённости.
Рекомендуем скачать другие рефераты по теме: дипломная работа проект, защита диплома.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 | Следующая страница реферата