Готовая курсовая по программированию (Отчет)

Посмотреть архив целиком

Московский Авиационный Институт (Технический Университет)


















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

По программированию






Студента гр. 13-201

Голостенова Михаила



















Москва, 2006 год


Содержание




  1. Условие задачи

  2. Словесный алгоритм (описание)

  3. Блок-схема программы

  4. Текст программы

  5. Результаты работы программы

  6. Процедуры и функции модуля graf, используемые в программе
































Процедуры и функции модуля graf, используемые в программе


В программе используются следующие процедуры и функции:


InitGraph – инициализация графического режима

CloseGraph – закрытие графического режима

SetVisualPage – установка видимой графической страницы

SetActivePage – установка активной графической страницы


SetFillStyle – задания цвета заливки объектов

SetColor – установка цвета прорисовываемой фигуры


Rectangle – отображение прямоугольника

Bar – отображение закрашенного прямоугольника

FillEllipse – отображение закрашенного эллипса

FillPoly – отображение закрашенного полигона (многоугольника)





























Условие задачи


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




































Словесный алгоритм (описание)


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


For m:=1 to 200 do

Begin

SetActivePage(p); <- смена активной графической страницы

Backgr; <- процедура отображения фона

shlupka(-1,0); <- процедура отображения шлюпки

SetVisualPage(p); <- смена видимой графической страницы

Delay(5000); <- задержка

Case p of <- смена номера графической страницы

1: p:=0;

0: p:=1;

end;


Здесь используются две процедуры – backgr, отображающая статичный фон, и shlupka (-1,0), отображающая шлюпку в координатах левее на 1 пиксел по оси Х, чем в прошлом кадре. Первичные координаты объекта указываются в процедурах:


Procedure korabl(x,y:integer);

Const

kor: array[1..4] of PointType = ((X: 1; Y: 125),

(X: 101; Y: 125), (X: 80; Y: 135), (X: 20; Y: 135));


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


Bar(kor[1].X+20,kor[1].Y,kor[1].X+75,kor[1].Y-10);

Rectangle(kor[1].X+20,kor[1].Y,kor[1].X+75,kor[1].Y-10);


Для смещения объекта по координатам, указанных в параметрах процедуры, используется цикл:


for i:=1 to SizeOf(kor) div SizeOf(PointType) do

begin

kor[i].X:=kor[i].X+x;

kor[i].Y:=kor[i].Y+y;

end;


В результате ко всем координатам вершин главного полигона (многоугольника) прибавляются параметры x и y, указанные в параметрах вызова процедуры. Все остальные элементы изображения построены на том же принципе.

Результаты работы программы
































Случайные файлы

Файл
96902.rtf
61281.rtf
45382.doc
178520.rtf
56079.rtf




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.