Для управления сложными преобразованиями форм фигуры Flash предлагает хинты. В течение всего процесса преобразования хинты идентифицируют отмеченные пользователем точки фигуры и, собственно, представляют собой маркеры или закладки. Пример преобразования формы с хинтами и без них приведен на рис. 11.9.
Хинты обозначаются буквами от "а" до "z" и потому одновременно можно использовать не больше 26-ти хинтов-
Хинты окрашены желтым цветом в начальном ключевом кадре и зеленым - в конечном ключевом кадре. Хинт, не находящийся на кривой линии, окрашен красным цветом.
при сложном кадрировании фигуры создавайте промежуточные фигуры и кадрируйте их, вместо того чтобы сразу указать начальную и окончательную фигуры;
удостоверьтесь, что расположение (порядок следования) хинтов фигуры не меняется в ходе преобразования. Например, на начальном и конечном кадрах преобразуемого треугольника, порядок не может измениться с "abc" на "асЬ";
хинты работают лучше, если размещены против часовой стрелки, начиная с верхнего левого угла фигуры.
Рис. 11.9. Преобразование формы без хинтов (а) и с хинтами (б)
Для того чтобы использовать хинты:
Выделите начальный ключевой кадр для кадрирования формы фигуры.
Выберите команду Modify (Изменить) Þ Transform (Преобразовать) ÞAdd Shape Hint (Добавить хинт). При этом на фигуре появляется первый хинт, обозначенный буквой "а" и окрашенный в красный цвет.
Переместите хинт на точку, которую вы хотите отслеживать в ходе Преобразования
Выберите конечный ключевой кадр в последовательности. При этом на фигуре появится конечный хинт, обозначенный буквой "а" и окрашенный в зеленый цвет.
В конечном кадре переместите хинт в ту точку фигуры, которая должна соответствовать точке, помеченной хинтом "а" в начальном кадре.
Запустите фильм снова, чтобы по хинтам проследить изменение фигуры и при необходимости внесите изменения-
Повторите этот процесс, добавив дополнительные хинты. Новые хинты будут обозначаться следующими буквами (b, с и т. д.).
Вот некоторые приемы работы с хинтами:
сделайте активным слой и ключевой кадр, содержащий хинты. Чтобы видеть все хинты" выберите команду View (Вид) Þ Show Shape Hints (Показать хинты);
чтобы удалить хинт, зацепите его указателем и отбуксируйте за пределы Стола;
чтобы удалить все хинты сразу, выберите команду Modify (Изменить) Þ Transform (Преобразовать) Þ Remove All Hints (Удалить все хинты).
В пошаговой анимации содержание изменяется и каждом кадре и потому такой тип анимации применяется в сложных случаях, когда изображение не просто перемещается в каждом следующем кадре. Обычно пошаговая анимация (рис. 11.10) дает больший размер файла, чем кадрированная.
Рис. 11.10. Вид пошаговой анимации в окне Timeline
Для того чтобы создать пошаговую анимацию:
Сделайте слой активным, щелкнув на имени слоя, и выберите в слое начальный кадр анимации.
Если вы указали неключевой кадр, выберите команду Insert (Вставка) ÞKeyframe (Ключевой кадр), чтобы сделать его ключевым.
Создайте изображение для первого кадра последовательности. При этом можно использовать инструменты рисования, вставлять графику из буфера (clipboard) или импортировать Файл
Щелкните на следующем кадре в том же ряду и выберите команду Insert (Вставка) Þ Keyframe (Ключевой кадр) или щелкните правой кнопкой мыши (Windows) или левой кнопкой, удерживая клавишу <Cmd> (Macintosh), на этом кадре и выберите команду Insert Keyframe (Вставить ключевой кадр) во всплывающем меню Frame (Кадр), рис. 11.11.
При этом добавится новый ключевой кадр, содержание которого будет точно таким же, как у предшествующего ему первого ключевого кадра,
Измените содержание этого кадра на Столе согласно сюжету анимации (рис. 11.12).
Чтобы создать последовательность пошаговой анимации, повторяйте шаги 4 и 5 до тех пор, пока не нарисуете задуманный сюжет.
Чтобы проверить работу анимации, выберите команду Control (Управление) Þ Play (Воспроизведение) или щелкните на кнопке Play (Bocпроизведение) на панели Controller (Панель воспроизведения). Полезно воспроизвести и просмотреть созданную анимацию.
Знаете ли Вы, что абстракция через спецификацию - это прием программирования, позволяющий абстрагироваться от процесса вычислений описанных в теле процедуры, до уровня знания того, что данная процедура делает. Это достигается путем задания спецификации, описывающей эффект ее работы, после чего смысл обращения к данной процедуре становится ясным через анализ этой спецификации, а не самого тела процедуры. Мы пользуемся абстракцией через спецификацию всякий раз, когда связываем с процедурой некий комментарий, достаточно информативный для того, чтобы иметь возможность работать без анализа тела процедуры. Абстракция через спецификацию позволяет абстрагироваться от процесса вычислений описанных в теле процедуры, до уровня знания того, что данная процедура делает. Это достигается путем задания спецификации, описывающей эффект ее работы, после чего смысл обращения к данной процедуре становится ясным через анализ этой спецификации, а не самого тела процедуры. Мы пользуемся абстракцией через спецификацию всякий раз, когда связываем с процедурой некий комментарий, достаточно информативный для того, чтобы иметь возможность работать без анализа тела процедуры.