Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uchebnik_po_kursu_GIO_2007_ispravlenny_s_risunk...doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
13 Мб
Скачать
☆
  1. Удаление невидимых линий и поверхностей

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

Само проектирование осуществляется на так называемую картинную плоскость (экран): через каждую точку каждого объекта проводится проектирующий луч (проектор) к картинной плоскости. Все проекторы образуют пучок либо параллельных лучей (при параллельном проектировании), либо лучей, выходящих из одной точки (центральное проектирование). Пересечение проектора с картинной плоскостью дает проекцию точки. Видимыми будут только те точки, которые вдоль направления проектирования расположены ближе всего к картинной плоскости.

Несмотря на кажущуюся простоту, задача удаления невидимых линий и поверхностей является достаточно сложной и зачастую требует очень больших объемов вычислений. Поэтому существует целый ряд различных методов решения этой задачи, включая и методы, опирающиеся на аппаратные решения.

Эти методы различаются по следующим основным параметрам:

• способу представления объектов;

• способу визуализации сцены;

• пространству, в котором проводится анализ видимости;

• виду получаемого результата (его точности).

В качестве возможных способов представления объектов могут выступать аналитические (явные и неявные), параметрические и полигональные. Далее будем считать, что все объекты представлены набором выпуклых плоских граней, например треугольников (полигональный способ), которые могут пересекаться одна с другой только вдоль ребер. Координаты в исходном трехмерном пространстве будем обозначать через (х, у, z), а координаты в картинной плоскости – через (X, Y). Будем также считать, что на картинной плоскости задана целочисленная растровая решетка – множество точек (i,j), где i и j – целые числа.

Классификация методов удаления невидимых линий и поверхностей приведена на рис. 13.1.

Рис. 13.1. Классификация методов удаления невидимых линий и поверхностей

Если это не оговорено особо, будем считать для простоты, что проектирование осуществляется на плоскость ОХY. Проектирование при этом происходит либо параллельно оси OZ, т. е. задается формулами Х = х, Y = y, либо является центральным с центром, расположенным на оси OZ, и задается формулами

Существуют два различных способа изображения трехмерных тел – каркасное (wireframe – рисуются только ребра) и сплошное (рисуются закрашенные грани). Тем самым возникают два типа задач – удаление невидимых линий (ребер для каркасных изображений) и удаление невидимых поверхностей (граней для сплошных изображений). Анализ видимости объектов можно производить как в исходном трехмерном пространстве, так и на картинной плоскости. Это приводит к разделению методов на два класса:

• методы, работающие непосредственно в пространстве самих объектов; • методы, работающие в пространстве картинной плоскости, т. е. работающие с проекциями объектов.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]