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