2.4. Штриховка

Штриховка заданных полей является неотъемлемой частью подго­товки различного вида чертежей и рисунков. Для выполнения штри­ховки служат две программы: SDPG и SHADE. Первая из них позво­ляет заштриховать все поле страницы. Cовместное ее использование с программами экранирования дает возможность заштриховать требу­емые участки на странице. Bторая программа штрихует требуемые участки, но для нее необходимо задавать границы участков. Оба способа выполнения штриховки совершенно независимы - программы SDPG и SHADE не используют друг друга.

Программа SDPG(STEP,EPS,BETA) позволяет заштриховать все поле страницы. Параметры программы:

STEP
расстояние между линиями штриховки в выбранных единицах измерения;
EPS
сдвиг линий штриховки относительно основной штриховки по нормали к ней;
BETA
угол наклона линий штриховки к оси x (в градусах).

Основной штриховкой в данном случае считается та, для которой одна из линий проходит через точку (0,0), т. е. через левый нижний угол страницы.

Программа SHADE(X,Y,N,STEP,EPS,BETA) позволяет заштриховать участок страницы, ограниченный замкнутой кусочно-линейной ориен­тированной кривой. Параметры программы:

X,Y
массивы длины N абсцисс и ординат соответственно, задающие вершины границы;
N
число вершин границы;
STEP
расстояние между линиями штриховки в выбранных единицах измерения;
EPS
сдвиг линий штриховки относительно основной штриховки по нормали к ней;
BETA
угол наклона линий штриховки к оси x (в градусах).

Эта программа позволяет штриховать также и самопересекающиеся многоугольники. При задании многоугольника (т. е. массивов X и Y) последняя вершина может не совпадать с первой, поскольку всегда строится дополнительное ребро, которое их соединяет. Зна­чение N (число вершин) не должно превышать 250. Hикакая линия штриховки не должна пересекать более 40 ребер.

B тех случаях, когда обращением к программам LIMITS и REGIОN (см. гл.4) заданы математические координаты и на странице опре­делена область, программа SHADE будет проводить штриховку за­данного многоугольника внутри этой области, не выходя за ее границы.