Рис. 3.49. Закрашенная область, определенная как сегмент положительным числом витков. Она представляет собой разность А - В двух областей, где граница области А обходится в положительном направлении (против часовой стрелки), а граница области В - в отрицательном (по часовой стрелке)
ТАБЛИЦЫ МНОГОУГОЛЬНИКОВ
Как правило, объекты сцены описываются как наборы многоугольных граней поверхностей. Фактически графические пакеты часто предлагают функции определения формы поверхности в виде сетки многоугольных участков. Описание каждого объекта включает информацию о координатах, с помощью которых задается геометрия многоугольных граней, и другие параметры поверхности, такие как цвет, прозрачность и светоотражающие свойства. Поскольку сведения о каждом многоугольнике являются входной информацией, данные размещаются в таблицах, которые используются при последующей обработке, выводе на экран и выполнении различных операций с объектами сцены. Эти информационные таблицы многоугольников можно объединить в две группы: геометрические таблицы и таблицы параметров. В геометрических информационных таблицах содержатся координаты вершин и параметры, которые позволяют определить пространственную ориентацию многоугольных поверхностей. К информации о параметрах объекта относятся величины, определяющие степень прозрачности объекта, отражающую способность его поверхности и текстурные характеристики.
Геометрическую информацию об объектах сцены удобно распределить по трем спискам: таблице вершин, таблице сторон и таблице граней поверхности граней. Координаты всех вершин объекта записываются в таблицу вершин. В таблице сторон содержатся ссылки на таблицу вершин, позволяющие определить вершины, принадлежащие каждой стороне многоугольника. Наконец, в таблице граней поверхности содержатся ссылки на таблицу сторон, определяющие границы каждого многоугольника. На рис. 3.50 эта схема иллюстрируется для двух соседних многоугольных граней на поверхности объекта. Кроме того, отдельным объектам и составляющим их многоугольным граням можно присвоить специальные указатели на объект или грань, что облегчает обращение к ним.
Запись геометрической информации в виде трех таблиц, как показано на рис. 3.50, обеспечивает удобный способ обращения к отдельным элементам (вершинам, сторонам и граням) каждого объекта. К тому же, так можно эффективно изображать объ-
Рис. 3.50. Табличное представление геометрической информации для двух соседних многоугольных поверхностных граней, образованных шестью сторонами и пятью вершинами екты, используя для определения границ многоугольника информацию из таблицы сторон. Еще один вариант расположения данных - использовать только две таблицы: таблицу вершин и таблицу граней. Однако такая схема менее удобна, а при выводе на экран каркасной модели некоторые стороны могут изображаться дважды. Еще один вариант - использовать только таблицу поверхностных граней, но при этом дублируется информация о координатах, поскольку для каждой многоугольной грани в явном виде записываются значения координат всех вершин. Кроме того, взаимосвязь между сторонами и гранями пришлось бы восстанавливать по списку вершин в таблице поверхностных граней.