Студопедия — Лабораторная работа № 10
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лабораторная работа № 10






 

Тема: Разработка программ с использованием графических построений.

Цель: Научиться работать с монитором в графическом режиме, изучить графические возможности среды Pascal.

1. Теоретические сведения.

Установка графического режима.

Для использования графических возможностей необходимо подключить к программе модуль Graph.

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

Procedure InitGraph (Var gd, gm:Integer; Path:String),

в которой переменная gd определяет тип графического драйвера, переменная gm – режим работы графического адаптера, константа Path – маршрут поиска файла драйвера. Для автоматического определения типа драйвера можно использовать процедуру Detect:

gd: = detect;

InitGraph (gd, gm, \C:\Bp\Bgi\);

После такого обращения устанавливается графический режим работы экрана, а при выходе из процедуры переменные gd и gm содержат целочисленные значения, определяющие тип драйвера и режим его работы.

Процедура

Procedure CloseGraph;

завершает работу адаптера в графическом режиме и восстанавливает текстовый режим работы экрана.

В ходе работы в графическом режиме можно использовать функцию:

Function GraphResult: Integer;

возвращающюю значение, в котором закодирован результат последнего обращения к графическим процедурам. Для каждого значения в модуле Graph определена константа:

Const

grOk = 0; {Нет ошибок}

grInitGraph = -1; {Не инициализировался графический режим}

grNotDetect = -2; {Не определен тип драйвера}

grFileNotFind = -3; {Не найден графический драйвер}

grInvalidDriver = -4; {Неправильный тип драйвера

grNoLoadMem = -5; {Нет памяти для размещения драйвера}

grNoScanMem = -6; {Нет памяти для просмотра областей}

grNoFloodMem = -7; {Нет памяти для закраски областей}

grFontNotFound = -8; {Не найден файл со шрифтом}

grNoFontMem = -9; {Нет памяти для размещения шрифта}

grInvalidMode = -10 {Неправильный графический режим}

grError = -11; {Общая ошибка}

grError = -12; {Ошибка ввода-вывода}

grInvalidFont = -13; {Неправильный формат шрифта}

grInvalidFontNum = -14; {Неправильный номер шрифта}

 

После обращения к функции GraphResult признак ошибки сбрасывается, поэтому повторное обращение к ней вернет ноль.

С помощью функции

Function GraphErrorMzg(Code:Integer):String;

можно по коду ошибки Code получить текстовое сообщение.

Ниже приведена типичная последовательность операторов для инициации графического режима с автоматическим определением типа драйвера:

Var gd, gm, Error: Integer;

begin

gd: = Detect; {Автоопределение драйвера}

InitGraph (gd,gm,'C:\Bp\Bgi'); {Инициируем графику}

Error: = GraphResult; {Получаем результат}

If Not (Error = grOk)

then {Проверяем ошибку}

Begin

{Выводим сообщение об ошибке}

Writeln (GraphErrorMsg(Error)); ……..

end

else {нет ошибки}

Begin

….{команда работы с графикой}

CloseGraph {Закрывается графический режим}

end

end.

 

Координаты.

Экран монитора в графическом режиме представляет собой множество точек, изменяя цвет которых можно получить графическое изображение. Каждая точка имеет свои координаты. Т.о., экран в графическом режиме можно рассматривать как координатную плоскость (см. рис.1). Стандартный размер экрана монитора SVGA составляет 640*480 пиксел (точек). Левый верхний угол экрана имеет координаты (0,0). Размерность экрана можно получить с помощью функции типа Integer GetMaxX и GetMaxY, которые возвращают максимальные координаты экрана в текущем режиме работы соответственно по горизонтали (по X) и вертикали (по Y).

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

Процедура

Procedure MoveRel (dX, dY: Integer).

Здесь dX, dY – приращение новых координат указателя (соответственно по горизонтали и вертикали) относительно того положения, которое занимал указатель к моменту обращения к процедуре.

 

Цвета.

Процедура

Procedure SetColor (Color: Word);

устанавливает текущий цвет Color для выводимых линий и символов. В модуле Graph определены точно также те константы для задания цвета, как и в модуле Сrt.







Дата добавления: 2015-09-15; просмотров: 518. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Кран машиниста усл. № 394 – назначение и устройство Кран машиниста условный номер 394 предназначен для управления тормозами поезда...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

Измерение следующих дефектов: ползун, выщербина, неравномерный прокат, равномерный прокат, кольцевая выработка, откол обода колеса, тонкий гребень, протёртость средней части оси Величину проката определяют с помощью вертикального движка 2 сухаря 3 шаблона 1 по кругу катания...

Принципы, критерии и методы оценки и аттестации персонала   Аттестация персонала является одной их важнейших функций управления персоналом...

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

Что такое пропорции? Это соотношение частей целого между собой. Что может являться частями в образе или в луке...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия