Объекты Stateflow® API имеют свойства, которые соответствуют значениям, которые вы обычно устанавливаете через редактора Stateflow. Например, чтобы сменить положение состояния, вы обычно перетаскиваете состояние. С API Stateflow вы меняете положение состояния путем изменения Position
свойство соответствующего Stateflow.State
объект:
st.Position = [10 20 100 80];
Кроме того, объектные функции предоставляют услуги, которые обычно предоставляются редактором Stateflow. Например, чтобы открыть диалоговое окно Properties для перехода, вы обычно щелкаете правой кнопкой по переходу и выбираете Properties. С API Stateflow вы открываете это диалоговое окно путем вызова dialog
функция соответствующего Stateflow.Transition
объект:
dialog(tr);
Чтобы вызвать функцию объекта API, используйте стандартное обозначение вызова функции. Например, чтобы открыть диалоговое окно Свойств диаграммы, вызовите dialog
функция соответствующего Stateflow.Chart
объект ch
:
dialog(ch)
Чтобы получить доступ к свойству объекта API, используйте запись через точку. Например, чтобы видеть значение StateMachineType
свойство для Stateflow.Chart
объект ch
, Введите:
ch.StateMachineType
Точно так же, чтобы изменить язык действия графика, измените его ActionLanguage
свойство:
ch.ActionLanguage = 'MATLAB'
Чтобы получить доступ к подсвойствам свойства API, можно вложить несколько имен свойства в отдельном выражении, которое использует запись через точку. Например, можно установить точку останова записи на графике путем изменения подсвойства Debug.Breakpoints.OnEntry
из соответствующего Stateflow.Chart
объект:
ch.Debug.Breakpoints.OnEntry = true;
Когда свойство или функция возвращают другой объект API, можно также получить доступ к свойствам и функциям для второго объекта при помощи вложенной записи через точку. Например, Machine
свойство Stateflow.Chart
возвращает Stateflow.Machine
объект, который содержит соответствующий график. Получить доступ к Name
свойство этого Stateflow.Machine
возразите, введите выражение:
machineName = ch.Machine.Name;
Точно так же defaultTransitions
функция возвращает массив Stateflow.Transition
объекты, которые соответствуют переходам по умолчанию в графике. Если график содержит только один переход по умолчанию, можно получить его метку путем ввода:
label = defaultTransitions(ch).LabelString;
Если график содержит больше чем один переход по умолчанию, необходимо сначала сохранить массив и затем использовать индекс массива, чтобы получить каждую метку:
transitions = defaultTransitions(ch); label1 = transitions(1).LabelString; label2 = transitions(2).LabelString;
Можно получить доступ к нескольким свойствам объекта API путем вызова get
функция. Например, чтобы получить имя и описание для Stateflow.Chart
объект ch
, Введите:
chartInfo = get(ch,{'Name','Description'});
Точно так же можно изменить значение нескольких свойств путем вызова set
функция. Например, чтобы изменить название и описание Stateflow.Chart
объект ch
, Введите:
set(ch,{'Name','Description'},{'Rectifier','Half-wave rectifier.'})
Можно использовать get
и set
функции, чтобы получить доступ или изменить свойства для каждого объекта в массиве. Например, эта команда возвращает массив ячеек с именами и описаниями Stateflow.Chart
объекты в массиве chartArray
:
chartInfo = get(chartArray,{'Name','Description'});
get
функционируйте отображает имена и значения свойств объекта. Например, чтобы видеть значения свойств Stateflow.Chart
объект ch
, Введите:
get(ch)
Можно также вызвать get
отобразить значения подсвойства объекта. Например, чтобы видеть значения подсвойств StateFont
свойство Stateflow.Chart
объект ch
, Введите:
get(ch.StateFont)
Много свойств API принимают ограниченное количество возможных значений. Чтобы отобразить список приемлемых значений для свойства, вызовите set
функция. Например, эта команда отображается, перечисляемые значения допускали Decomposition
свойство Stateflow.Chart
объект:
set(ch,'Decomposition')
Можно отобразить дополнительную информацию о свойствах объекта при помощи функции classhandle
. Например, эта команда отображает список имен свойства и типы данных Stateflow.Chart
объект:
get(classhandle(ch).Properties,{'Name','DataType'})
Видеть поля, которые можно использовать с этим синтаксисом, введите:
get(classhandle(ch).Properties)
classhandle
| defaultTransitions
| dialog
| fitToView
| get
| set