Функции Sqr, Abs, Sqrt, Sin, Cos, Arctan, Ln, Exp, Pi в Pascal.

Мы уже знаем, какие существуют функции для целых переменных. Это – нахождение модуля числа (Функция Abc), а также возведение числа в квадрат (Функция Sqr). В этом уроке мы рассмотрим функции, применяемые к дробным числам. Это функции Sqr - квадрат ...

Приоритет выполнения логических операций в Pascal.

Логические операции применяются при написании многих программ в Pascal. Все операции имеют определенный приоритет выполнения : Первой выполняется операция NOT. Второй выполняется операция AND. Последними выполняются операции OR и XOR (Они имеют ...

Строковые константы в Pascal.

В качестве значения строковой константы может выступать любая последовательность символов. Эта последовательность заключается в апострофы. Строковая константа отличается от символьной константы тем, что здесь в качестве значения константы можно ...

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

Вложенные итерационные циклы.

Под вложенным итерационным циклом понимают такую алгоритмическую структуру, при которой в тело одного итерационного цикла включен другой итерационный цикл. Другими словами, любая составная ...

Инициализация одномерного массива.

Отличительной особенностью Паскаля от большинства процедурных языков является то, что все переменные должны быть инициализированы. То есть в разделе VAR переменным отводится место, а начальное ...

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