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

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

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

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

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

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

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

Спецификация процедуры.

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

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

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

Функция GetmaxX определяет максимальную координату по оси X для данного монитора. Функция GetmaxY определяет максимальную координату по оси Y для данного монитора.

 Рисование 2 линий, проходящих через середину экрана.




Program graphika3;
uses crt, 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;
line (0, getmaxy div 2, getmaxx, getmaxy div 2);
line (getmaxx div 2, 0, getmaxx div 2, getmaxy);
readln;
closegraph
end.



Строка №3 - №16. Записываем шаблонную процедуру для инициализации графического режима.

В строке №18 запускаем графический режим с помощью указания названия процедуры для запуска графического режима.

В строке №19 записываем процедуру Line, которая выводит на экран отрезок. Для этой процедуры указываем координаты. Функция getmaxx определяет максимальную координату X для данного монитора. Функция getmaxy определяет максимальную координату Y для данного монитора. Предположим, что ваш монитор имеет разрешение 1366?768 пикселей. В этом случае getmaxx будет равно 1366, а getmaxy будет равно 768.
Операция Div – это операция целочисленного деления. Поэтому getmaxy div 2 будет означать 768 div 2 = 384.
Таким образом, получается, что процедура Line в строке №19 имеет такие координаты. Line (0, 384, 1366, 384)(для экрана с разрешением 1366?768 пикселей).
Обратите внимание, что функции GetMaxX и GetMaxY имеют целочисленное значение типа Integer. Поэтому если Вы задаете координаты с помощью этих функций необходимо использовать операцию DIV (/ - нельзя использовать).

В строке №20 строим еще одну линию.

Линия в строке №19 будет горизонтальной, а линия в строке №20 – вертикальной.

getmaxx getmaxy

getmaxx getmaxy.


Предыдущая статья : Процедуры Setcolor, Line.

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

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


Комментарии  

 
-1 # БиМ БАМ БуМ 25.12.2012 06:57
Точно подметили=))))
Ответить
 
 
0 # Вадим 03.02.2013 15:22
Спасибо. Это очень важная функция для моей идеи. Например мне нужно нарисовать фигуру по середине экрана, с неизвестным разрешением, и тут мне это очень пригодилось. Автору спасибо! Еще бы написали как пользоваться звуком ...
Ответить
 

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

   ГлавнаяПаскальГрафика в ПаскальФункции GetmaxX и GetmaxY.