Для знакомства
с возможностями трехмерной графики и построением пользовательского интерфейса
MATLAB имеет галерею (Gallery) в виде профессионально выполненных графических
программ. Доступ к ним возможен как из режима демонстрации (команда Examples
and Demos в меню Help командного окна MATLAB), так и путем запуска команды из
командной строки с указанием имени соответствующего файла.
Галерея представлена
фигурами и файлами, список которых приведен в табл. 7.1.
Таблица
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
Обратите внимание
на то, что иногда имя файла не совпадает с именем фигуры в галерее. Некоторые
из фигур галереи мы уже описывали — это knot (см. рис. 4.4) и logo . Ниже приведено
еще несколько примеров, которые дают наглядное представление о возможностях
дескрипторной графики системы MATLAB.
Полезно обратить
внимание на то, что в этом примере сам по себе график — двумерный. Объемный
вид поверхности достигается сочетанием функциональной окраски с изображением
графика векторного поля с помощью стрелок.
Команда kleinl
строит график объемной ленты Мебиуса с одним перекручиванием. Этот график хорошо
иллюстрирует хотя и одноцветную, но функциональную закраску фигуры с имитацией
ее освещения
источником
света, расположенным вверху справа, и реализацией эффектов отражения света.
Команда cruller
строит объемное кольцо Мебиуса с двойным перекручиванием. В данном случае используется
обычная функциональная окраска с сохранением линий каркаса фигуры.
Команда tory4
строит четыре переплетающихся друг с другом тора (объемных кольца) в пространстве
(рис. 7.25). Наглядности этой картины также способствует функциональная окраска
торов и видимые линии каркаса. Обратите внимание, что невидимые линии удалены.
Любопытную
фигуру, напоминающую раковину улитки, строит команда spharm2. Здесь интересно
применение многоцветной функциональной окраски с использованием интерполяции
по цвету, а также имитация эффектов отражения при освещении фигуры источником
точечного света. Отчетливо видны зеркальные блики на поверхности фигуры.
Еще одна команда
— modes — иллюстрирует построение фаз анимации поверхности . Она генерирует
12 фигур, отражающих положение поверхности в пространстве в различные моменты
времени.
В целом указанный
набор программ дает хорошее представление о возможностях трехмерной графики
системы MATLAB. Команда type name, где name — имя соответствующей команды, выводит
полный листинг программы, реализующей построение той или иной фигуры.