Хелпикс

Главная

Контакты

Случайная статья





randomize;



 

2) Координаты графического курсора

function GetX : integer;
Возвращает координату X текущей позиции (CP).
function GetY : integer;
Возвращает координату Y текущей позиции (СР).
function GetMaxX : integer;
Возврашает максимальный Х (разрешение по горизонтали) для текущего графического драйвера и режима.
function GetMaxY : integer;
Возвращает максимальный Y (разрешение по вертикали) для текущего графического драйвера и режима.

 

3) Модуль GRAPH содержит несколько десятков описаний (констант, переменных, процедур и функций). Все они описаны в справочной системе. Поскольку стандартный режим для Pascal является текстовым, перед применение графического режима его надо инициализировать. Это делает встроенная шаблонная процедура Procedure

                                                                  INITGRAPH (Var driver, режим: integer; путь к драйверу: string

Примечание: драйвер – это параметр определяющий тип графического драйвера программой Pascal. Соответствующему фактическому параметру можно присвоить значение одной из констант модуля графа, вместо использования каких-то значений цифр. Константа Detect = 0, задает режим авто определение драйвера, причем это используется 99% случаях программирования, а 1% - это когда написанная программа будет исполняться на том же компьютере на котором она написана.

Режим – это параметр определяющий режим графического драйвера. Он имеет много значений. От версии к версии эти значения очень сильно разнятся, поэтому для определения типа режима надо пользоваться справочной системой. Путь к драйверу – это выражение типа string, определяющий путь файла к драйверу на жестком диске компьютера. Путь записывается по правилу MS DOS. Файл драйвера имеет расширение (.bgi) и находится в папке BGI. Для успешной инициализации графического драйвера необходимо выполнить 3 правила:

1) В заголовке программы должно быть написано Uses GRAPH

2) Файл GRAPH TPU должен находится в текущей директории программы Pascal или путь к нему должен быть прописан в ‘’опции’’ options/ directories/unit/directories.

Путь к файлу драйвера должен быть указан в операторе процедуры INIT GRAPH. Удачная инициализация запускает графический режим, во время (run - time). Ошибки запуска графического режима (GRAPH result), (GRAPH error Meg) – эти процедуры выдают только коды ошибок, а описание ошибок по их кодам и устранениям дается в технической документации.

 

4)Процедура Close GRAPH выполняет: прекращение работы в графическом режиме; освобождает занятую графическим драйвером динамическую память; и восстанавливает текстовый режим.

Примечание: во время rum-time возможен переход в текстовый режим и обратно. Это возможно благодаря процедуре (restore CRT mod), если программа встречает (set Graph mode),программа возвращается в графический режим. Динамическая память не освобождается при смене режимов, экраны очищаются.

5) Модуль GRAPH. Содержит обширный набор типов, констант, процедур и функций для управления графическим режимом работы экрана. С помощью подпрограмм, входящих в модуль GRAPH, можно создавать разнообразные графические изображения и выводить на экран текстовые надписи стандартными или разработанными программистом шрифтами. Подпрограммы модуля GRAPH после соответствующей настройки могут поддерживать различные типы аппаратных графических средств.

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

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

 

6) Процедура Randomize используется в Паскаль для включения генератора случайных чисел. Функция Randomопределяет диапазон случайных чисел. Процедура Randomize и функция Random очень часто используются для демонстрации работы массивов в Паскаль.

Randomize и Random в Паскаль.

1. program massiv4;

2. uses crt;

3. var a:integer;

4. begin

5. clrscr;

6. randomize;

7. repeat

8. a:=random(1000);

9. writeln(a);

10. until a=256;

11. readln

12. end.

 

 

7) Функции GetMaxX и GetMaxY.

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

 

8) Процедура Line. Вычерчивает линию с указанными координатами начала и конца. Заголовок:

Procedure Line(X1, Y1, X2, Y2: Integer);

Здесь X1..Y1 – координаты начала(X1,Y1) и конца(X2,Y2) линии. Линия вычерчивается текущем стилем и текущим цветом.

 

9) LineTo (x, y: integer) – рисует прямую линию от текущего пикселя до точки с координатами x, y.

11) Процедура Rectangle. Вычерчивает прямоугольник с указанными координатами углов. Заголовок:

Procedure Rectangle(X1, Y1, X2, Y2: Integer);

Здесь X1..Y2 – координаты левого верхнего угла(X1,Y1) и правого нижнего(X2,Y2) углов прямоугольника. Прямоугольник вычерчивается с использованием текущего цвета и текущего стиля линий.

 

12) Bar (x1, y1, x2, y2: integer) - эта процедура рисует прямоугольник закрашенный в текущем стиле

