Теоретические сведения к практическому заданию
Практическое задание №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 Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|