Демонстрация фаз анимации трехмерной поверхности
Таблица 7.1.
Состав галереи трехмерной графики MATLAB
Имя в галерее |
Файл |
Наименование фигуры |
|
Knot |
Knot.m |
Завязанный узел |
|
Quiver |
Quivdemo. m |
Векторное объемное поле |
|
Klein II |
Kleinl. m |
Объемное кольцо |
|
Cruller |
Cruller.m |
Объемное кольцо Мебиуса |
|
Hoops |
Tory4.m |
Четыре объемных обруча |
|
Slosh |
Spharm2.m |
Построение фигуры, напоминающей улитку |
|
Modes |
Modes. m |
Демонстрация фаз анимации трехмерной поверхности |
|
Logo |
Logo.m |
Построение логотипа системы MATLAB |
Полезно обратить внимание на то, что в этом примере сам по себе график — двумерный. Объемный вид поверхности достигается сочетанием функциональной окраски с изображением графика векторного поля с помощью стрелок.
Команда kleinl строит график объемной ленты Мебиуса с одним перекручиванием. Этот график хорошо иллюстрирует хотя и одноцветную, но функциональную закраску фигуры с имитацией ее освещения источником света, расположенным вверху справа, и реализацией эффектов отражения света.
Команда cruller строит объемное кольцо Мебиуса с двойным перекручиванием. В данном случае используется обычная функциональная окраска с сохранением линий каркаса фигуры.
Команда tory4 строит четыре переплетающихся друг с другом тора (объемных кольца) в пространстве (рис. 7.25). Наглядности этой картины также способствует функциональная окраска торов и видимые линии каркаса. Обратите внимание, что невидимые линии удалены.
Любопытную фигуру, напоминающую раковину улитки, строит команда spharm2. Здесь интересно применение многоцветной функциональной окраски с использованием интерполяции по цвету, а также имитация эффектов отражения при освещении фигуры источником точечного света. Отчетливо видны зеркальные блики на поверхности фигуры.
Еще одна команда — modes — иллюстрирует построение фаз анимации поверхности . Она генерирует 12 фигур, отражающих положение поверхности в пространстве в различные моменты времени.
В целом указанный набор программ дает хорошее представление о возможностях трехмерной графики системы MATLAB. Команда type name, где name — имя соответствующей команды, выводит полный листинг программы, реализующей построение той или иной фигуры.