60752

Рух графічних зображень за допомогою циклів

Конспект урока

Педагогика и дидактика

Мета: ознайомити учнів з поняттям анімації; навчити створювати рухи окремих елементів, створювати анімацію програмним способом; розвивати логічне і образне мислення; виховувати любов до прекрасного.

Украинкский

2014-05-21

58.5 KB

0 чел.

Рух графічних зображень за допомогою циклів.

Мета: ознайомити учнів з поняттям анімації; навчити створювати рухи окремих елементів, створювати анімацію програмним способом; розвивати логічне і образне мислення; виховувати любов до прекрасного.

І. Мотивація навчання (зацікавлення темою уроку)

Я прочитаю вам уривок з відомого твору:

(СЛАЙД)

Вогонь у Келиху знову почервонів. З нього сипонули іскри. Вгору раптом шугонув довжелезний язик полум'я, який виніс іще один клапоть пергаменту…

Яку асоціацію викликає у вас цей уривок? Що це за твір?

(СЛАЙД)

Думаю, що ви здогадалися, якщо ні - то продовження вам напевно ж підкаже…

(СЛАЙД)

Дамблдор автоматично простяг руку й схопив пергамент. Розгорнув його перед собою і глянув на ім'я, що було в ньому…

Уривок з твору Джоан Ролінг

Гарі Потер і келих вогню

А чи можна відтворити зображення вогню за допомогою техніки, зокрема, комп’ютера? Думаю, що це запитання дещо риторичне, бо майже кожен учень грався в комп’ютерні ігри, а, значить, зустрічався з імітацією природних стихій.

Хочу вам показати одну таку анімацію.

(ВОГОНЬ)

Вам сподобалося? Ви б хотіли зробити щось подібне? Чи можливо створити таке самостійно? Звичайно, що так. Дане зображення створюється з безлічі кіл, що зароджуються в центрі екрану, вони змінюють свій колір на певному етапі, зменшуються в розмірі та змінюють напрямок руху.

За сьогоднішній урок такого, звичайно, ми не зможемо зробити, але розглянемо початкові елементи, які допоможуть вам в майбутньому створити таку анімацію.

ІІ. Повідомлення теми і мети уроку

(СЛАЙД)

Тому темою нашого уроку є «Рух графічних зображень за допомогою циклів», тобто,  створення анімацій засобами мови програмування Паскаль. Відкрийте зошити і запишіть тему сьогоднішнього уроку.

Ви ознайомитеся з поняттям анімації, навчитеся створювати рухи окремих елементів та створювати анімацію програмним способом.

ІІІ. Подача нового матеріалу (метод – бесіда з елементами демонстрацій та проблемними питаннями)

Анімацією прийнято називати відтворення руху щляхом відображення послідовності малюнків-кадрів з частотою, при якій забезпечується цілісне зорове сприйняття образів.

Як правило, для плавного відтворення анімації необхідна швидкість, що забезпечує зміну частоти кадрів не менше 10 кадрів за секунду. Для комп’ютерної анімації частота зміни кадрів за секунду екранного часу складає 10-16, для кіноматографа – 24. При недостатній кількості кадрів стає помітним розходження в послідовному зображенні об’єкта, що приводить до його різкого переміщення.

Яка, на вашу думку, різниця між анімацією і відео?

Відео використовує безупинний рух і розбиває його на множину дискретних кадрів:

(відео-РОЛИК gari.avi)

В даному випадку ми  маємо 15-тисекундний фільм, розбитий на 79 кадрів.

Анімація ж використовує множину незалежних малюнків або графічних файлів, які виводяться в певній послідовності для створення ілюзії безупинного руху.

Подумайте, з яких етапів має складатися процес створення анімації?

Вони такі:

  •  розміщення об’єктів в заданих точках екрану;
  •  відображення об’єктів протягом певного проміжку часу;
  •  знищення об’єктів.

Оскільки ці дії будуть повторюватися, то їх необхідно виконувати в … циклі.

Який формат запису циклу з параметром?

FOR <параметр циклу>:=<поч зн> TO <кін зн> DO <дія>;

Якщо після DO необхідно виконувати більше ніж одну дію, то їх беруть … в операторні дужки BEGINEND.

За що буде відповідати параметр циклу в нашому випадку?

- за  кількість повторень, за зміну положення фігури, її розмір та колір.

Яким же чином виконати побудову рухомого кола?

Наприклад, в програмі є процедура побудови кола:

SetColor(4);

Circle(80, 80, 10);

Для того, щоб коло виводилося, наприклад, 20 раз, організовуємо цикл:

