Функции LENGTH и CONCAT.

Функция Length возвращает в качестве значения длину строки. Например, если в строковой переменной «stroka» записано слово «Pascal», то Length(stroka) будет равно 6. Эта операция аналогична операции Ord(stroka[0]), которую мы разбирали в 1-м уроке. ...

Константы в Pascal.

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

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

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

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

Использование массивов и функций в качестве формального параметра.

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

Индексы одномерного массива.

Существует класс задач, в которых индекс массива используется для формализации вычислительного процесса путем сведения исходных формул к конечным суммам и произведениям. Преобразованные таким образом ...

Процедура 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.