Алгоритмы и программы. Афанасьева Т. В - 195 стр.

UptoLike

Составители: 

195
В модуле Graph имеется множество средств построения различных
геометрических фигур, которые позволяют сделать выводимое
изображение более красочным и эффективным. Среди таких средств
прежде всего следует отметить «заливку» замкнутых областей экрана с
помощью различных узоров. В модуль Graph включен ряд стандартных
шаблонов различных узоров для заполнения внутренних и внешних
областей различных геометрических фигур.
Узор может быть окрашен в
допустимые для установленной палитры цвета. Комбинацию узорцвет
принято называть стилем заполнения. Для работы со стандартными
стилями используются рассматриваемые ниже функции GetFillSettings и
SetFillStyle.
SetFillStyle (Pattern: WORD; Color: WORD)
устанавливает маску Pattern и ее цвет Color, т. е. определяет стиль
заполнения.
Процедура
GetFillSettings(VAR FillType: FillSettingsType)
возвращает в переменной FillType, которая имеет тип, объявленный в
модуле Graph следующим образом:
TYPE
FillSettingsType = RECORD
Pattern: WORD; {шаблон}
Color: WORD; {цвет}
END;
номер шаблона заполнения (Pattern) и его цвет (Color).
Осталось рассмотреть последнюю процедуру этого семейства
FloodFill. Она служит для заполнения заданным с помощью SetFillStyle и
SetFillPattern стилем области, расположенной либо внутри замкнутого
контура, либо вне его. Для ее задания используется следующий синтаксис:
FloodFill (X, Y: INTEGER; Border: WORD),
где X, Y – координаты точки внутри или вне замкнутого контура.
Параметр Border задает
цвет контура. В зависимости от расположения
указанной точки по отношению к контуру будет производиться заполнение
текущим узором либо области, ограниченной контуром, либо части экрана,
расположенной вне границ контура. Если указанный контур не является
замкнутым (отметим, что контуры, включающие в себя часть границы
экрана, относятся к замкнутым), то будет заполнен весь
экран.
Использование шаблонов с достаточно редким заполнением для