началу. Построение может быть непрерывным или циклическим в зависимости от состояния позиции Continiuus/Single cycle в подменю управления анимацией. При циклической анимации число циклов задается параметром frames=n.
8.6.2. Проигрыватель анимированной графики
При включенном выводе панели форматирования во время анимации она приобретает вид панели проигрывателя клипов (рис. 8.37). Эта панель имеет кнопки управления с обозначениями, принятыми у современных проигрывателей, например магнитофонов
1. Поле координат перемещающейся точки графика.
2. Остановка анимации
3. Пуск анимации
4. Переход к следующему кадру (фрейму).
5. Установка направления анимации от конца в начало.
6. Установка направления анимации из начала в конец (по умолчанию).
7. Уменьшение времени шага анимации.
8. Увеличение времени шага анимации.
9. Установка одиночного цикла анимации.
10. Установка серии циклов анимации.
Итак, кнопки проигрывателя по существу повторяют команды подменю управления анимацией.
Нажав кнопку пуска (с треугольником, острием обращенным вправо), можно наблюдать изменение вида кривой для функции sin(х)/(х). Другие кнопки управляют характером анимации. Проигрыватель дает удобные средства для демонстрации анимации, например, во время занятий со школьниками или студентами.
8.6.3. Построение двумерных анимированных графиков
Более обширные возможности анимации двумерных графиков обеспечивает функция animate:
animate(F, х, t)
animate(F, x, t, o)
В ней параметр x задает пределы изменения переменной х, а параметр t — пределы изменения дополнительной переменной t. Суть анимации при использовании данной функции заключается в построении серии кадров (как в мультфильме), причем каждый кадр связан со значением изменяемой во времени переменной t. Если надо явно задать число кадров анимации N, то в качестве о следует использовать frame=N.
Рисунок 8.38 показывает применение функции animate.
Рис. 8.38. Анимация функции sin(i*x)/(i*x) на фоне неподвижной синусоиды
В документе рис. 8.38 строятся две функции — не создающая анимации функция sin(x) и создающая анимацию функция sin
К сожалению, картинки в книгах всегда неподвижны и воспроизвести эффект анимации невозможно. Можно лишь представить несколько текущих кадров анимации. Представленная на рис. 8.38 картина соответствует последнему кадру анимации.
Анимация графиков может найти самое широкое применение при создании учебных материалов. С ее помощью можно акцентировать внимание на отдельных параметрах графиков и образующих их функций и наглядно иллюстрировать характер их изменений.
8.6.4. Построение трехмерных анимационных графиков
Аналогичным образом может осуществляться и анимация трехмерных фигур. Для этого используется функция animate3d:
animate3d(F,х,у,t,o)
Здесь F — описание функции (или функций); х, у и t — диапазоны изменения переменных х,
На рис. 8.39 показано построение графика с анимацией. После задания функции, график которой строится, необходимо выделить график и запустить проигрыватель, как это описывалось для анимации двумерных графиков.
Рис. 8.39. Подготовка трехмерного анимационного графика
На рис. 8.39 показано также контекстное меню поля выделенного графика. Нетрудно заметить, что с помощью этого меню (и содержащихся в нем подменю) можно получить доступ к параметрам трехмерной графики и выполнить необходимые операции форматирования, такие как включение цветовой окраски, выбор ориентации фигуры и т.д.
Назначение параметров, как и средств управления проигрывателем анимационных клипов, было описано выше.
8.6.5. Анимация с помощью параметра insequence
Еще один путь получения анимационных рисунков — создание ряда графических объектов p1, p2, p3 и т.д. и их последовательный вывод с помощью функций display или display3d:
display(p1,p2,р3,..nsequence=true)
display3d(p1,p2,p3...,insequence=true)
Здесь основным моментом является применение параметра insequence=true. Именно он обеспечивает вывод одного за другим серии графических объектов р1, р2, p3 и т.д. При этом объекты появляются по одному, и каждый предшествующий объект стирается перед появлением нового объекта. Этот метод анимации мы рассмотрим чуть позже.
8.7. Графика пакета plottools