В некоторых ситуациях важно предотвратить превращение конкретных рисунков или осей в цель для выхода графических данных. То есть не дать им стать текущей фигурой, как возвращено 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 свойство. Если вы назначили указатель на объект переменной, можно всегда задать и получить его свойства с помощью этой переменной handle.