Чтение онлайн

на главную

Жанры

Maple 9.5/10 в математике, физике и образовании

Дьяконов Владимир Павлович

Шрифт:

8.6.4. Построение трехмерных анимационных графиков

Аналогичным образом может осуществляться и анимация трехмерных фигур. Для этого используется функция animate3d:

animate3d(F,х,у,t,o)

Здесь F — описание функции (или функций); х, у и t — диапазоны изменения переменных х, у и t. Для задания числа кадров N надо использовать необязательный параметр о в виде frame=N. Примеры применения этой функции мы рассмотрим позже.

На рис. 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

8.7.1. Примитивы пакета plottools

Инструментальный пакет графики plottools служит для создания графических примитивов, строящих элементарные геометрические объекты на плоскости и в пространстве: отрезки прямых и дуг, окружности, конусы, кубики и т.д. Его применение позволяет разнообразить графические построения и строить множество графиков специального назначения. В пакет входят следующие графические примитивы:

arc arrow circle cone cuboid

curve cutin cutout cylinder disk

dodecahedron ellipse ellipticArc hemisphere hexahedron

hyperbola icosahedron line octahedron pieslice

point polygon rectangle semitorus sphere

tetrahedron torus

Вызов перечисленных примитивов осуществляется после загрузки пакета в память компьютера командой with(plottools). Только после этого примитивы пакета становятся

доступными. Обычно примитивы используются для задания графических объектов, которые затем выводятся функцией display. Возможно применение этих примитивов совместно с различными графиками.

Большинство примитивов пакета plottools имеет довольно очевидный синтаксис. Например, для задания дуги используется примитив arc(c, r, а..b,…), где с — список с координатами центра окружности, к которой принадлежит дуга, r — радиус этой окружности, а..b — диапазон углов. На месте многоточия могут стоять обычные параметры, задающие цвет дуги, толщину ее линии и т.д. Конус строится примитивом cone(c,r,h…), где с — список с координатами центра, r — радиус основания, h — высота и т.д. В необходимых случаях стоит проверить синтаксис того или иного примитива с помощью справки по пакету plottools.

8.7.2. Пример применения двумерных примитивов пакета plottools

На рис. 8.40 показано применение нескольких примитивов двумерной графики для построения дуги, окружности, закрашенного красным цветом эллипса и отрезка прямой. Кроме того, на графике показано построение синусоиды.

Рис. 8.40 Примеры применения примитивов двумерной графики пакета plottools

Во избежание искажений пропорций фигур надо согласовывать диапазон изменения переменной x. Обычно параметр scalling=constrained выравнивает масштабы и диапазоны по осям координат, что гарантирует отсутствие искажений у окружностей и других геометрических фигур. Однако при этом размеры графика нередко оказываются малыми. Напоминаем, что эту параметр можно задать и с помощью подменю Projection.

8.7.3. Пример построения стрелок

Рис. 8.41 иллюстрирует построение средствами пакета plottools четырех разноцветных стрелок, направленных в разные стороны. Цвет стрелок задан списком цветов с, определенным после команды загрузки пакета. Для построения стрелок используется примитив arrow с соответствующими параметрами. Обратите внимание на наклон стрелок — он задан прибавлением 1 к аргументу тригонометрических функций. Уберите 1 и стрелки расположатся под прямым углом.

Рис. 8.41. Построение разноцветных стрелок, направленных в разные стороны

8.7.4. Пример построения диаграммы Смита

Примитивы могут использоваться в составе графических процедур, что позволяет конструировать практически любые типы сложных графических объектов. В качестве примера на рис. 8.42 представлена процедура SmithChart, которая строит хорошо известную электрикам диаграмму Смита (впрочем, несколько упрощенную). В этой процедуре используется примитив построения дуг arc. При этом задается верхняя часть диаграммы, а нижняя получается ее зеркальным отражением.

Поделиться:
Популярные книги

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор