Разработка алгоритма и программы комплексной графики с динамическим объектом

Автор работы: Пользователь скрыл имя, 23 Сентября 2013 в 21:13, курсовая работа

Описание работы

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

Содержание работы

Введение………………………………………………………………….4
1.Текстовый режим
1.1 Управление экраном в текстовом режиме………………………..5
1.2 Управление динамиком……………………………………………..8
2. Графический режим
2.1 Управление экраном в графическом режиме……………………..9
2.2 Создание движущихся изображений………………………………20
3.Пояснения к программе……………………………………………….27
4. Практическое задание курсовой работы……………………………29
Заключение………………………………………………………………..33
Библиографический список ……………………………………………..34

Файлы: 1 файл

kursovaya.doc

— 1.88 Мб (Скачать файл)

МИНОБРНАУКИ РОССИИ 

Федеральное государственное бюджетное  образовательное

учреждение высшего профессионального  образования

«Юго-западный государственный университет»

 

Кафедра      БМИ        

 

                              КУРСОВАЯ РАБОТА

 

по дисциплине  «___ ____Информационные технологии________________»

(наименование  учебной дисциплины)

на тему «___Разработка алгоритма и программы комплексной графики                                  

__________________ с динамическим объектом________________________»

 

Специальность (направление подготовки)   201000  

(код, наименование)

 

              Биотехнические системы и технологии   

 

Автор работы (проекта)__Останкова  О.В .          _________________

(инициалы, фамилия)    (подпись, дата)

Группа БМ-11

 

Руководитель работы (проекта)_Шаталова О.В.     _________________

(инициалы, фамилия)    (подпись, дата)

 

Работа (проект) защищена ________________________

(дата)

 

Оценка_____________________

 

 

Председатель  комиссии _________________________ ____________________

(подпись, дата)    (инициалы, фамилия)

 

Члены комиссии _________________________ __________________________

(подпись, дата)    (инициалы, фамилия)

 

_______________________ __________________________

(подпись, дата)    (инициалы, фамилия)

 

________________________ __________________________

(подпись, дата)    (инициалы, фамилия)

 

 

 

Курск, 2012

МИНОБРНАУКИ РОССИИ 

Федеральное государственное  бюджетное образовательное

учреждение высшего  профессионального образования

«Юго-западный государственный  университет»

 

Кафедра      БМИ       

ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ (ПРОЕКТ)

Студент (слушатель) ______201000__________ шифр   группа БМ-11

                   (фамилия, инициалы)

1. Тема  разработка алгоритма и программы комплексной графики                                  

__________________ с динамическим объектом     

2. Срок представления  работы (проекта) к защите «__»  ____2012 г.

3. Исходные данные (для проектирования, для научного исследования):

Задание руководителя          

           

                                                  

4. Содержание  пояснительной записки курсовой  работы (проекта):

4.1.Текстовый режим

4.2.Управление экраном в текстовом режиме

4.3.Управление динамиком

4.4.Графический режим

4.5.Управление экраном в графическом режиме

4.6.Создание движущихся изображений

4.7.Практическое задание курсовой работы

5. Перечень графического  материала:__________________________________

 

 

__________________________________________________________________

Руководитель  работы (проекта) ____________________ __________________

(подпись, дата)   (инициалы, фамилия)

Задание принял к исполнению ____________________________

(подпись, дата)

 

Содержание

 

 

Введение………………………………………………………………….4

1.Текстовый режим

1.1 Управление экраном в текстовом режиме………………………..5

1.2 Управление динамиком……………………………………………..8

2. Графический режим

2.1 Управление экраном  в графическом режиме……………………..9

2.2 Создание движущихся  изображений………………………………20

3.Пояснения к программе……………………………………………….27

4. Практическое задание курсовой работы……………………………29

Заключение………………………………………………………………..33 

Библиографический список ……………………………………………..34

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Введение

 

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.1 Управление экраном в текстовом режиме.

 

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

Обычно программа на Borland Pascal использует тот же текстовый режим, что и MS DOS, т.е. режим, при котором на экране выделяется 25 строк и 80 столбцов.

 

Рис. 8.1. Схема управления экраном в текстовом режиме.

 

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

• код символа по таблице ASCII, которому соответствует матрица изображения символа в специальной таблице знакогенератора;

• байт атрибут, в котором хранится информация о цвет символа и цвете фона данного знакоместа (рис. 8.1).

Изображение на экране получают с  помощью электронного луча, который обходит экран слева направо и сверху вниз с заданной частотой развертки.

Каждая точка при этом высвечивается цветом символа или цветом фона знакоместа, которому она принадлежит. Информация о знакоместе выбирается из видеобуфера. Таким образом, если изменить информацию в видеобуфере, то изменится и изображение на экране. Цвета в текстовом режиме формируются следующим образом: три бита управляют включением и выключением трех основных цветов (синего, зеленого и красного) и один бит - яркостью (табл. 8.1).

Таблица 8.1

Ресурсы модуля crt для управления экраном.

Управление экраном  с помощью ресурсов модуля crt базируется на понятии «окно».

Окно - часть экрана прямоугольной формы. В момент получения программой управления весь экран считается окном 25x80 знакомест. Программист может определять на экране новые окна и управлять как цветом символов и фона окна, так и размещением информации в окне. Вывод информации в текстовом режиме осуществляется стандартными процедурами Write и WriteLn текущими цветом символа и цветом фона.

При выводе четыре символа интерпретируются особым образом:

#7 - звуковой сигнал;

#8 - перемещение курсора влево  на один символ;

#10 - перемещение курсора на строку вниз (если курсор находился в последней строке, то содержимое экран «прокручивается» на строку вверх);

