Цели урока

обучающие: сформировать представления учащихся об анимации движения нескольких объектов; научить создавать двигающиеся объекты в Macromedia Flash; повторить материал ранее изученной темы «Структурированный тип данных массив»;

развивающие: развитие познавательной активности, внимания, творческих способностей; повышение интереса к предмету;

воспитательные: воспитание сосредоточенности, внимания, аккуратности; привитие эстетического вкуса

Обеспечение урока:

1. OC Windows

2. Macromedia Flash

3. Методические материалы по теме

План урока:

1. Организационный момент (2 мин)

2. Повторение ранее изученного материала (8 мин)

3. Объяснение нового материала (15 мин)

4. Физкультминутка (1 мин)

5. Закрепление изученного материала (16 мин)

6. Итоги урока (3 мин)

Ход урока:

1. Приветствие учащихся, проверка присутствующих. Объявление темы и целей урока.

2. Повторение ранее изученного материала по теме «Структурированный тип данных массив»

Массив – это обозначаемая одним именем последовательность однотипных элементов. Место каждого элемента в этой последовательности определяется его индексом.

Массив представляет собой таблицу в памяти компьютера (имеющую название), состоящую из некоторого числа ячеек (7 или 100). Значения, находящиеся в ячейках массива, легко обрабатывать, необходимо лишь указать имя массива и номер ячейки (a[1],a[3], a[7]).

Например, массив а состоит из 10 ячеек (говорят, что размерность массива равна 10)

1 2 3 4 5 6 7 8 9 10

a

a[1] a[4] a[9]

Элементы массива в программах могут использоваться так же, как обычные переменные, например:

a[3]:=25;

a[k]:=b[k]*2;

s:=(t[1]+t[31])/2;

sum:=sum+a[i].

Массивы, обращение к элементам которых осуществляется при помощи только одного индекса, называют одномерными. Элементы такого массива располагаются в памяти компьютера цепочкой друг за другом.

Индексов может быть несколько, тогда массив называют многомерным.

Массив в языке Паскаль описывается так:

имя_массива: array [индекс1.. индекс N] of тип_элементов;

Имя массива (идентификатор) задается по тем же правилам, что и имена переменных других типов; array означает массив.

В квадратных скобках задается диапазон индексов элементов массива: сначала указывают индекс первого элемента индекс1, затем ставят две точки, после которых указывают индекс последнего элемента индекс N. Диапазон индексов определяет максимально возможное количество элементов в массиве – размер массива.

Тип элементов может быть любым, например: числа, символы, строки, массивы. Мы будем рассматривать массивы с элементами числовых типов integer (целый) и real (вещественный). В языке Pascal ABC данные типа integer занимают 4 байта и находятся в диапазоне от -2 147 483 648 до +2 147 483 647. Данные типа real занимают 8 байт и по модулю не превосходят 1,7·10308

Индекс мы будем задавать целыми числами: положительными или отрицательными (но могут быть и другие типы, кроме вещественного).

Наиболее распространенная ошибка при работе с массивами - выход за границы изменения индекса. В Pascal ABC возникновение этой ошибки приводит к завершению работы программы.

Рассмотрим примеры описания массивов.

Пример 1. В классе 25 учеников. Известен рост каждого в сантиметрах. Для хранения значений роста можно использовать массив А, состоящий из 25 целых чисел. Индекс каждого элемента – порядковый номер ученика по списку в классном журнале. Элемент А[5] хранит рост ученика под пятым номером.

Описание этого массива может выглядеть так:

var A: array[1..25] of integer;

Имя массива А, диапазон индексов от 1 до 25, размер массива 25 целых чисел.

Этот массив можно описать и так:

const n1=1; n2=25;

var A: array[n1..n2] of integer;

Пример 2. Каждый день в декабре начиная с 20 числа измеряли температуру воздуха. Для хранения значений температуры можно использовать массив Т, состоящий из 12 вещественных чисел. Индекс элемента – дата (номер дня в декабре). Значение элемента Т[23] – температура воздуха 23 декабря. Описание этого массива может выглядеть так:

var T: array[20..31] of real;

Пример 3. В здании торгового центра 6 этажей: два подземных, цокольный и три верхних (рис)

Описание массива комнат здания может выглядеть так:

var Komnaty: array[ -2..3 ] of integer;

Размер этого массива 6 элементов.

этаж 1 I = 1

этаж 2 I = 2

этаж 3 I = 3

цоколь I = 0

подвал I = - 1

подвал I = - 2

3. Анимация движений нескольких объектов создается в несколько этапов:

Ø "расстановка декораций", т.е. размещение объектов, которые должны двигаться независимо, по отдельным слоям;

Ø раскадровка - выделение временных интервалов движения всех объектов и уточнение свойств объектов в начале и конце каждого интервала;

Ø расстановка ключевых кадров и задание параметров объектов в этих кадрах

Пример 1. Создать анимацию движения робота и мяча длительностью 2 с при частоте 12 кадров в сек. Первую секунду робот движется из крайнего левого положения вправо до столкновения с мячом, который в это время покоится посередине поля. После столкновения робот движется в обратном направлении, а мяч 0,5 с летит прямолинейно под углом к горизонту, затем ударяется о стенку и 0,5с летит в обратном направлении


Разработку анимации начинаем с расстановки декораций, т.е добавления слоев и размещения объектов по отдельным слоям.

 
 

Импортируем рисунок trees.gifна единственный слой, который назовем «лес». Откорректируем его положение и размеры. Добавим еще два слоя и назовем их «робот» и «мяч» Импортируем на них соответствующие изображения robot.jpgи ball.jpg,преобразовав в клипы с именами "робот"и "мяч".  
Теперь займемся расстановкой ключевых кадров. Поскольку лес неподвижен на протяжении всех 2 с, превратим 24-й кадр слоя «лес» в ключевой с помощью F6. Во избежание случайного смещения заблокируем этот слой, нажав символ замка Робот имеет два этапа движения: первую секунду он движется вправо до столкновения с мячом в 12 кадре, а затем в обратном направлении. Поэтому в слое "робот" вставляем ключевые кадры 12 и 24, в которых перемещаем робот в соответствующие положения. Выделяем промежуточные кадры каждого движения, например, 7 и 15, и производим их автозаполнение (Вставка - Создать двойное движение)
 
 

Мяч имеет три этапа движения: 1.первую секунду до 12 кадра он покоится, 2.затем после удара робота 0,5 с летит прямолинейно до 18 кадра, 3.наконец, в 18-м кадре ударяется о стенку и 0,5 с летит в обратном направлении. Следовательно, в слое "мяч" вставляем ключевые кадры 12, 18 и 24, в которых устанавливаем мяч в соответствующие положения. Выделяем промежуточные кадры каждого движения, например, 7, 15 и 20, и производим их автозаполнение (меню Вставка - Создать двойное движение)В заключение тестируем созданную анимацию и при необходимости производим коррекцию. Сохраняем под именем robot.fla

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: