Тема:
Использование растровых изображений
Цели:
Обучающие:
·
Формировать представление об использовании
растровых изображений в среде программирования Pascal ABC
·
Познакомиться с основными процедурами и функциями,
предназначенными для работы с графическими растровыми изображениями в среде
программирования PascalABC
Развивающие:
·
умения анализировать, сравнивать, систематизировать
и обобщать;
·
интерес к учению, стремление к расширению
кругозора;
Воспитательные:
·
бережное отношение к имуществу, ВТ и учебным
пособиям;
Ход
урока:
- Организационный момент
2. Проверка д.з.
Тест на компьютере.
«Построение геометрических фигур»
- Изучение нового материала
a)
Видеоурок «Использование растровых изображений»
b)
Составление конспекта урока
Процедуры
и функции для работы с растровыми изображениями содержатся в модуле GraphAbc.
Функция
LoadPicture(fname) загружает
рисунок из файла с именем fname в
оперативную память. Загружать можно рисунки в форматах BMP, JPG, GIF,
PNG.
Каждому
загруженному рисунку, хранящемуся во время работы программы в оперативной
памяти, присваивается целочисленный описатель (дескриптор) nm:=LoadPicture(fname). Он передается в
качестве первого параметра во все остальные процедуры и функции работы с
рисунками.
Процедура
DrawPicture(nm, x,y) выводит
рисунок с описателем nm в позицию (x,y)
графического окна, а DrawPicture(nm,x,y,w,h) еще и масштабирует
изображение, устанавливая ширину w и высоту h. Если w<0, то рисунок зеркально отражается относительно
вертикальной прямой,
проходящей
через x, если же h<0, то рисунок зеркально отражается относительно
горизонтальной прямой, проходящей через y.
function
PictureTransparent
(
n
:
integer
):
boolean
;
Возвращает режим
прозрачности рисунка с описателем n
.
procedure
Sleep(ms: integer);
Осуществляет паузу в
выполнении программы на ms
миллисекунд
Пример. Составить программу, демонстрирующую принцип действия проекционного
аппарата.
Программа может
выглядеть так:
program Proector;
uses GraphABC;
var pic: integer;
begin
setWindowSize(640,520);
{ задание размеров окна }
ClearWindow(clBlack);
{ и закраска черным }
SetBrushColor(clSkyBlue);
Ellipse(106,220,122,300); {линза}
pic:=
LoadPicture('robotA.jpg'); { загрузка изображения из файла }
DrawPicture(pic,60,310,-50,-100);
{ вывод изображения, переворот}
DrawPicture(pic,380,10,250,500);
{ увеличение }
setPenColor(clYellow);
{ вспомогательные линии }
line(60,310, 380,10);
line(60,210, 380,510);
setPenColor(clWhite);
line(10,310, 630,10);
line(10,210, 630,510);
end.
Результат работы
программы может выглядеть так (рис. 2.5):
- Закрепление полученных знаний
- Рассмотренный пример выполнить их на
компьютере
- Домашнее задание:
Конспект урока, повторить
операторы с циклом for, while, repeat
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.