Изменение свойств и вызовов функций объектов Stateflow

Stateflow® Объекты API имеют свойства, которые соответствуют значениям, которые вы обычно задаете через Редактор Stateflow. Для примера, чтобы изменить положение состояния, обычно щелкните и перетащите состояние. С помощью Stateflow API вы изменяете положение состояния, изменяя Position свойство соответствующего Stateflow.State объект:

st.Position = [10 20 100 80];

Кроме того, функции объекта обеспечивают услуги, которые обычно предоставляются редактором Stateflow. Например, чтобы открыть диалоговое окно Свойства для перехода, обычно щелкните правой кнопкой мыши переход и выберите Properties. С помощью Stateflow API вы открываете это диалоговое окно, вызывая 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)

См. также

Функции

Объекты

Похожие темы