#13 - перемещение курсора в начало  текущей строки.

 

 

 

Рис. 8.2. Текущее окно на экране и относительная адресация символа в окне

 

Процедуры начинают вывод с того места, где стоит курсор. Координаты курсора определяются относительно верхнего левого угла текущего окна (рис. 8.2). Для управления окнами и размещения в них информации модуль crt содержит следующие процедуры и функции.

1. Процедура Window(xl, у1, х2, y2:word) - определяет на экране окно. Местоположение и размеры окна определяются координатами верхнего левого (х1, у1) и нижнего правого (х2, у2) углов прямоугольника. Координаты текущего окна модуль crt хранит в специальных переменных:

WindMin, WindMax:word.

Откуда координаты текущего окна можно определить, применив функции 1о и hi, которые выделяют из слова младший и старший байты соответственно:

xl=Lo(WindMin) - координата х верхнего левого угла;

у1=Hi(WindMin) - координата у верхнего левого угла;

x2=Lo(WindMax) - координата х нижнего правого угла;

y2=Hi(WindMax) - координата у нижнего правого угла.

После объявления окна курсор устанавливается в верхний левый угол окна.

2. Процедура TextColor(color:byte) - устанавливает текущий цвет вывода символов в окне.

3. Процедура TextBackGround(color:byte) - устанавливает текущий цвет фона окна. Цвета для процедур TextColor и TextBackGround можно задавать, используя специальные константы модуля crt:

Black=0; {черный}   DarkGrey=8; {темно-серый}

Blue=1; {синий}    LightBlue=9; {светло-синий}

Green=2; {зеленый}   LightGreen=10; {светло-зеленый}

Cyan=3; {голубой}   LightCyan=11; {светло-голубой}

Red=4; {красный}   LightRed=12; {розовый}

Magenta=5; {фиолетовый}  LightMagenta=13; {сиреневый}

Brown=6; {коричневый}  Yellow=14; {желтый}

LightGrey=7; {светло-серый}  White=15; {белый}

Blink=128; {мерцание}

Текущие цвета символа и фона в виде байта атрибута хранятся в переменной TextAttr:word. Текущий цвет фона из этой переменной определяется как

(TextAttr div 16) mod 8,

a текущий цвет символа  как

TextAttr mod 16.

4. Процедура ClrScr - очищает окно, выводя в него пробелы с текущим атрибутом. После этого курсор устанавливается в верхний левый угол окна. Если окно не установлено, то очищается весь экран. Эту процедуру обычно используют после определения окна и атрибута его символов, чтобы обозначить окно на экране.

5. Функция WhereX:word - возвращает координату х текущего положения курсора в окне.

6. Функция WhereY:word - возвращает координату у текущего положения курсора в окне.

7. Процедура GotoXY(x,y:word) - перемещает курсор на знакоместо с координатами x и у.

Модуль crt содержит также процедуры, работающие с текущей строкой (строкой, в которой стоит курсор).

8. Процедура DelLine - удаляет текущую строку.

9. Процедура InsLine - вставляет строку, сдвигая остальные строки вниз.

10. Процедура ClrEol – стирает часть строки справа от курсора.

 

 

1.2 Управление динамиком

 

Модуль crt также содержит процедуры, обеспечивающие управление динамиком.

1. Процедура Sound (f:word) - генерирует звук указанной частоты в Гц.

Для справки, основной гамме  соответствуют следующие частоты: нота «до» основной октавы - 330 Гц, далее - 349 Гц, 370 Гц, 392 Гц, 415 Гц, 440 Гц, 466 Гц, 494 Гц, 523 Гц, 554 Гц, 588 Гц, 622 Гц и, наконец, нота «до» следующей октавы - 660 Гц. Частоты нот других октав кратны частотам основной.

2. Процедура NoSound - выключает динамик.

3. Процедура Delaу (t:word) - обеспечивает задержку на заданный интервал времени, мс.

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

4. Процедура GetTime (VarHour, Minute, Second, Sec100:word) – возвращает текущее время суток. Определена в модуле Dos.

 

2.1 Управление экраном в графическом режиме

 

В графическом режиме программист получает возможность  управлять каждой точкой (пикселем) экрана. Координаты точки определяются относительно верхнего левого угла. Каждая точка экрана при этом может высвечиваться одним из доступных цветов. Информация о цвете точки хранится в видеобуфере.

Количество цветов зависит  от количества бит, отведенных в видеобуфере  под одну точку. Рассмотрим основные варианты.

1. «1 точка - 1 бит» - монохромный режим: каждая точка высвечивается либо основным цветом, если в видеобуфере для точки записана 1, либо цветом фона, если в видеобуфере записан 0.

2. «1 точка - 2 бита»  - режим с двумя трехцветными  палитрами:

Палитра 0:      Палитра1:

01 - зеленый;     01 - светло-голубой;

10 - красный;    10 - сиреневый;

11 - коричневый.    11 - белый.

Если в буфере записана комбинация 00, то точка высвечивается  цветом фона.

3. «1 точка - 4 бита»  - режим, использующий 16-цветную палитру.  В этом режиме в отличие  от предыдущих в видеобуфер заносится не цвет точки, а номер регистра палитры, в котором записан нужный цвет (рис. 8.5).

Для записи цвета используется 6 бит по схеме RGBrgb, причем первые три бита кодируют 2/3 яркости цвета, а вторые три бита - оставшуюся 1/3 яркости.

Так, максимально яркий красный цвет будет кодироваться двумя единицами в первом и четвертом битах:

Информация о работе Разработка алгоритма и программы комплексной графики с динамическим объектом