Использование Var, Integer, Readln.

Процедура Readln используется не только для задержки экрана. Ее основная задача - ввод данных с клавиатуры. В этой статье мы научимся вводить числа с клавиатуры, и потом выводить их на экран. Для этого нам будет необходимо познакомиться с разделом ...

Логические и символьные константы.

В данном уроке будет рассмотрено применение логических и символных констант. Логическая константа может принимать только 2 значения, либо True, либо False. В качестве значения символьной константы могут использоваться любые символы, которые есть в ...

Функции Copy, Pos, процедуры Delete, Insert.

Функция Copy позволяет копировать из строки часть символов. Функция имеет 3 параметра. Copy (st, index, count). St-строка из которой копируют, Index-номер символа, с которого начинается копирование, Count-количество символов, которое будет ...

Циклы и массивы

Рекурсивные вычислительные процессы.

Функция может вызывать другую функцию, та в свою очередь третью и т.д. В результате программы приобретают иерархическую структуру.

Вычисление предела последовательности.

Вычисление предела последовательности является типичной задачей на использование итерационного цикла.

Процедура LineRel (x,y) рисует линию, у которой начальные координаты совпадают с координатами текущего указателя, а координаты конца высчитываются путем прибавления (x,y) к координатам текущего указателя. Кроме того, текущий указатель переносится в эту точку (с координатами конца линии).

 Рисование линий с помощью процедуры LineRel.





Program Graphika5;
Uses Graph;
Procedure Graphinterface;
Var  gd, gm, error:Integer;
s:String;
Begin
gd:=detect;
s:=' ';
Initgraph(gd,gm,s);
error:=GraphResult;
if error<>GrOk then
begin
writeln(GraphErrorMsg(Error));
Halt(error)
end
end;
begin
Graphinterface;
MoveTo(100,100);
LineTo(GetMaxX,GetMaxY);
MoveTo(100,100);
LineRel(500,100);
LineTo(GetMaxX,GetMaxY);
ReadLn;
CloseGraph;
End.



Строка №3 - №16. Процедура инициализации графического режима.

В строке №19 перемещаем текущий указатель в точку с координатами (100,100).

В строке №20 строим линию с помощью процедуры LineTo. Начало линии будет в точке с координатами (100, 100), а конец линии в точке с максимальными координатами для вашего экрана.

В строке №21 снова перемещаем текущий указатель в точку с координатами (100,100).

В строке №22 записываем процедуру LineRel, которая рисует линию. Ее координатами будут: начало – точка с текущим указателем, т.е. (100,100), а конец – (500+100, 100+100) т.е. (600,200). Причем текущий указатель переносится из точки (100,100) в точку (600,200). Заметьте, для того чтобы процедура LineRel работала правильно, необходимо непосредственно перед этой процедурой записать координаты текущего указателя с помощью процедуры MoveTo (строка №21).

В строке №23 снова строим линию с помощью процедуры LineTo. Так как текущий указатель у нас перенесся в точку с координатами (600,200), то они будут координатами начала для этой линии, а координатами конца линии будет точка (GetMaxX,GetMaxY).
Внизу представлена схема работы процедур LineTo, MoveTo, LineRel.

Grafika v Pascal, LineRel..

Grafika v Pascal, LineRel

Grafika v Pascal, LineRel.


Предыдущая статья : Процедуры MoveTo и LineTo.

Оглавление : Уроки Паскаль. Графика.

Следующая статья : Процедура MoveRel.


Добавить комментарий

   ГлавнаяПаскальГрафика в ПаскальПроцедура LineRel.