For i:=1 to 20 do begin

 SetColor(4);

Circle(80, 80, 10);

end;

Але чи буде коло рухатися? Ні, воно буде будуватися 20 раз, але на одному і томуж місці.

Для того, щоб коло рухалося по горизонталі вправо, має зростати його координата Х. Як це зробити? Необхідно надати параметру Х зміну, застосувавши параметр, що змінюється, а саме параметр циклу і:

 For i:=1 to 20 do begin

 SetColor(4);

Circle(80+i, 80, 10);

end;

Прошу сідати за свої комп’ютери.

Запустіть Паскаль.

Відкрийте заготовку - програму GRAF.pas.

Впишіть даний фрагмент програми і запустіть програму на виконання.

Коло рухається, але попереднє коло не зникає, а нове появляється із зміщенням, тобто появляється «шлейф».

Що слід зробити для того, щоб на екрані відбувався рух одного кола?

  •  необхідно попереднє коло стирати, наприклад, на його місці будувати інше коло – коло кольору фону.

Тоді програма буде мати такий вигляд:

 For i:=1 to 20 do begin

 SetColor(4);

Circle(80+i, 80, 10);

Delay(10000); {призупинка виконання програми}

SetColor(0);

Circle(80+i, 80, 10);

end;

Змініть програму і запустіть її на виконання.

Чи можна використати інший спосіб для затирання попереднього малюнка?

  •  можна здійснювати затирання шляхом накладання зафарбованого прямокутника кольору фону:

Яка процедура дає можливість будувати зафарбований прямокутник?

 SetFillStyle (сп зафарбув, колір); {вказується стиль зафарбування}

 Bar (x1,y1,x2,y2); {будує зафарбований прямокутник, параметри – вершини кутів по діагоналі}

For i:=1 to 20 do begin

 SetColor(4);

Circle(80+i, 80, 10);

Delay(10000); {призупинка виконання програми}

SetFillStyle (1, 0);

Bar (60+i, 60, 100+i, 100);

end;

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

Давайте узагальнимо зміну координат точки під час руху з допомогою виведеного  малюнка. Для здійснення руху по горизонталі надають зміну координаті Х, для руху по вертикалі – надають зміну координаті У, якщо рух має бути по діагоналі, то зміну надають обом координатам.

Аналогічно, якщо необхідно збільшувати чи зменшувати розміри фігури, то змінюють, наприклад, її радіус, для зміни ж кольору параметр циклу пишуть в процедурах, що впливають на колір фігури.

IV. Практична робота

У вас на партах картки з практичним завданням.

Учні, що найкраще справляться з поставленим перед ними завданням, отримають оцінки.

Пояснення до практичних завдань.

  1.  Відкрийте файл GARI.pas
  2.  Запустіть його на виконання.
  3.  Перейдіть в ту частину програми, де вказано {zavdannya 4}
  4.  Запрограмуйте рух пучка світла з точки з координатами (188, 326).

Підказка:

- коло радіуса 1,

- повторень 125,

- коло має залишати «шлейф».

  1.  Перейдіть в ту частину програми, де вказано {zavdannya 7}
  2.  Запрограмуйте рух комети (рух по діагоналі )
    •  початкове положення кола - точка з координатами (540, 60), коло має зупинитися біля лівої руки;
    •  коло має бути зафарбованим;
    •  кольори мають змінюватися;
    •  «шлейф» має залишатися.
  3.  Покажіть виконане для контролю.

Додаткове завдання

  1.  Перейдіть в ту частину програми, де вказано {zavdannya dodatkove}
  2.  Запрограмуйте рух павука вверх екрану (замальовку попереднього зображення здійснювати накладанням зафарбованого прямокутника – колір 7)
  3.  Покажіть виконане для контролю.

V. Підведення підсумків уроку.

У вигляді бесіди:

Оцініть себе – який об’єм роботи ви змогли зробити по відношенню до зразка?

(РОЛИК) демонстрація готової роботи.

1) Якої мети ми сьогодні хотіли досягнути на уроці? Чи вдалося нам це зробити?

2) Які помилки при створенні рухомих об’єктів у вас виникали?

На що слід звертати увагу при створенні анімації?

VI. ДЗ

Написати програму руху кола по прямокутнику


 

А также другие работы, которые могут Вас заинтересовать

21812. ПРИНЯТИЕ РЕШЕНИЕ В УСЛОВИЯХ НЕОПРЕДЕЛЕННОСТИ 196.5 KB
  Функция полезности при наличии риска 1. Поскольку нам предстоит формировать функцию полезности определим еще раз что мы будем понимать под термином полезность функция полезности. Полезность или показатель полезности это число приписываемое конкретному результату например рабочей характеристике или состоянию системы и представляющее собой оценку значимости этого результата по восприятию определенного человека или группы людей. При наличии единственного критерия и определенной связи между вариантами решения и значением этого...
