Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Теоретические сведения к практическому заданию

Практическое задание №13

Тема: Проведение исследования на основе готовой компьютерной модели

Цель: провести исследование на основе готовой компьютерной модели, изучить на основе готовой программы графические операторы языка Pascal и научиться составлять простейшие программы с использованием графических операторов.

Оборудование и материалы: практическое задание, компьютер, программа Турбо Паскаль.

 

Теоретические сведения к практическому заданию

Основная часть средств Pascal размещена на стандартных модулях. Модуль — это библиотека, которая содержит константы, описания типов данных, переменные и функции.

Наиболее часто используются модули System, Dos, Graph, Crt и др.

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

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

Инициализация графического режима выполняется процедурой InitGraph:

InitGraph((драйвер):integer; <режим>:integer; <путь к файлу>: string;.

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

Для установки цвета изображения и окна применяются процедуры SetColor и SetBkColor соответственно.

Процедура PutPixel(X,Y:integer; Color:word); отображает точку на экране, где X и Y — экранные координаты точки. Color - её цвет.

Процедура Line(Xl,Yl,X2,Y2: integer); выводит на экран отрезок прямой линии. Здесь (X1,Y1)—координаты начальной точки, a (X2,Y2) — координаты конечной точки отрезка.

Для построения отрезков можно применять также следующие процедуры:

LineTo(X,Y); — проводит отрезок из текущей точки до точки с координатами (X,Y);

LineRel(dX,dY|; — проводит отрезок из текущей точки до точки, удаленной от нее на расстояние (dX,dY).

Линии можно вычерчивать самых различных стилей: тонкие, широкие, штриховые, пунктирные и т. д. Процедура SetLineStyle(<тип линии>:word;<yзop(шaблон)>: word;(толщина линии):word); производит установку стиля.

Процедура Rectangle(Xl,Yl,X2,Y2: integer); строит изображение прямоугольника на плоскости.

Здесь XI,Y1— координаты левого верхнего угла, X2,Y2 — координаты правого нижнего угла прямоугольника. При этом используется текущий цвет (SetColOf) и стиль линии (SetLineStyle). Область внутри прямоугольника не закрашена и совпадает по цвету с фоном.

Процедура Bar(Xl,Yl,X2,Y2:integer); позволяет строить более эффектные прямоугольники. Она рисует прямоугольник, внутренняя область которого залита по текущемушаблону.

Процедура SetFillStyle(<шаблон>:word;<цвет>:word); устанавливает шаблон и цвет заполнения замкнутой фигуры.

Процедура Arc(X,Y:integer; al, a2,R: word); строит дугу.

(X,Y)—центр окружности дуги,

al, a2 — начальный и конечный углы, отсчитываемые от горизонтальной оси против часовой стрелки,

R—радиус.

Если al=0o, а а2=360°, то вычерчивается полная окружность.

Процедура Ellipse (X,Y: integer; al,a2,Rx,Ry: word); предназначена для построения эллиптических дуг. Здесь (X,Y)—центр эллипса, al,a2 — начальный и конечный углы, отсчитываемые от горизонтальной оси против часовой стрелки, Rx и Ry — горизонтальная и вертикальная полуоси. Если al=0°, а а2 = 360, то вычерчивается ПОЛНЫЙ ЭЛЛИПС.

Процедура FillEllipse (X,Y: integer; Rx,Ry: word); строит полный закрашенный эллипс.

Процедура Circle (X,Y: integer; R: word); выводит на экран изображение окружности с центром (X,Y) и радиусом R. Окружность рисуется цветом, заданным SetColor.

Процедура PieSlice (X,Y: integer; al, n2,R: word); выводит на экран изображение закрашенного сектора круга, используя в качестве центра круга точку (X,Y), начальный угол al, конечный угол a2 и радиус R. Контур сектора высвечивается текущим цветом. При заполнении сектора используются шаблон и цвет, установленные процедурой SetFillStyle. Если al =0°, а а2=360°, то на экран выводится закрашенная окружность.

Процедура Sector (X,Y: integer; al,a2,Rx;Ry: word); строит закрашенный сектор эллипса.

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

1. Переключить монитор в графический режим с помощью оператора InitGraph (Driver, mode, <путь к драйверу>).

2. Установить разрешающую способность экрана по умолчанию режимом Detect или процедурой SetGraphMode. Режим Detect устанавливает разрешающую способность экрана 640*480 пикселей, т.е. координата Х может принимать значения от 0 по 639, а У от 0 по 479.

3. Очистить и инициализировать графический экран процедурой ClearDevice.

4. Установить цвет фона оператором SetBkColor и цвет изображения оператором SetColor.

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

6. Вывести на экран закрашенные фигуры.

7. Вывести тексты и подписи на экран. Для использования операторов Write и Writeln в графическом режиме необходимо выполнить следующую операцию присваивания:DirectVideo:= FALSE; Или использовать процедуру Outtextxy(x,y,st), которая выводит строку st, начиная с позиции x, y.

Цвета в операторах задаются с помощью своих кодов:

0 – черный; 4 – красный; 8 – темно-серый; 12 – ярко-красный;

1 – синий; 5 – пурпурный; 9 – ярко-синий; 13 – ярко-пурпурный;

2 –зеленый; 6 – коричневый; 10 – ярко-зеленый; 14 – желтый;

3 – бирюзовый 7 – светло-серый; 11 – ярко-бирюзовый; 15 – белый.

 

Цифровое кодирование цвета соответствует последовательности IRGB для 0-3 битов. Бит 3 – бит интенсивности I, бит 2 – бит красного R, бит 1 – бит зеленого G, бит 0 – бит синего B. Например, 11=8+2+1, т.е. биты 3,1,0 – интенсивный сине-зеленый (бирюзовый).

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...