«Графические возможности языка программирования Паскаль»
Существует множество программ для работы с компьютерной графикой, однако программирование дает возможность управлять созданием графики на более низком уровне и легко создавать повторяющиеся графические обьекты, которые затруднительно создавать средствами обычного графического редактора.
Цель нашей исследовательской работы: рассмотреть графические возможности среды программирования Turbo Pascal, а также разработать игровую программу на основе рассмотренных возможностей. Задачи: 1.Провести анализ литературы по данной теме. 2. Рассмотреть виды компьютерной графики. 3. Рассмотреть и показать практическое применение функций среды программирования Turbo Pascal для работы с компьютерной графикой. 4. Разработать компьютерную игру на основе рассмотренных команд в среде программирования Turbo Pascal.
Развивающие
Виды компьютерной графики Растровая графика (пиксели или спрайты) Векторная графика(круг, квадрат, линия,кривая и т.д.)
Инициализация (включение) графического режима Путь к драйверу InitGraph (gd,gm,p) Графический драйвер (gd=9) y Режим (разрешение) c:\trans\bp\bgi gm=0 - низкое (640x200) gm=1 - среднее (640x350) gm=2 - высокое (640x480)
Выключение графического режима CIoseGraph
Цвет SetColor(c) Цвет линии
Изображение точек Координаты PutPixel (x, y, c); Цвет x y
Стиль линии Определяется шаблоном Шаблон SetLineStyle(s, p, t) Стиль Толщина 1 Тонкая 3 Толстая
Отрезок прямой линии Line (x1,y1, x2,y2)
Отрезок до точки LineTo (x,y) Текущий указатель до исполнения команды Текущий указатель после исполнения команды
Перемещение текущего указателя в точку с координатами (x,y) MoveTo (x,y)
Отрезок (вектор) LineRel (dx, dy) Текущий указатель до исполнения команды Текущий указатель после исполнения команды
Контур прямоугольника Rectangle(x1,y1,x2,y2)
Окружность Circle (x, y, r) r
Дуга окружности Arc (x,y,nu,ku,r)
Дуга эллипса Ellipse(x,y,nu,ku,rx,ry) Rx
Стиль заполнения фигуры SetFillStyle (s, c) Стиль Активный цвет 0 … 15 0 … 12
Виды стилей заполнения: 0 - сплошная закраска фоновым цветом 1 - сплошная закраска активным цветом 9 - закраска пикселей в шахматном порядке 12 - пользовательский стиль
Закрашенный прямоугольник Bar (x1,y1, x2,y2)
Параллелепипед Bar3d(x1,y1,x2,y2,d,t) Верхняя грань True (TopOn) - есть False (TopOff) - нет
Закрашенный эллипс FillEllipse (x,y,Rx,Ry) Rx Ry
Закрашенный сектор круга PieSlice (x,y,nu,ku,r)
Закрашенный сектор эллипса Sector(x,y,nu,ku,rx,ry) Rx
Закраска произвольной фигуры F l o o d F i l l (x,y, b) Цвет границы Координаты внутренней точки
Стиль текста Направление SetTextStyle(s, d, r) Стиль Размер 0 - побитовый 1 - тройной 2 - малый 3 - гротесковый 4- готический 0 - горизонтально ( ) 1 - вертикально ( ) 1..10
Вывод текста OutTextXY(x, y,s) Координаты Текст Тип - string
Выравнивание текста SetTextJustify(h, v) Выравнивание по горизонтали Выравнивание по вертикали
Выравнивание текста отно- сительно точки привязки Текст h=0h=2h=1 Текст v=0 Текст v=1 Текст v=2
Ширина строки TextWidth (S) Ширина в пикселях Функция Строка
Высота строки TextHeight(S) Высота в пикселях Функция Строка
Имитация движения объекта на экране за счет многократного выполнения программой набора действий: нарисовать – пауза – стереть Пример 1. Пример 2.
Иллюзия движения создается при помощи специальных процедур и функций. Пример.
Спрайт (sprite) небольшое изображение, свободно перемещающееся по монитору. Пример 1. Пример 2.
Мной была разработана компьютерная игра в среде Turbo Pascal 7.0. В программе реализованы следующие моменты: 1. Создание активного звездного неба и иллюзии полета в нем. 2. Реализация управления. 3. Создание и отображение «моделей». 4. Отображение информации об игроке. Запуск