Автор работы: Пользователь скрыл имя, 04 Января 2012 в 12:53, курсовая работа
Представление данных на мониторе компьютера в графическом виде впервые было реализовано в середине 50-х годов для больших ЭВМ, применявшихся в научных и военных исследованиях. С тех пор графический способ отображения данных стал неотъемлемой принадлежностью подавляющего числа компьютерных систем, в особенности персональных.
Существует специальная область информатики, изучающая методы и средства создания и обработки изображений с помощью программно-аппаратных вычислительных комплексов, – компьютерная графика. Она охватывает все виды и формы представления изображений, доступных для восприятия человеком либо на экране монитора, либо в виде копии на внешнем носителе. [21]
Курсовая
работа
Графические возможности языка Pascal.
Введение.
Представление данных на мониторе компьютера в графическом виде впервые было реализовано в середине 50-х годов для больших ЭВМ, применявшихся в научных и военных исследованиях. С тех пор графический способ отображения данных стал неотъемлемой принадлежностью подавляющего числа компьютерных систем, в особенности персональных.
Существует
специальная область
Все
современные языки
Целью данной работы будет разработка методики изучения темы «Графические примитивы».
Для этого предполагается решить следующий класс задач:
Работа состоит из пяти глав, в первой и второй приводятся некоторые теоретические основы по компьютерной графике и применению её в Pascal. В третьей главе проводиться анализ учебно-методической литературы. В четвертой главе строятся некоторые методические рекомендации к изучению темы, а в пятой главе приводятся конспекты занятий.
Почти с момента создания ЭВМ появилась и компьютерная графика, которая сейчас считается неотъемлемой частью мировой технологии. Поначалу это была лишь векторная графика – построение изображения с помощью так называемых “векторов” - функций, которые позволяют вычислить положение точки на экране или бумаге. Например, функция, графиком которой является круг, прямая линия или другие более сложные кривые. Совокупность таких “векторов” называется векторным изображением. [9]
Однако появились и другие виды графики: растровая, фрактальная, трехмерная. Однако наиболее часто используемыми были и остаются растровая и векторная графика.
Для дальнейшего рассмотрения проблемы постройки объектов с помощью векторной графики, необходимо уяснить разницу между двумя основными видами компьютерной графики - растровой и векторной.
Векторная графика описывает изображения с использованием прямых и изогнутых линий, называемых векторами, а также параметров, описывающих цвета и расположение. Например, изображение снеговика строиться с помощь трех кругов, т.е. координат центра, радиусов, также во внимание берется цвета контура и заливки.
При редактировании элементов векторной графики изменяются параметры прямых и изогнутых линий, описывающих форму этих элементов. Можно переносить элементы, менять их размер, форму и цвет, это не отразится на качестве их визуального представления. Достоинством векторной графики является то, что она не зависит от разрешения, т.е. может быть показана в разнообразных выходных устройствах с различным разрешением без потери качества.
В отличие от векторной, растровая графика описывает изображения с использованием цветных точек, называемых пикселями, расположенных на сетке. Например, изображение снеговика уже описывается конкретным расположением и цветом каждой точки сетки, как в мозаике.
При редактировании растровой графики Вы редактируете пиксели, а не линии. Растровая графика зависит от разрешения, поскольку информация, описывающая изображение, прикреплена к сетке определенного размера. При редактировании растровой графики, качество ее представления может измениться. Вывод растровой графики на устройства с более низким разрешением, чем разрешение самого изображения, понизит его качество [3], [5].
С развитием компьютерной техники и технологий появилось множество способов постройки графических объектов. В зависимости от видов компьютерной графики под этим термином понимаются, как и пиксели или спрайты (в растровой графике), так и векторные объекты, такие как круг, квадрат, линия, кривая и т.д. (в векторной графике). В векторной графике также существует понятие графический примитив. Под графическими примитивами понимаются минимальные графические объекты, которые составляют векторный рисунок — подобно кирпичам, из которых строится здание [2]. Такими графическими примитивами являются: точка, отрезок, окружность, эллипс, дуга, сектор, прямоугольник, параллелепипед и некоторые другие.
Существует
множество программ для редактирования
векторной графики –
Как правило, возможности различных языков программирования, в свете рассматриваемых задач, одинаковы. Поэтому будем рассматривать векторную графику, взяв за основу язык программирования Pascal.
Большинство
языков программирования имеют свои
стандартные графические
В модуле GRAPH содержится 79 графических процедур, функций, десятки стандартных констант и типов данных. В состав модуля входит ряд программ драйверов для наиболее распространенных видеоадаптеров: CGA, MCGA, EGA, VGA, HERCULES, AT&T, 3270 PC. Эти драйверы хранятся в файлах с расширением BGI [4].
Для
работы графики её надо инициализировать,
а для этого необходимо определить
возможный графический режим. Это
можно сделать с помощью
Uses Graph
…
Procedure InitGraph;
Var GR,GM: Integer;
Begin
GR:=detect;
InitGraph(GR,GM,'c:\\BP\TPU); {вызов процедуры GRAPH}
End;
…
BEGIN
InitGraph;
… Графические операторы …
CloseGraph;
END.
INITGRAPH
(драйвер, режим, 'путь' ) - подключает
графический режим. Драйвер - это
переменная целого типа, определяющая
тип графического дисплея.
DETECT
- режим автоматического
CLOSEGRAPH
- прекращает работу
Таким образом все графические
операторы работают только при
инициализированном
Для вывода графических примитивов на экран следует использовать следующие процедуры модуля Graph.
Вывод точки:
PUTPIXEL(x, y, цвет) - выводит точку с координатами (x, y);
Установка цвета:
SETCOLOR
(цвет) - устанавливает текущий цвет
для выводимых линий и
SETBKCOLOR (цвет) - устанавливает цвет фона,
где цвет- это число от 0 до 15 (Табл. 1).
Цвет: | |
0 | черный |
1 | синий |
2 | зеленый |
3 | голубой |
4 | красный |
5 | лиловый |
6 | коричневый |
7 | светло-серый |
8 | темно-серый |
9 | светло-синий |
10 | светло-зеленый |
11 | светло-голубой |
12 | светло-красный |
13 | светло-лиловый |
14 | желтый |
15 | белый |
Управление курсором вывода:
MOVETO(x,y)
- переводит курсор в позицию
x,y, точка при этом не
Рисование графических примитивов, с цветом установленных операторами SETCOLOR и SETBKCOLOR:
LINE (x1, y1, x2, y2) – рисует линию от точки с координатами (x1, y1) до точки с координатами (x2,y2).
LINETO(x, y) - рисует линию от текущей позиции курсора до x, y;
LINEREL(Dx,
Dy) - рисует линию от текущей
позиции на относительное
CIRCLE(x, y, r) - выводит окружность, с центром x, y, радиуса r;
ARC(x, y, начальный угол, конечный угол, r) - выводит дугу (углы измеряются в градусах против часовой стрелки);
RECTANGLE(x1,y1,x2,y2) - прямоугольник, где x1, y1 - координаты левого верхнего угла, x2, y2 - правого нижнего угла;
BAR(x1, y1, x2, y2) - закрашенный прямоугольник;
BAR3D(x1, y1, x2, y2, глубина, false или true) - параллелепипед;
где x1, y1 - координаты левого верхнего угла; x2, y2 - координаты правого нижнего угла, true - верхняя грань есть, false - верхняя грань отсутствует.
FILLELLIPSE(x, y, Rx, Ry) - закрашенный эллипс;
SECTOR(x, y, нач.угол, кон.угол, Rx, Ry) - сектор закрашенный;
SETFILLESTYLE(штриховка
(Табл. 2), цвет) - каким цветом или
какими штрихами будет
Штриховка: | |
0 | фоном |
1 | сплошная |
2 | _ _ _ |
3 | //// |
4 | толстыми/// |
5 | \\\\ |
6 | толстыми \\\ |
7 | ++++ |
8 | x x x |
9 | квадратами |
10 | редкими точками |
11 | частыми точками |
12 | пользовательские |