510 likes | 891 Views
Основные графические процедуры Паскаля. Выполнила : Пырьева Вера Владимировна (г. Катайск Курганской области МОУ «Средняя общеобразовательная школа № 2»). Понятие графического адаптера.
E N D
Основные графические процедуры Паскаля Выполнила: Пырьева Вера Владимировна (г. Катайск Курганской области МОУ «Средняя общеобразовательная школа № 2»)
Понятие графического адаптера Аппаратная поддержка графики персонального компьютера обеспечивается двумя основными модулями: видеоадаптером и видеомонитором. Видеомонитор – это устройство, на котором появляется выводимый текст или графические изображения. Видеоадаптеры – это электронные устройства, управляемые собственным микропроцессором.
Понятие графического адаптера При работе с экраном в графическом режиме очень важным является то, что любая информация представляет собой совокупность пикселей. Каждый пиксель определяется своими координатами, т.е. положением относительно левого верхнего угла экрана. С помощью программ можно управлять светимостью и цветом любого пикселя, т.е. создавать любое изображение.
Рассмотрение работы в графическом режиме: Для управления экраном в графическом режиме с помощью программ в Turbo Pascal существуют специальные графические процедуры и функции. Описание этих процедур и функций содержится в специальном библиотечном модуле GRAPH.
Запуск графической системы Для запуска графической системы необходимо сделать следующее: • Подключить модуль CRAPH – библиотеку графических процедур: uses graph; • Установить графический режим с помощью переменных: var GraphDriver,GraphMode,GraphColor:integer; begin GraphDriver : =Detect; InitGraph(GraphDriver,GraphMode,’’); С этого момента все графические средства доступны пользователю.
CloseGraph Закрывает графический режим, т. е. освобождает память, распределенную под драйверы графики и файлы шрифтов, и восстанавливает текстовый режим работы экрана.
Тема 1. Система координат. Вывод точки и линии. Цель: познакомиться с системой координат, процедурами вывода точки и линии, научиться применять данные понятия.
Для построения изображения на экране используется система координат. Отсчет начинается от верхнего левого угла экрана, который имеет координаты (0,0). Значение Х увеличивается слева направо до (639,0), значение Y увеличивается сверху вниз до(0,349).
PutPixel (X,Y,Color); Выводит точку цветом Color с координатами X, Y. PutPixel(10,30,red) или PutPixel(10,30,4),
Line (X1, Y1, X2, Y2); Рисует линию от точки (X1, Y1) до точки (X2, Y2). Line (5, 5, 100, 100);
Задание 1. Построить линию с координатами(50,80,100,100) и красную точку с координатами (200,200). program z1; uses graph; var GraphDriver,GraphMode,GraphColor: integer; begin GraphDriver : =Detect; InitGraph(GraphDriver,GraphMode,’’); PutPixel(200,200,red); Line(50,80,100,100); Readln; CloseGraph; End.
Практическая часть Построить • прямоугольный треугольник, • параллелограмм с диагоналями, • равнобедренную трапецию.
Тема 2. Цветовая шкала. Окрашивание графических фигур и экрана. Тип линии. Цель: познакомиться с таблицей цветов и научиться окрашивать объекты и экран, использовать различные типы линии.
SetLineStyle(ТипЛинии, Образец, Толщина); Процедура устанавливает стиль вычерчиваемых контуров и линии. Например: SetLineStyle(CenterLn, 2, 3);
Практическая часть Задание 1 Используя тип линии, толщину и цвет построить: А) Пирамиду (невидимая часть фигуры выполнена из точек и тире). Б )Призму с основанием равнобедренная трапеция(невидимая часть фигуры выполнена штриховой, толщина нормальная). В) Пирамиду с основанием правильный пятиугольник (невидимая часть фигуры выполнена из точек, контур основания - бирюзовый, видимая часть чертежа - красный)
Задание 2 Выполнить рисунок в цвете: горы со снежными вершинами, залив, кораблик на воде.
Тема 3. Построение многоугольников Цель: научиться строить многоугольники с использованием процедур и функций.
Rectangle (X1, Y1, X2, Y2); Рисует контур прямоугольника, используя текущий цвет и тип линий. X1, Y1 – координаты левого верхнего угла прямоугольника; X2, Y2 - координаты правого нижнего угла прямоугольника. Rectangle (100, 120, 200, 100);
Bar (X1, Y1, X2, Y2); Строит прямоугольник, закрашенный текущим цветом с использованием текущего стиля (орнамента, штриховки). X1, Y1, X2, Y2 – координаты левого верхнего и правого нижнего углов прямоугольника.
Bar3D (X1, Y1, X2, Y2, Glubina,Top); Строит параллелепипед, используя текущий стиль и цвет. X1, Y1, X2, Y2 – координаты левого верхнего и правого нижнего углов передней грани; Glubina – ширина боковой грани (отсчитывается по горизонтали); Top – признак включения верхней грани (если True – верхняя грань вычерчивается, False – не вычерчивается).
Практическая часть Построить в одной программе: • зеленый треугольник с помощью процедуры Line; • синий четырехугольник с помощью процедуры Rectangle; • желтый прямоугольник с помощью процедуры Bar; • зеленый прямоугольник с помощью процедуры Bar3D.
Тема 4. Построение дуги, окружности и сектора Цель: научиться строить фигуры, содержащие окружность, сектор, дугу.
Circle (X, Y, R); Рисует текущим цветом окружность радиуса R с центром в точке (X, Y).
Arc (X,Y,U1,U2,R); Строит дугу окружности текущим цветом с текущими параметрами линии. X, Y – координаты центра дуги; U1 – угол до начальной точки дуги, отсчитываемый против часовой стрелки от горизонтальной оси, направленной слева направо; U2 – угол до конечной точки дуги, отсчитываемый так же, как U1; R – радиус дуги.
Ellipse (X, Y, U1, U2, XR, YR); Рисует дугу эллипса текущим цветом. X, Y – координаты центра эллипса; U1, U2 – углы до начальной и конечной точек дуги эллипса (см. процедуру Arc); XR, XY – горизонтальная и вертикальная полуоси эллипса.
Fill Ellipse (X, Y, U1, U2, XR, YR); Рисует заштрихованный эллипс, используя X, Y как центр и XR, YR как горизонтальную и вертикальную полуоси эллипса.
Sector (X, Y, U1, U2, XR, YR); Рисует и штрихует сектор эллипса радиусом XR, YR с центром в X, Y от начального угла U1 к конечному углу U2.
Для построение многократно повторяющихся геометрических фигур можно использовать оператор цикла for.
Написать программу, которая выводит на экран 15 концентрированных окружностей разного цвета х: =100; у: =100; R: =5; Dr: =5; For i: =1 to 15 do begin SetColor (i); Circle(x,y,r); R:=r+dr; End;
Практическая часть • Выполнить в цвете: улыбающийся смайлик, печальный смайлик, строгий смайлик. • Выполнить программу, выводящую на экран олимпийские кольца (используя циклы). • Выполнить программу “Рупор”, выводящую на экран 10 колец, радиус следующего кольца увеличивается на 20, координата по оси Х изменяется на 15. Кольца разного цвета(используя циклы). • Задание 5. Выполнить фрагмент кольчуги: пять рядов по пять штук, каждый ряд разным цветом (используя циклы).
Практическая часть Задание 1. Выполнить в цвете: улыбающийся смайлик, печальный смайлик, строгий смайлик.
Практическая часть Задание 2. Выполнить программу, выводящую на экран олимпийские кольца (используя циклы).
Практическая часть Задание 3. Выполнить фрагмент кольчуги: пять рядов по пять штук, каждый ряд разным цветом (используя циклы).
Тема 5: Работа с текстом Цель: научиться пользоваться различными шрифтами, выполнять надписи.
OutText(‘Текст’); Процедура для вывода текста. Выводит строку текста, начиная с текущего положения.
OutTextXY(x,y,’текст’); Вывод текста в точку с координатами точки вывода текста x и y.
Типы шрифтов • Растровый, задается матрицей точек • Векторный, задается рядом векторов составляющих символов. Шрифты размещены в отдельных файлах, имеющих расширение CHR. Активизация шрифта осуществляется специальной процедурой.
Шрифты SmallFont, SansSerifFont, GothicFont являются векторными и не содержат русских символов, поэтому их применяют для надписей на латинском языке. Стандартные шрифты
SetTextStyle (Font; Direction,CharSize); Font- выбранный шрифт(см. таблицу); Direction- направление надписи (горизонтальное - 0, вертикальное - 1); CharSize- размер выводимых символов. SetTextStyle(0,1,1); - Буквы стандартной величины. SetTextStyle(0,0,2); - Размер букв увеличен.
SetTextJustify(Horiz,Vert); Процедура для выравнивание текста Horiz- выравнивание по горизонтали Vert- выравнивание по вертикали.
Примеры использования процедуры выравнивания SetTextJustify(CenterText,CenterText); SetTextJustify(1,0);
Практическая часть Задание 1. Выполнить в цвете флаги и подписать: А) Россия, Германия, Италия;
Практическая часть Задание 1. Выполнить в цвете флаги и подписать: Б) Швеция, Финляндия;
Практическая часть Задание 1. Выполнить в цвете флаги и подписать : В) Япония (красная окружность в центре, окрасится только контур), Турция (желтый полумесяц, окрасится только контур).