в модуле Graph, представляет собой
SetFillPattern(patl,4);
Тип данных FillPatternType, описанный в модуле Graph, представляет собой байтовый массив из 8 элементов — array [1. .8] of byte.
В BGI-пакете предусмотрены пять процедур (функций) для построения заполненных геометрических фигур:
bar (xl,y1,x2,y2) — залитый прямоугольник без контура;
bar3d(x1,y1,x2,y2,d,t) — трехмерный столбик;
fillellipse (x, у, rх, rу) — залитый эллипс или окружность;
filipoly (п,ху) — залитый многоугольник;
sector (х,у, a1,a2, rх, rу) — залитый эллиптический сектор;
pieslice (x,y,al,a2, r) — залитый круговой сектор.
В трехмерном столбике первые четыре параметра определяют положение передней грани. Параметр d задает "глубину" столбика, и иногда его рекомендуют выбирать равным четверти ширины (d = 0.25 * (х2 - x1)). Последний аргумент в Си может принимать нулевое или ненулевое значение, а в Паскале — true или false. Если он отличен от о или равен true, то верхняя грань столбика ("крыша") рисуется. В противном случае столбик воспроизводится без крыши, что дает возможность поставить над ним еще один столбик и не заботиться об удалении невидимых линий. В трехмерном столбике заливается только передняя грань.
Процедура bar3d, как правило, используется для воспроизведения объемных диаграмм. 0днако в ней можно задать нулевую глубину столбика (d = о) и тогда результат ее работы заменяет выполнение двух последовательных процедур:
bar111,11,99,99);
rectangle(10,10,100,100);
Первая из них отображает залитую внутренность прямоугольника, а вторая — обводит его границу.
Параметры остальных процедур довольно подробно рассматривались в предыдущих разделах.
Недавно одному из авторов пришлось разрабатывать программные средства выделения замкнутых областей в цифровых электронных картах. Кроме использования самых простых идей — выделение цветом и штриховками, -наиболее плодотворный результат при выводе на дисплей был достигнут регулярными заполнителями с помощью заливочных шаблонов. Самая богатая коллекция таких шаблонов, которая была известна нам по литературе, насчитывала 28 образцов [13]. 0днако по своему разнообразию этот набор показался нам недостаточно выразительным. Кроме того, в нем отсутствовала какая-либо классификация шаблонов. Пришлось потратить несколько дней на эксперименты с редактором образов в системе Builder C++, после чего на свет появилось более сотни шаблонов. Их мы и представляем нашим читателям в надежде, что наиболее любознательные сумеют построить еще не один десяток приятных узоров.
Содержание Назад Вперед