Simulink® задает набор параметров, которые помогают в установке и редактировании масок. Чтобы установить и отредактировать маску из командной строки MATLAB®, можно использовать методы класса Simulink.MaskParameter
и Simulink.Mask
. Можно также использовать get_param
и функции set_param
, чтобы установить и отредактировать маски. Однако, поскольку эти функции используют разделители, которые не поддерживают Unicode® (неанглийский язык) символы, рекомендуется, чтобы вы использовали методы Simulink.Mask
и методов класса Simulink.MaskParameter
управлять масками.
Simulink.Mask
и Simulink.MaskParameter
Используйте методы Simulink.Mask
и классов Simulink.MaskParameter
, чтобы выполнить следующие операции маски:
Создайте, скопируйте и удалите маски
Создайте, отредактируйте и удалите параметры маски
Определите блок, который владеет маской
Задайте переменные рабочей области для маски
В этом примере метод Simulink.Mask.create
используется, чтобы создать маску блока:
maskObj = Simulink.Mask.create(gcb);
maskObj = Simulink.Mask handle Package: Simulink Properties: Type: '' Description: '' Help: '' Initialization: '' SelfModifiable: 'off' Display: '' IconFrame: 'on' IconOpaque: 'on' RunInitForIconRedraw: 'off' IconRotate: 'none' PortRotate: 'default' IconUnits: 'autoscale' Parameters: [] Methods, Events, Superclasses
В этом примере маскирующий объект присвоен переменной maskObj
с помощью метода Simulink.Mask.get
:
maskObj = Simulink.Mask.get(gcb)
maskObj = Simulink.Mask handle Package: Simulink Properties: Type: '' Description: '' Help: '' Initialization: '' SelfModifiable: 'off' Display: '' IconFrame: 'on' IconOpaque: 'on' RunInitForIconRedraw: 'off' IconRotate: 'none' PortRotate: 'default' IconUnits: 'autoscale' Parameters: [1x1 Simulink.MaskParameter] Methods, Events, Superclasses
Для примеров других операций маски как создание и редактирование параметров маски и копирование и удаление масок смотрите Simulink.Mask
и Simulink.MaskParameter
.
get_param
и set_param
set_param
и функции get_param
имеют параметры для установки и управления маской. Можно использовать эти функции, чтобы установить маску любого блока в модели, или библиотека на основе значения передала из командной строки MATLAB:
set_param(gcb,'MaskStyleString','edit,edit',... 'MaskVariables','maskparameter1=@1;maskparameter2=&2;',... 'MaskPromptString','Mask Parameter 1:|Mask Parameter 2:',... 'MaskValues',{'1','2'});
get_param(gcb,'MaskStyleString');
set_param(gcb,'MaskStyles',{'edit','edit'},'MaskVariables',... 'maskparameter1=@1;maskparameter2=&2;','MaskPrompts',... {'Mask Parameter 1:','Mask Parameter 2:'},... 'MaskValueString','1|2');
get_param(gcb,'MaskStyles');
где
|
разделяет значения вектора отдельного символа для параметров маски.
@
указывает, что поле параметра оценено.
&
указывает, что поле параметра не оценено, но присвоено как вектор символов.
Когда вы используете get_param
, чтобы получить Value
параметра маски, Simulink возвращает значение, которое было в последний раз применено с помощью диалогового окна маски. Значения, что вы ввели в диалоговое окно маски, но не применялись, не отражаются, когда вы используете команду get_param
.
Чтобы задать значение параметра маски программно, рекомендуется использовать set_param команду на параметре маски вместо того, чтобы использовать set_param на MaskValues.
Чтобы управлять свойствами маски программно для релиза перед R2014a, смотрите Параметры Маски.
Этот пример показывает, как создать это простое диалоговое окно маски, добавьте средства управления в диалоговое окно и измените свойства средств управления.
Создайте маску для блока, который вы выбрали в модели.
maskobj = Simulink.Mask.create(gcb);
Чтобы настроить диалоговое окно и использовать вкладки вместо группы по умолчанию, удалите групповой блок Parameters.
maskobj.removeDialogControl('ParameterGroupVar');
Simulink сохраняет дочерние диалоговые средства управления – эти два флажка в этом примере – даже когда вы удаляете группу ParametersGroupVar
, окружающую их. Эти средства управления являются параметрами, которые не могут быть удалены с помощью диалоговых методов управления.
Можно удалить методы использования параметров, такие как Simulink.Mask.removeAllParameters
, который принадлежит классу Simulink.Mask
.
Создайте контейнер вкладки и получите его указатель.
tabgroup = maskobj.addDialogControl('tabcontainer','tabgroup');
Создайте вкладки в этом контейнере вкладки.
tab1 = tabgroup.addDialogControl('tab','tab1'); tab1.Prompt = 'First'; maskobj.addParameter('Type','checkbox','Prompt','Option 1',... 'Name','option1','Container','tab1'); maskobj.addParameter('Type','checkbox','Prompt','Option 2',... 'Name','option2','Container','tab1'); tab2 = tabgroup.addDialogControl('tab', 'tab2'); tab2.Prompt = 'Second'; tab3 = tabgroup.addDialogControl('tab','tab3'); tab3.Prompt = 'Third (invisible)';
Сделайте третью вкладку невидимой.
tab3.Visible = 'off'
tab3 = Tab with properties: Name: 'tab3' Prompt: 'Third (invisible)' Enabled: 'on' Visible: 'on' DialogControls: []
Можно изменить местоположение и другие свойства параметров на диалоговом окне при помощи команд Simulink.dialog.Control
. Для получения дополнительной информации о диалоговых средствах управления и их свойствах, смотрите Simulink.dialog.Control
.
Создание масок блоков | Инициализируйте маску | Основы маскирования