Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по компьютерной графике [по вопросам].doc
Скачиваний:
88
Добавлен:
02.05.2014
Размер:
783 Кб
Скачать

11. Представление геометрических моделей. Полигональные сетки и способы …

Наиболее распространённые представления графических объектов:

1. Пространственное подразбиение.

Если в трёхмерном пространстве есть тело, то это пространство можно разбить на кубики (воксели). Для каждого кубика b(i, j, k) можно указать, пересекается ли он с телом, то есть лежит ли он внутри, на границе – 1 или вне тела – 0. В некоторых случаях удобно применять некоторые промежуточные значения, задавая тем самым плотность в данной точке пространства.

Характеристики воксельного представления:

• Только приближение реального объекта. Поверхности, не параллельные осям координат, представляются приблизительно. Качество приближения зависит от относительного размера вокселей.

• Требует больших размеров памяти для хранения, и эти требования резко возрастают при увеличении разрешения (растет как куб от разрешения).

• С таким представлением хорошо работают в основном пространственные алгоритмы, такие как вычисление объема объекта, нахождение центра масс и т.д.

• Можно проводить набор операций: пересечение, объединение, вычитание.

2. Граничное (поверхностное). Тела задаются ограниченными фрагментами поверхностей.

3. Конструктивное.

При конструктивном представлении вводятся примитивы тел. Конструируя эти объекты и применяя теоретико-множественные операции, можно получить более сложное тело.

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

Полигональная сетка представляет собой совокупность ребер, вершин и многоугольников.

Виды представлений полигональных сеток:

1. Явное представление – многоугольник задается последовательностью вершин {x1,y1,z1},{x2,y2,z2},…,{xn,yn,zn}

2. Список вершин – перечисление всех вершин, встречающихся в многоугольниках: {x1,y1,z1},…,{xn,yn,zn}. При представлении многоугольника указываем лишь индексы вершин.

3. Определение многоугольника списком ребер. В такой модели грань представляется набором ребер и вершины грани определяются через ребра.

4. Крылатое представление: структура основывается на списке ребер, и для каждого ребра возникают две соседние грани. Каждое ребро ссылается на соседние грани, на ближайшие соседние ребра и опирается на две вершины. В результате ссылки для каждого ребра образуют кольцевые списки.

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

Часто применяются следующие способы представления полигонов:

указатель на список вершин;

количество вершин;

указатель на текущую вершину;

функции для работы с вершинами;

функция расщепления полигона (деление полигона на два меньших по некоторой хорде);

проверка принадлежности точки полигону;

поиск наименьшей вершины (если определена некоторая функция упорядочивания).