snapshot

Класс: Simulink.sdi.CustomSnapshot
Пакет: Simulink.sdi

Создайте пользовательский снимок файловой системы

Синтаксис

fig = snap.snapshot
[fig,image] = snap.snapshot
fig = snap.snapshot(Name,Value)
[fig,image] = snap.snapshot

Описание

fig = snap.snapshot создает рисунок согласно свойствам Simulink.sdi.CustomSnapshot объект, snap, и возвращает указатель для рисунка, fig.

[fig,image] = snap.snapshot создает рисунок согласно свойствам Simulink.sdi.CustomSnapshot объект, snap, и возвращает указатель для рисунка, figи массив данных изображений, image.

fig = snap.snapshot(Name,Value) создает рисунок согласно свойствам Simulink.sdi.CustomSnapshot объект, snap, с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар. Этот синтаксис возвращает указатель на рисунок fig.

[fig,image] = snap.snapshot создает рисунок согласно свойствам Simulink.sdi.CustomSnapshot объект, snap, с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар. Этот синтаксис возвращает указатель на рисунок figи массив данных изображений, image.

Входные параметры

расширить все

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'to','figure','props',{'Name','My Data'}

Тип создаваемого моментального снимка.

  • 'image' - Создать рисунок и вернуть указатель на рисунок и массив данных об изображениях. Когда вы задаете 'to','image', а fig и image выходы имеют значение.

  • 'figure' - Создать рисунок и вернуть указатель на рисунок. Когда вы задаете 'to','figure' а fig выход имеет значение, и image выход пуст.

  • 'file' - Сохраните в файл PNG с именем, заданным filename Пара "имя-значение". Если вы не задаете filename Пара "имя-значение" файл имеет имя plots.png. Когда вы задаете 'to','file', а fig и image выходы являются пустыми.

  • 'clipboard' - Скопируйте графики в системный буфер обмена. Из буфера обмена можно вставить изображение в другую программу, такую как Microsoft® Слово. Когда вы задаете 'to','clipboard', а fig и image выходы являются пустыми.

Пример: 'to','file'

Типы данных: char | string

Имя файла изображения для хранения моментального снимка при указании 'to','file'.

Пример: 'filename','MyImage.png'

Типы данных: char | string

Свойства фигуры, заданные как массив ячеек. Можно включать настройки свойств рисунка, описанные в свойствах фигуры.

Пример: 'props',{'Name','MyData','NumberTitle','off'}

Типы данных: char | string

Выходные аргументы

расширить все

Указатель на рисунок. Когда рисунок не создается с заданными опциями, fig выход пуст.

Массив данных изображений. The image выход имеет значение, когда вы используете Simulink.sdi.snapshot без каких-либо входных параметров или без to Пара "имя-значение" и когда вы задаете 'to','image'.

Примеры

расширить все

В этом примере показано, как скопировать настройки представления из одного запуска в другой и как создать рисунки с помощью Simulink.sdi.CustomSnapshot объект.

Симулируйте модель и получите объект запуск

Сконфигурируйте vdp модель для сохранения выходных данных и запуска симуляции для создания данных.

load_system('vdp')
set_param('vdp','SaveFormat','Dataset','SaveOutput','on')
set_param('vdp/Mu','Gain','1');
sim('vdp');

Для доступа к данным запуска используйте программный интерфейс Данные Моделирования Inspector.

runIndex = Simulink.sdi.getRunCount;
runID = Simulink.sdi.getRunIDByIndex(runIndex);
vdpRun = Simulink.sdi.getRun(runID);

Изменение настроек представления сигнала

Используйте Simulink.sdi.Run объект для доступа к сигналам во время запуска. Затем измените настройки представления сигнала. Этот пример задает цвет и стиль линии для каждого сигнала. Настройки вида для запуска содержат настройки вида для каждого сигнала и настройки вида, заданные для области графика.

sig1 = vdpRun.getSignalByIndex(1);
sig2 = vdpRun.getSignalByIndex(2);

sig1.LineColor = [0 0 1];
sig1.LineDashed = '-.';

sig2.LineColor = [1 0 0];
sig2.LineDashed = ':';

Захват снимка из Данных моделирования Inspector

Создайте Simulink.sdi.CustomSnapshot объект и использовать Simulink.sdi.snapshot функция для программного захвата моментального снимка содержимого Данных моделирования Inspector.

snap = Simulink.sdi.CustomSnapshot;

Можно использовать свойства Simulink.sdi.CustomSnapshot объект, чтобы сконфигурировать настройки графика, такие как размещения подграфика и пределы по осям, и построить сигналы. Когда вы используете Simulink.sdi.CustomSnapshot объект для создания рисунка, эти настройки графика не влияют на Данные моделирования Inspector.

snap.Rows = 2;
snap.YRange = {[-2.25 2.25],[-3 3]};
snap.plotOnSubPlot(1,1,sig1,true)
snap.plotOnSubPlot(2,1,sig2,true)

Использование Simulink.sdi.snapshot чтобы сгенерировать рисунок, заданную в свойствах Simulink.sdi.CustomSnapshot объект.

fig = Simulink.sdi.snapshot("from","custom","to","figure","settings",snap);

Figure contains 2 axes. Axes 1 contains an object of type line. This object represents x1. Axes 2 contains an object of type line. This object represents x2.

Скопируйте настройки представления в новый запуск симуляции

Симулируйте модель снова, с другим Mu значение. Для доступа к данным моделирования используйте программный интерфейс Simulation Data Inspector.

set_param('vdp/Mu','Gain','5')
sim('vdp');

runIndex2 = Simulink.sdi.getRunCount;
runID2 = Simulink.sdi.getRunIDByIndex(runIndex2);
run2 = Simulink.sdi.getRun(runID2);

Чтобы создать график новых выходных данных, похожих на тот, который вы создали на предыдущем шаге, можно скопировать настройки представления в запуск в одной строке кода с помощью Simulink.sdi.copyRunViewSettings. The Simulink.sdi.copyRunViewSettings функция не обновляет настройки графика автоматически в Simulink.sdi.CustomSnapshot объекты, поэтому задайте plot введите как false.

sigIDs = Simulink.sdi.copyRunViewSettings(runID,runID2,false);

Захват снимка нового запуска симуляции

Используйте Simulink.sdi.CustomSnapshot объект для захвата моментального снимка нового запуска симуляции. Во-первых, очистите сигналы от подграфиков. Затем постройте график сигналов от нового запуска и захватите другой снимок.

snap.clearSignals
snap.YRange = {[-2.25 2.25],[-8 8]};
snap.plotOnSubPlot(1,1,sigIDs(1),true)
snap.plotOnSubPlot(2,1,sigIDs(2),true)

fig = snap.snapshot("to","figure");

Figure contains 2 axes. Axes 1 contains an object of type line. This object represents x2. Axes 2 contains an object of type line. This object represents x1.

Введенный в R2018a