21813. ТЕОРИЯ МАТРИЧНЫХ ИГР. Примеры решения задач при парной игре с нулевой суммой 91 KB
  В разных случаях числа aii могут иметь различный смысл выигрыш потери платеж. Игра это действительный или формальный конфликт в котором имеется по крайней мере два участника каждый из которых стремится к достижению собственных целей Правилами игры называют допустимые действия каждого из игроков направленные на достижение некоторой цели. Платежом называется количественная оценка результатов игры. если проигрыш одного игрока равен выигрышу другого.
21814. ТЕОРИЯ МАТРИЧНЫХ ИГР. ИГРА С ПРИРОДОЙ 91.5 KB
  Системный анализ источников техногенной опасности 1. СИСТЕМНЫЙ АНАЛИЗ ИСТОЧНИКОВ ТЕХНОГЕННОЙ ОПАСНОСТИ Системный анализ источников и факторов техногенной и экологической опасности может быть проведен на основе методологических принципов заимствованных из теории подготовки и обоснования решений по сложным проблемам. Системный анализ совокупности источников техногенной опасности целесообразно проводить с учетом определенного множества факторов в том числе факторов радиационной химической природы экономических...
21815. Козацтво в історії України (друга половина ХVІІ – ХVІІІ ст.) 115.5 KB
  Соціальні причини. До середини XVII ст. вкрай загострилася соціально-економічна ситуація, повязана з трансформацією поміщицьких господарств у фільварки. З одного боку, це сприяло зміцненню феодальної земельної власності
21816. ОСНОВНЫЕ СОСТАВЛЯЮЩИЕ, ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ СИСТЕМНОГО АНАЛИЗА 171 KB
  Структура и иерархия системы 1. Второе направление связано с разработкой принципов построения и использования моделей моделирования имитирующих протекание реальных процессов способов объединения таких моделей в системы и представление системы моделей в ЭВМ. Действительно что такое система обеспечения безопасности Это совокупность людей оборудования и процедур специально разработанная применительно к промышленной или любой другой трудовой системы для увеличения безопасности работников. Элементом системы называется некоторый объект...
21817. Реализация системного анализа при решении проблем техносферы. Краткая характеристика методов СА 111.5 KB
  Показатели системы Методология системного анализа Постановка задачи Моделирование и анализ Оценка возможных вариантов решения краткая характеристика методов СА В последние годы методы СА стали широко использоваться для решения таких проблем окружающей среды и общества как:  загрязнение окружающей среды;  производственная безопасность;  транспортные потоки;  медицинское обслуживание;  образование;  криминалистика. Можно ли все это свести к определению одного параметра с помощью которого мы будем сравнивать возможные решения Вначале...
21818. Оценка вариантов решения. Выбор 92 KB
  Выбор как реализация цели В предыдущей лекции были рассмотрены два этапа задачи разработки программы системы. Таким образом важную роль здесь играет измерение переменных системы. Кратко можно перечислить следующие операции выполняемые на этапе оценки вариантов решения: определение меры для каждого показателя системы; объединение всех показателей в единое представление или функцию по которым можно выбрать наиболее желательное решение так называемую целевую функцию. Целевой функцией называется скалярное описание системы которое...
21819. Условная оптимизация 169 KB
  Пример постановки задачи оптимизации Линейное программирование ЛП Постановка задачи линейного программирования Основные определения и теоремы Переход от одной формы задачи ЛП к другой 3. Пример постановки задачи оптимизации Для изготовления 3х видов изделий А В и С используется токарное фрезерное сварочное и шлифовальное оборудование. Составить математическую модель задачи. Постановка задачи линейного программирования Найти оптимум наибольшее или наименьшее значение целевой функции линейной формы на области допустимых значений...
21820. Нелинейное программирование (НП) 131 KB
  нелинейное программирование НП Постановка задачи НП Экологоэкономическая интерпретация задачи НП Геометрическая интерпретация задачи НП Метод множителей Лагранжа ММЛ Обзор рассмотренных методов. Постановка задачи НП В общем виде задача НП состоит в определении max min значения f x1 x2 xn 1 при условии что ее переменные удовлетворяют соотношениям gix1 x2 xn  bi i = 1 k gix1 x2 xn = bi i = k 1 m где f и gi некоторые известные функции n переменных а bi заданные числа. Имеется в виду что в...