В некоторых ситуациях важно не допустить, чтобы отдельные фигуры или оси становились мишенью для вывода графики. То есть не дать им стать текущей цифрой, как возвращено gcfили текущие оси, возвращенные gca.
Может потребоваться запретить доступ к рисунку, содержащему элементы управления, реализующие пользовательский интерфейс. Кроме того, может потребоваться запретить доступ к осям, являющимся частью прикладной программы, к которой обращается только приложение.
Предотвращение нацеливания функций MATLAB ® на определенную фигуру или оси путем удаления их ручек из списка видимых ручек .
Два свойства управляют видимостью дескриптора: HandleVisibility и ShowHiddenHandles
HandleVisibility является свойством всех графических объектов. Он управляет видимостью дескриптора объекта до трех возможных значений:
'on' - Можно получить дескриптор объекта с функциями, возвращающими дескрипторы, такими как (gcf, gca, gco, get, и findobj). Это поведение по умолчанию.
'callback' - дескриптор объекта отображается только в рабочей области функции обратного вызова.
'off' - дескриптор скрыт от всех функций, выполняемых в командном окне и в функциях обратного вызова.
Когда объект HandleVisibility имеет значение 'callback' или 'off':
Дескриптор объекта не отображается в родительском элементе Children собственность.
Фигуры не отображаются в корне CurrentFigure собственность.
Оси не отображаются в содержащихся рисунках CurrentAxes собственность.
Графические объекты не отображаются в рисунках CurrentObject собственность.
Если дескриптор не виден в списке нижестоящих элементов родительского элемента, функции, получающие дескрипторы путем поиска в иерархии объектов, не могут вернуть дескриптор. Эти функции включают get, findobj, gca, gcf, gco, newplot, cla, clf, и close.
Когда фигура со скрытой ручкой находится в верхней части экрана, но за ней расположены фигуры с видимой ручкой, gcf возвращает самую верхнюю фигуру видимого дескриптора в стеке. То же поведение верно для gca. Если фигур или осей с видимой ручкой не существует, вызов gcf или gca создает один.
Корень ShowHiddenHandles включает и отключает управление видимостью дескриптора. По умолчанию ShowHiddenHandles является 'off', что означает, что MATLAB следует за настройкой каждого объекта HandleVisibility собственность.
Настройка ShowHiddenHandles кому on эквивалентно установке HandleVisibility свойства всех объектов в графической иерархии для on.
Примечание
Заголовки осей и текстовые объекты меток осей не являются потомками осей. Для доступа к маркерам перемещения этих объектов используйте оси Title, XLabel, YLabel, и ZLabel свойства.
close функция также обеспечивает доступ к фигурам со скрытой ручкой с помощью hidden вариант. Например:
close('hidden')
закрывает самую верхнюю фигуру на экране, даже если ее маркер скрыт.
Объединение all и hidden опции:
close('all','hidden')
закрывает все фигуры.
Все дескрипторы остаются действительными независимо от состояния их HandleVisibility собственность. Если дескриптор объекта назначен переменной, всегда можно задать и получить его свойства с помощью этой переменной-дескриптора.