Отчет: Файлы с выполненными заданиями.
Свойство _rotation
Свойство _rotation определяет угол поворота оси Х объекта относительно оси Х родительского объекта. Положительные значения соответствуют повороту по часовой стрелке, отрицательные — против часовой стрелки. Может принимать значения от -180о до 180о. Если присвоить значение вне этого диапазона, то для отрицательных значений будет добавляться по 360о до тех пор, пока значение не попадет в допустимый интервал, для положительных значений – 360о вычитается. Так значение 181о будет преобразовании в –179 о, а –372 о — в –12о.
Задание №1
1. Создать новый символ mc1 (MovieClip — фрагмент ролика) в виде стрелки с точкой регистрации в ее левом конце.
2. Создать из двух стрелок новый символ mc2 — "систему координат".
3. Создать копию символа mc1 – символ mc3. Изменить цвет, длину и толщину стрелки.
4. Поместить символ mc3 в символ mc2 следующим образом.
Дать внутреннему символу (красной стрелке) имя in_mc.
5. Разместить в рабочем поле экземпляр символа mc2 с именем parent_mc и кнопку с именем btn_btn.
|
|
В сценарии кадра повернуть parent_mc на -30о и написать обработчик нажатия кнопки
var n=0;
btn_btn.onPress=function(){
n+=30;
parent_mc.in_mc._rotation=n
trace("n="+n+"
_rotatioin="+parent_mc.in_mc._rotation);
}
Проследить, что выводится в окно OutPut.
Функция atan2
Если надо повернуть объект clip с координатами (Ха,Уа) таким образом, чтобы его ось Х была направлены на в точку с координатами (Хо,Уо), то вычисляем
dX=Xo-Xa; dY=Yo-Ya;
var alpha=Math. atan2 (dY,dX)/(Math.PI/180);
Функция atan2 (dY,dX) возвращает угол (в радианах), на который надо повернуть объект clip, чтобы его ось Х смотрела в точку (Хо,Уо):
clip._rotation= alpha;
После выполнения третьего пункта объект clip будет повернут следующим образом:
Если же надо, чтобы ось У была направлена на точку с координатами (Хо,Уо), то надо повернуть еще на 90 градусов.
clip._rotation =Math. atan2 (dY,dX)/(Math.PI/180) +90;
Задание №2
На рабочем поле расположить экземпляр красного жука и кнопку. Масштаб жука увеличить в два раза.
При нажатии кнопки в произвольном месте поля появляется новый красный жук произвольного размера (масштаб по осям 0х и 0y независим и принимает значения от 25% до 125%) и с произвольным углом поворота.
Первоначальный жук должен располагаться поверх всех копий! Кнопка также не должна исчезать под жуками.
Задание №3
Жук-прообраз должен поворачиваться к каждой своей создаваемой копии.
Задание №4
Добавить кнопку, нажатие которой приводит к уничтожению всех копий красного жука. Кнопка также не должна исчезать под жуками.
Желтый жук "пожирает" красных жуков. Желтый жук находится над всеми объектами.
Перед уничтожением жуков-копий желтый жук поворачивается к ним и перемещается на их место. Уничтожение начинается с самих верхних копий в порядке, обратном их появлению.
|
|
Красный жук при этом поворачивается к уничтожаемой копии.
Жуки уничтожаются со скоростью смены кадров.
После уничтожения последней копии желтый жук исчезает.
После уничтожения всех копий можно опять их генерировать.
Задание №5 (дополнительное)
После нажатия кнопки ”Уничтожить” выполняется анимация последовательного перемещения желтого жука к копиям красного жука, при этом исходный красный жук поворачивается (следит) за желтым. При достижении красной копии происходит ее уничтожение.
Контрольные вопросы к лабораторной работе №7
1. Свойство _rotation.
2. Что возвращает функция atan2? Аргументы функции.
3. Как повернуть объект, расположенный под углом к оси Х, чтобы он имел нужное направление.
4. Как создать анимацию постепенного поворота красного жука?
5. Как создать анимацию непрерывного движения желтого жука от первого уничтожаемого жука к последнему?
6. Вопросы по коду задания.
Рекомендуемая литература
1. Ульрих К. Flash CS3 Professional для Windows и Macintosh. — ДМК Пресс: Москва, 2009. — 576 с.
2. Adobe Flash CS5. Официальный учебный курс. — Эксмо: Москва, 2011. — 448 с.
3. Джонсон С. Flash CS5. Руководство разработчика. — СПб: Питер, 2012. — 550 с.
Интернет-ресурсы
1. Форум FLASHER.RU международный клуб флэшеров. —
url: http://www.flasher.ru/
2. For Coder. Книги по ActionScript и Flash. —
url: http://forcoder.ru/actionscript-flash/
3. Как создать игру на Adobe Flash Cs5? —
url: http://akak.ru/recipes/13890-kak-sozdat-igru-na-adobe-flash-cs5