Сортировка граней по глубине

Это означает рисование полигонов граней в порядке от самых дальних к самым близким. Этот метод не является универсальным, ибо иногда нельзя четко различить, какая грань ближе (рис. 12.7).

Рис. 12.7 Рис. 12.8

Известны модификации этого метода, которые позволяют корректно рисовать такие грани, они описаны в [28]. Метод сортировки по глубине эффективен для показа поверхностей (рис. 12.8), заданных функциями .

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

Пусть рассчитана матрица значений функции .

, (12.6)

где

, , , (12.7)

, , , (12.8)

– соответственно нижняя и верхняя границы для изменения аргумента , а – нижняя и верхняя границы для изменения аргумента , и – интервалы дискретизации для аргументов и .

Далее, пусть – точка в системе координат , где расположен наблюдатель, а – проекция точки на плоскость (рис. 1-2). На приведенных рисунках матрица представлена прямоугольником .

Через точки и проведем прямую , уравнение которой будет иметь вид

Рис. 12.9

Рис. 12.10

или

(12.9)

Аналогично через точки и проведем прямую , уравнение которой будет иметь вид

или

(12.10)

Прямые и делят плоскость на четыре области: 1, 2, 3, 4 (рис. 12.10). Из рис. 12.10 видно, что дальняя грань определяется по отношению к расположению точки на плоскости .

Если

и , то точка находится в области 3 и дальней является грань .

Если

, то точка находится в области 2 и дальней является грань .

Если

и , то точка находится в области 1 и дальней является грань .

Если

, то точка находится в области 4 и дальней является грань .


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: