Слайд 1ГРАФИЧЕСКИЙ РЕЖИМ
Существует два вида информации, появляющейся на экране – текстовая,
состоящая из знаков алфавита, цифр и спецзнаков, и графическая –
чертежи, рисунки, графики.
Мониторы могут быть различных видов – электроннолучевые и жидкокристаллические.
Слайд 2
Светящаяся точка на экране в месте попадания сфокусированного электронного пучка
называется пикселем.
Экран жидкокристаллического монитора, представляет собой жидкокристаллическую матрицу. Пиксели
экране формируют множество миниатюрных жидкокристаллических элементов (ЖК-элемент), меняющих свои цветовые характеристики под действием подаваемого на них тока.
Слайд 3
Мониторы могут работать в различных режимах – количество пикселей в
строке и количество строк на экране определяется несколькими стандартами.
Слайд 4
Есть существенные различия в работе монитора в текстовом и графическом
режиме, которое заключается в различном способе использования видеопамяти.
В текстовом
режиме на экран выводятся символы, причем каждый из них представляет один из 256 заранее обусловленных знаков. Для размещения на экране одного из символов отводится прямоугольная матрица (знакоместо) 8*8=64 пикселя. Каждый символ, занимающий одно знакоместо, имеет свой кодовый номер.
Слайд 5
Графическое изображение объектов на экране основано на растровом способе формирования
изображений, т.е. любая информация на экране отображается совокупностью светящихся точек
– пикселей.
Колонки и строки имеют свой номер, начиная от нулевого номера. Число строк и колонок на экране зависят от выбранного графического режима работы. Каждый пиксель имеет свои координаты на экране (№ строки, № колонки) – положение относительно левого верхнего угла экрана, который имеет координаты (0,0).
Слайд 6
Настройка графических процедур на работу с конкретным адаптером достигается за
счет подключения нужного графического драйвера, т.е. графический драйвер (специальная программа)
управляет графическим адаптером.
Слайд 7
Непосредственный переход в графический режим осуществляет процедура инициализации графического режима.
Переход желательно проводить после выполнения необходимых расчетов, чтобы логически выделить
блок действий, связанных с графическим выводом информации на экран.
Оператор перехода в графический режим располагается в теле программы в таком месте, где выполненные предшествующие операторы уже подготовили необходимую цифровую информацию для работы соответствующих графических процедур и функций.
Слайд 8InitGraph(< драйвер>, , )
< драйвер> - переменная типа
integer, определяющая тип графического драйвера. - переменная типа
integer, определяющая режим работы графического адаптера. Этот параметр определяет цвета, палитру и количество представляющих пикселей на экране
<путь > - выражение типа string, содержащее путь к файлу драйвера.
Closegraph – возвращение в текстовый режим.
Слайд 9
Для того чтобы перейти в графический режим нужно подключить к
программе стандартный графический модуль GRAPH.TPU, а также модуль управления клавиатурой
и экраном CRT.
Подключение модулей производится в самом начале программы (сразу за оператором program, если таковой имеется) перед описательной частью.
Uses GRAPH, CRT;
Слайд 10
Пример:
Uses Graph, CRT;
Var
GraphDriver, GraphMode: integer;
……………………………………
BEGIN
…………………………………….
…………………………………….
GraphDriver := Detect; {производится автоматическое
определения типа драйвера}
InitGraph(GraphDriver, GraphMode, ‘путь к драйверу’ );
Слайд 12
600
400
экран
20,20
620,20
20,420
620,420
Рабочая область
Рабочая область
Xn
Yn
Слайд 14График функции
В заданном интервале [a,b] изменений аргумента Х формируется
таблица значений аргумента с постоянным шагом - h.
В узлах
таблицы вычисляются значения функции –
Вычисляются значения , , ,
и ,
Задаются максимальные размеры (в пикселях) области размещения графика
Px=600, Py=400
Слайд 16
В заданном интервале [a,b] изменений аргумента Х формируется таблица значений
аргумента с постоянным шагом - h.
В узлах таблицы вычисляются
значения функции -
Слайд 20
Производим масштабирование экрана
Mx = Px / Dx и
My = Py / Dy
Переводим математические (real) величины отрезков Dxi,
Dyi в пиксели (integer)
DXGi =trunc(DXi* Mx)
DYGi =trunc(Dyi* My)
Слайд 22
Смещаем минимальное значение ординаты на нижнюю границу рабочей области экрана
и, учитывая начальные смещения Xn и Yn, получаем окончательные таблицы
построения функции
DXGmi = DXGi + Xn
DYGmi = 400 + Yn - DYGi
Слайд 25Графические процедуры и функции.
SETCOLOR (< цвет>)
Процедура устанавливает «цвет пера»
для прорисовки линий и символов. Цвет задается либо константой целого
типа WORD, либо числовым значением в диапазоне от 0 до 15.
При больших значения числа производится операция его деления на 16 и остаток от деления определяет кодовый индекс цвета.
Слайд 26
MOVETO (x,y)
Процедура устанавливает текущее положение указателя, (x,y) –выражения типа INTEGER,
задающие новые координаты указателя по горизонтали и вертикали относительно верхнего
левого угла экрана (или окна, если оно установлено). Линия вычерчивается текущим цветом и текущим стилем.
Слайд 27
PUTPIXEL (x, y, < цвет>)
Процедура выводит заданным цветом пиксель с
координатами (x,y) (выражения типа INTEGER) по горизонтали и вертикали относительно
верхнего левого угла экрана (или окна, если оно установлено). Цвет задается либо константой целого типа WORD, либо числовым значением в диапазоне от 0 до 15. При больших значения числа производится операция его деления на 16 и остаток от деления определяет кодовый индекс цвета.
Слайд 28
LINETO (x, y)
Процедура вычерчивает линию от текущего положения указателя до
точки с координатами (x,y) (выражения типа INTEGER) по горизонтали и
вертикали относительно верхнего левого угла экрана (или окна, если оно установлено). Линия вычерчивается текущим цветом и текущим стилем.
Слайд 29
LINE (x1, y1, x2, y2)
Процедура вычерчивает линию от положения указателя
(x1,y1) до точки с координатами (x2,y2) (выражения типа INTEGER) по
горизонтали и вертикали относительно верхнего левого угла экрана (или окна, если оно установлено). Линия вычерчивается текущим цветом и текущим стилем.
Слайд 30
RECTANGLE (x1, y1, x2, y2)
Процедура вычерчивает прямоугольник (его границы) с
координатами верхнего левого угла (x1,y1) и координатами правого нижнего угла
(x2,y2) (выражения типа INTEGER) по горизонтали и вертикали относительно верхнего левого угла экрана (или окна, если оно установлено). Линия вычерчивается текущим цветом и текущим стилем.
Слайд 31
BAR (x1, y1, x2, y2)
Процедура вычерчивает прямоугольник с координатами верхнего
левого угла (x1,y1) и координатами правого нижнего угла (x2,y2) (выражения
типа INTEGER) по горизонтали и вертикали относительно верхнего левого угла экрана (или окна, если оно установлено). Линия вычерчивается текущим цветом и текущим стилем. Тип и цвет линий должен быть предварительно задан процедурой SETFILLSTYLE (< штриховка>, < цвет>)
Слайд 32
SETFILLSTYLE (< штриховка>, < цвет>)
Процедура устанавливает стиль (тип и
цвет) штриховки стандартных замкнутых контуров. Цвет и штриховка задаются либо
константой целого типа WORD, либо числовым значением в диапазоне от 0 до 15. При больших значения числа производится операция его деления на 16 и остаток от деления определяет кодовый индекс цвета.
Слайд 33
CIRCLE (x, y, )
Процедура вычерчивает окружность с координатами центра (x,y)
(выражения типа INTEGER) по горизонтали и вертикали относительно верхнего левого
угла экрана (или окна, если оно установлено). Линия вычерчивается текущим цветом и текущим стилем. <радиус> – выражение типа WORD, указывающее величину радиуса в пикселях.
Слайд 34
SETBKCOLOR (< цвет>)
Процедура устанавливает цвет экрана. Цвет задается либо
константой целого типа WORD, либо числовым значением в диапазоне от
0 до 15. При больших значения числа производится операция его деления на 16 и остаток от деления определяет кодовый индекс цвета.
Слайд 35
FLOODFILL (x, y, < цвет границы>)
Процедура устанавливает стиль (тип и
цвет) штриховки произвольных замкнутых контуров. Цвет и штриховка задаются процедурой
SETFILLSTYLE (< штриховка>, < цвет>). Координаты (x,y) (выражения типа INTEGER) соответствуют любой точки внутри контура по горизонтали и вертикали относительно верхнего левого угла экрана (или окна, если оно установлено).
Слайд 36
Вывод текста.
OUTTEXTXY (x, y, < текст>)
Процедура выводит текст с заданного
места (x,y) (выражения типа INTEGER).
Параметр < текст> - выражение типа
STRING или CHAR.
Слайд 37
OUTTEXT (< текст>)
Процедура выводит текст с места текущего расположения указателя.
Параметр < текст> - выражение типа STRING или CHAR.
Слайд 38
Что бы вывести на экран текстовые выражения, полученные в результате
расчетов нужно перевести числа типа REAL или INTEGER в символьную
строку.
STR(X: <общую длину поля>, < дробную часть >,ST)
St – имя преобразованной переменной.
Пример:
Var
X:real; {Пусть X=12.567}
St:string;
…………
str(X:6:3, St);
Теперь вывод на экран представится в виде
OUTTEXTXY (x, y, st)
Слайд 39Для заданных таблиц графических координат {x, y}
Используя оператор цикла,
проводим кривую y=f(x)
For i:=1 to n-1 do
Line(x[i],y[i],x[i+1],y[i+1])