Объект буфера обмена
возвращает clipboard
= sfclipboardStateflow.Clipboard
объект. Используйте Clipboard
копируемый объект и вставки объектов в пределах одного графика, между графиками в том же Simulink® модель, или между графиками в разных моделях.
Состояние группы A
и скопируйте его содержимое в диаграмму ch
. При группировке состояния, прямоугольника или графической функции можно скопировать и вставить все объекты, содержащиеся в сгруппированном объекте, а также все связи между этими объектами. Этот метод является самым простым способом программного копирования и вставки объектов. Если состояние не сгруппировано, копирование состояния не копирует ни одно из его содержимого.
Найдите Stateflow.State
объект с именем A
на графике ch
.
sA = find(ch,'-isa','Stateflow.State','Name','A');
Состояние группы A
и его содержимое путем установки IsGrouped
свойство для sA
на true
. Сохраните предыдущий параметр этого свойства, чтобы вы могли вернуться к нему позже.
prevGrouping = sA.IsGrouped; sA.IsGrouped = true;
Измените имя состояния на 'Copy_of_A'
. Сохраните предыдущее имя, чтобы вернуться к нему позже.
prevName = sA.Name;
newName = ['Copy_of_' prevName];
sA.Name = newName;
Доступ к объекту буфера обмена.
cb = sfclipboard;
Скопируйте сгруппированное состояние в буфер обмена.
copy(cb,sA);
Восстановите исходные параметры свойств состояний.
sA.IsGrouped = prevGrouping; sA.Name = prevName;
Вставьте копию объектов из буфера обмена в график.
pasteTo(cb,ch);
Настройте свойства состояний нового состояния.
sNew = find(ch,'-isa','Stateflow.State','Name',newName); sNew.Position = sA.Position + [400 0 0 0]; sNew.IsGrouped = prevGrouping;
Копировать состояния A1
и A2
, наряду с переходом между ними в новое состояние на графике ch
. Чтобы сохранить переходные соединения и связи удержания между объектами, скопируйте все связанные объекты сразу.
Найдите Stateflow.State
объект с именем A
на графике ch
.
sA = find(ch,'-isa','Stateflow.State','Name','A');
Добавьте новое состояние с именем B
. Чтобы включить вставку других объектов внутри B
преобразуйте новое состояние в субдиаграмму.
sB = Stateflow.State(ch);
sB.Name = 'B';
sB.Position = sA.Position + [400 0 0 0];
sB.IsSubchart = true;
Создайте массив с именем objArray
который содержит состояния и переходы в состоянии A
. Используйте функцию setdiff
для удаления A состояния
из массива копируемых объектов.
objArrayS = find(sA,'-isa','Stateflow.State'); objArrayS = setdiff(objArrayS,sA); objArrayT = find(sA,'-isa','Stateflow.Transition'); objArray = [objArrayS objArrayT];
Доступ к объекту буфера обмена.
cb = sfclipboard;
Скопируйте объекты в objArray
и вставить их в субдиаграмму B
.
copy(cb,objArray); pasteTo(cb,sB);
Возврат B
в состояние.
sB.IsSubchart = false; sB.IsGrouped = false;
Измените положение состояний и переходов в B
.
newStates = find(sB,'-isa','Stateflow.State'); newStates = setdiff(newStates,sB); newTransitions = find(sB,'-isa','Stateflow.Transition'); newOClocks = get(newTransitions,{'SourceOClock','DestinationOClock'}); for i = 1:numel(newStates) newStates(i).Position = newStates(i).Position + [25 35 0 0]; end set(newTransitions,{'SourceOClock','DestinationOClock'},newOClocks);
Вы щелкнули по ссылке, которая соответствует команде MATLAB:
Выполните эту команду, введя её в командном окне MATLAB.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.