Лабораторный практикум по программированию на языке Паскаль. Найханова Л.В - 106 стр.

UptoLike

106
SetLineStyle(DottedLn, 0, 1);
SetColor(2);
{ вычерчивание прямоугольника }
Rectangle(10,10, 319,174);
Readln
End.
Заполнять области стандартными шаблонами позволяет процедура:
SetFillStyle(Pattern : word; Color : word),
где Pattern задает номер шаблона, а Color - номер цвета шаблона.
Номера заполняющих шаблонов могут быть выражены следующим образом:
EmptyFill = 0 - заполнение цветом фона;
SolidFill = 1 - сплошное заполнение;
LineFill = 2 - заполнение толстыми горизонтальными линиями;
LtSlashFill = 3 - заполнение наклонными линиями (правый наклон);
SlashFill = 4 - заполнение толстыми наклонными линиями;
BkSlashFill = 5 - заполнение толстыми косыми линиями (левый наклон);
LtBkSlashFill = 6 - заполнение косыми линиями;
HatchFill = 7 - заполнение вертикальной сеткой;
HatchFill = 8 - заполнение наклонной сеткой;
InterleaveFill = 9 - заполнение переплетенными линиями;
WideDotFill = 10 - заполнение точками;
CloseDotFill = 11 - плотное заполнение точками.
Например, чтобы заполнить вертикальной сеткой красного цвета прямоугольник,
рассмотренный в предыдущем примере, необходимо использовать следующие
предложения:
SetFillStyle(7, 4);
Bar(10,10, 319,174);
Заполнение заданным шаблоном области, охватывающей точку с координатами (X, Y),
ограниченной линией, номер цвета которой определен Border, выполняется процедурой
FloodFill(X, Y: integer; Border: word).
Шаблон и цвет заполнения области могут быть определены с помощью процедуры
SetFillStyle .
Например, чтобы заполнить наклонными линиями коричневого цвета круг желтого цвета с
центром в точке (319, 174) и радиусом 100, необходимо использовать операторы:
SetFillStyle(3, 6);
SetColor(14);
Circle(319, 174, 100);
FloodFill (310, 170, 14);
14.2. Контроль за выполнением графических операций
При выполнении графических процедур возможны следующие ошибочные ситуации:
1.
Параметры процедуры не нарушают требований синтаксиса, но подобраны неправильно
при этом выполнение процедуры не вызовет никаких изменений.
2.
Параметры подобраны правильно, а процедура выполняется неправильно.
3.
Определение причин неправильного выполнения графических операций остается за
разработчиком программы. Эту задачу упрощает функция GraphResult, позволяющая
определить результат завершения графической операции.
Синтаксис:
GraphResult : integer;
Если операция закончилась успешно, функция возвращает 0, в противном случае
отрицательное значение, идентифицирующее причину неудачи. Коды ошибок:
grOk -0 -нормальное выполнение графической операции;
      SetLineStyle(DottedLn, 0, 1);
      SetColor(2);
      { вычерчивание прямоугольника }
      Rectangle(10,10, 319,174);
      Readln
End.
Заполнять области стандартными шаблонами позволяет процедура:
      SetFillStyle(Pattern : word; Color : word),
      где Pattern задает номер шаблона, а Color - номер цвета шаблона.
Номера заполняющих шаблонов могут быть выражены следующим образом:
      EmptyFill      =0      - заполнение цветом фона;
      SolidFill      =1      - сплошное заполнение;
      LineFill       =2      - заполнение толстыми горизонтальными линиями;
      LtSlashFill = 3        - заполнение наклонными линиями (правый наклон);
      SlashFill      =4      - заполнение толстыми наклонными линиями;
      BkSlashFill = 5        - заполнение толстыми косыми линиями (левый наклон);
      LtBkSlashFill = 6      - заполнение косыми линиями;
      HatchFill      =7      - заполнение вертикальной сеткой;
      HatchFill      =8      - заполнение наклонной сеткой;
      InterleaveFill = 9     - заполнение переплетенными линиями;
      WideDotFill = 10 - заполнение точками;
      CloseDotFill = 11 - плотное заполнение точками.
Например, чтобы заполнить вертикальной сеткой красного              цвета прямоугольник,
рассмотренный в         предыдущем       примере,    необходимо использовать следующие
предложения:
      SetFillStyle(7, 4);
      Bar(10,10, 319,174);
Заполнение заданным шаблоном области, охватывающей точку с координатами (X, Y),
ограниченной линией, номер цвета которой определен Border, выполняется процедурой

FloodFill(X, Y: integer; Border: word).
Шаблон и цвет заполнения области могут быть определены с помощью процедуры
SetFillStyle .
Например, чтобы заполнить наклонными линиями коричневого цвета круг желтого цвета с
центром в точке (319, 174) и радиусом 100, необходимо использовать операторы:
       SetFillStyle(3, 6);
       SetColor(14);
       Circle(319, 174, 100);
       FloodFill (310, 170, 14);
14.2. Контроль за выполнением графических операций
При выполнении графических процедур возможны следующие ошибочные ситуации:
1. Параметры процедуры не нарушают требований синтаксиса, но подобраны неправильно
   при этом выполнение процедуры не вызовет никаких изменений.
2. Параметры подобраны правильно, а процедура выполняется неправильно.
3. Определение причин неправильного выполнения графических операций остается за
   разработчиком программы. Эту задачу упрощает функция GraphResult, позволяющая
   определить результат завершения графической операции.
Синтаксис:
      GraphResult : integer;
Если операция закончилась успешно, функция возвращает 0, в противном случае
отрицательное значение, идентифицирующее причину неудачи. Коды ошибок:
grOk                    -0   -нормальное выполнение графической операции;

                                                                                    106