X1, y1 – координаты левого верхнего угла прямоугольник

X2, y2 – правого нижнего угла прямоугольника

 

13) Circle (x1, y1: integer, R: word) – рисует текущем цветом окружность, радиуса R с центром в точки с координатами x1, y1

14) Процедура Ellipse. Вычерчивает эллипсную дугу. Заголовок:

Procedure Ellipse(X, Y: Integer; BegA, EndA, Rx, RY: Word);

Здесь X,Y – координаты центра; BegA, EndA – соответственно начальный и конечный углы дуги; RX, RY – горизонтальный и вертикальный радиусы эллипса в пикселях.

При вычерчивании дуги эллипса используется те же соглашения относительно линии, что и в процедуре Circle, ите же соглашения относительно углов, что и в процедуре Arc. Если радиусы согласовать с учетом масштабного коэффициента GetAspectRatio, будут вычерчена правильная окружность.

 

15) Процедура sector (x, y, nangl, kangl, rx, ry) используя те же параметры, что и процедура ellipse рисует текущим цветом сектор эллипса, закрашенный в текущем стиле.

 

16) Процедура SetViewPort. Устанавливает прямоугольное окно на графическом экране. Заголовок:

Procedure SetVievPort(X1, Y1, X2, Y2: Integer; ClipOn: Boolean);

Здесь X1..Y2 – координаты левого верхнего(Х1,Y1) и правого нижнего(X2,Y2) углов окна; ClipOn – выражение типа Boolean, определяющее «отсечку» не умещающихся в окне элементов изображения.

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

 

17)ClrScr очищает текущее окно (если окно совпадает с экраном, то весь экран). Окно закрашивается текущем цветом фона

18) В графическом режиме курсор на экране не отображается. Точку, в которой появится текст в результате выполнения инструкции вывода текста, определяет невидимый графический курсор , который также называют указателем вывода. В начале работы программы указатель вывода находится в верхнем левом углу экрана, в точке (0;0). Получить координаты указателя вывода программа может, обратившись к функциям GetX и GetY. Переместить указатель в нужную точку экрана можно, вызвав процедуру MoveTo, задав в качестве параметров координаты точки экрана, куда надо переместить указатель. Переместить указатель относительно его текущего положения можно, вызвав процедуру MoveRel, задав, на сколько точек надо переместить указатель. 

19) Процедура settextstyle (sh, n, r) позволяет манипулировать стилем текста. Sh (шрифт) - имеет значения 0..4 (0 – матричный шрифт; 1 – триплекс; 2 – мелкий; 3 – прямой; 4 – готический, 1 – 4 для кириллицы не поставляются!!!). N (направление) - имеет значение 0 – текст идёт слева направо и 1 – текст идёт снизу вверх, по вертикали, символы «положены на бок». R (размер шрифта) - коэффициент увеличения 1..10.

 

20) Здесь Horiz - горизонтальное выравнивание; Vert - вертикальное выравнивание. Выравнивание определяет как будет размещаться текст - левее или правее указанного места, выше, ниже или по центру. Здесь можно использовать такие константы:

const
LeftText = 0;{Указатель слева от текста}
CenterText= 1;{Симметрично слева и справа,верху и снизу}
RightText = 2;{Указатель справа от текста}
BottomText= 0;{Указатель снизу от текста}
TopText = 2;{Указатель сверху от текста}

 

22) Процедура lineto (x, y) проводит текущим цветом линию из текущей позиции в точку с заданными координатами, перемещая в неё и текущую позицию.

 

23) Процедура SetFillStyle. Устанавливает стиль (тип и цвет). Заголовок:

Procedure SetFillStile(Fill, Color: Word);

Здесь Fill – тип заполнения; Color – цвет заполнения.

С помощью заполнения можно покрывать какие-либо фрагменты изображения периодически повторяющимся узором.

Процедура FloodFill. Заполняет произвольную замкнутую фигуру, используя текущий стиль заполнения(узор и цвет). Заголовок:

Procedure FloodFill(X, Y: Integer; Border: Word);

Здесь X, Y – координаты любой точки внутри замкнутой фигуры; Border – цвет граничной линии. Если фигура не замкнута, заполнение «разольется по всему экрану.

 

24) Процедура SetCOlor. Устанавливает текущий цвет для вводимых линий и символов. Заголовок:

Procedure SetColor(Color: Word);

Здесь Color – текущий цвет.

 

25) Процедура SetFillStyle. Устанавливает стиль (тип и цвет). Заголовок:

Procedure SetFillStile(Fill, Color: Word);

Здесь Fill – тип заполнения; Color – цвет заполнения.

С помощью заполнения можно покрывать какие-либо фрагменты изображения периодически повторяющимся узором.

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.