Textcolor, Window, Textbackground в Pascal.

Текст, который мы выводим на экран с помощью процедуры Writeln или с помощью оператора Write можно изменять. Процедура Textcolor используется для изменения цвета выводимого текста. Процедура Textbackground изменяет цвет фона, на котором выводится ...

Функции trunc, round в Pascal.

Для того чтобы в Паскаль можно было оперировать не только целыми числами, но и дробными существуют вещественные типы данных. Один из таких типов называется Real. В этом уроке мы рассмотрим 2 функции, которые производятся над дробными числами. Это ...

Функции Pred, Succ в Pascal.

В данном уроке мы рассмотрим функции, применяемые к типу CHAR. Функция Pred возвращает в качестве значения предшествующий символ, а функция Succ возвращает последующий символ.

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

Линейные процессы вычислений.

Простейший алгоритм представляет собой цепочку блоков (операторов) от начального блока до конечного. Каждый блок должен быть выполнен один единственный раз. Это линейный алгоритм. Он отражает ...

Использование оператора WITH ... DO.

Из предыдущего примера легко заметить, что при каждом обращении к полю записи следует указывать имя этой записи. Если вы работаете с полями одной и той же записи, то этой проблемы можно избежать ...

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