Автор работы: Пользователь скрыл имя, 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
МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное
учреждение высшего
«Юго-западный государственный университет»
Кафедра БМИ
КУРСОВАЯ РАБОТА
по дисциплине «___ ____Информационные технологии________________»
(наименование учебной дисциплины)
на тему «___Разработка
алгоритма и программы комплексной графики
__________________ с динамическим
объектом______________________
Специальность (направление подготовки) 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. Перечень графического
материала:____________________
______________________________
Руководитель работы (проекта) ____________________ __________________
(подпись, дата) (инициалы, фамилия)
Задание принял к исполнению ____________________________
(подпись, дата)
Введение…………………………………………………………
1.Текстовый режим
1.1 Управление экраном в текстовом режиме………………………..5
1.2 Управление динамиком……………………………………………..8
2. Графический режим
2.1 Управление экраном
в графическом режиме……………………..
2.2 Создание движущихся изображений………………………………20
3.Пояснения к программе……………………………………………….27
4. Практическое задание курсовой работы……………………………29
Заключение……………………………………………………
Библиографический список ……………………………………………..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) - генерирует звук указанной частоты в Гц.
Для справки, основной гамме
соответствуют следующие
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 яркости.
Так, максимально яркий красный цвет будет кодироваться двумя единицами в первом и четвертом битах:
Информация о работе Разработка алгоритма и программы комплексной графики с динамическим объектом