Графические возможности языка Pascal

Автор работы: Пользователь скрыл имя, 04 Января 2012 в 12:53, курсовая работа

Описание

Представление данных на мониторе компьютера в графическом виде впервые было реализовано в середине 50-х годов для больших ЭВМ, применявшихся в научных и военных исследованиях. С тех пор графический способ отображения данных стал неотъемлемой принадлежностью подавляющего числа компьютерных систем, в особенности персональных.

Существует специальная область информатики, изучающая методы и средства создания и обработки изображений с помощью программно-аппаратных вычислительных комплексов, – компьютерная графика. Она охватывает все виды и формы представления изображений, доступных для восприятия человеком либо на экране монитора, либо в виде копии на внешнем носителе. [21]

Работа состоит из  1 файл

курсовая.doc

— 132.50 Кб (Скачать документ)

 
 
 
 
 
 
 
 
 
 
 
 
      Курсовая  работа

    Графические возможности языка Pascal.

Содержание

 

Введение.

     Представление данных на мониторе компьютера в  графическом виде впервые было реализовано в середине 50-х годов для больших ЭВМ, применявшихся в научных и военных исследованиях. С тех пор графический способ отображения данных стал неотъемлемой принадлежностью подавляющего числа компьютерных систем, в особенности персональных.

     Существует  специальная область информатики, изучающая методы и средства создания и обработки изображений с  помощью программно-аппаратных вычислительных комплексов, – компьютерная графика. Она охватывает все виды и формы  представления изображений, доступных для восприятия человеком либо на экране монитора, либо в виде копии на внешнем носителе. [21]

     Все современные языки программирования включают в себя поддержку графики. Поэтому необходимо при изучении темы программирования включать в изучение тему «Использование графических возможностей языка программирования», данная тема позволяет:

    1. сделать изучение программирования эмоционально привлекательным;
    2. расширить спектр решаемых задач.

     Целью данной работы будет разработка методики изучения темы «Графические примитивы».

     Для этого предполагается решить следующий  класс задач:

    1. определить содержание темы;
    2. проанализировать общеобразовательные учебники, в которых рассматривается данная тема;
    3. составить методические рекомендации к изучению темы;
    4. разработать уроки по теме «Использование графических возможностей языков программирования».

     Работа  состоит из пяти глав, в первой и  второй приводятся некоторые теоретические  основы по компьютерной графике и  применению её в Pascal. В третьей главе  проводиться анализ учебно-методической литературы. В четвертой главе строятся некоторые методические рекомендации к изучению темы, а в пятой главе приводятся конспекты занятий.

 

Глава 1. Векторная  компьютерная графика. Графические примитивы.

     Почти с момента создания ЭВМ появилась и компьютерная графика, которая сейчас считается неотъемлемой частью мировой технологии. Поначалу это была лишь векторная графика – построение изображения с помощью так называемых “векторов” - функций, которые позволяют вычислить положение точки на экране или бумаге. Например, функция, графиком которой является круг, прямая линия или другие более сложные кривые. Совокупность таких “векторов” называется  векторным изображением. [9]

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

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

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

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

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

     При редактировании растровой графики Вы редактируете пиксели, а не линии. Растровая графика зависит от разрешения, поскольку информация, описывающая изображение, прикреплена к сетке определенного размера. При редактировании растровой графики, качество ее представления может измениться. Вывод растровой графики на устройства с более низким разрешением, чем разрешение самого изображения, понизит его качество [3], [5].

     С развитием компьютерной техники  и технологий появилось множество  способов постройки графических объектов. В зависимости от видов компьютерной графики под этим термином понимаются, как и пиксели или спрайты (в растровой графике), так и векторные объекты, такие как круг, квадрат, линия, кривая и т.д. (в векторной графике). В векторной графике также существует понятие графический примитив. Под графическими примитивами понимаются минимальные графические объекты, которые составляют векторный рисунок — подобно кирпичам, из которых строится здание [2].  Такими графическими примитивами являются: точка, отрезок, окружность, эллипс, дуга, сектор, прямоугольник, параллелепипед и некоторые другие.

     Существует  множество программ для редактирования векторной графики – графические  редакторы, однако зная приемы программирования, создаются быстро такие элементы, на которые в графическом редакторе уйдет много времени и не будет возможности многократного повторения и внесения быстрых изменений в рисунок, т.е. программирование дает возможность управлять созданием графики на более низком уровне. Поэтому рассмотрение графики, несомненно, разнообразит тему «Программирование», позволит рассмотреть класс интересных задач, поспособствует развитию творческих способностей.

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

 

Глава 2. Графические  возможности языка  программирования Pascal.

     Большинство языков программирования имеют свои стандартные графические библиотеки. Так, у Basic графические команды являются встроенными; система программирования Turbo Pascal содержит графическую библиотеку (модуль Graph.tpu), имеющую в своем составе процедуры и функции обработки простейших графических примитивов.

       В модуле  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 (драйвер, режим,  'путь' ) - подключает  графический режим. Драйвер - это  переменная целого типа, определяющая  тип графического дисплея. Режим  - это переменная целого типа, определяющая режим работы графического адаптера. Путь - указывает путь программам с TPU.

     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) - рисует линию от текущей  позиции на относительное расстояние 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  пользовательские

Информация о работе Графические возможности языка Pascal