Simulink.sdi.CustomSnapshot class

Пакет: Simulink.sdi

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

Описание

Использование Simulink.sdi.CustomSnapshot объект, чтобы задать параметры для моментального снимка, который вы хотите создать, не открывая Данных моделирования Inspector и не влияя на открытие сессии. Создание моментального снимка с использованием Simulink.sdi.CustomSnapshot объект является оптимальной опцией для полных скриптов рабочих процессов. Можно задать размерности снимка в пикселях, размещение подграфика и пределы для осей X и Y. Можно использовать clearSignals и plotOnSubplot методы для построения графиков сигналов, которые необходимо включить в моментальный снимок. Чтобы захватить снимок, можно пройти Simulink.sdi.CustomSnapshot объект как значение для settings пара "имя-значение" Simulink.sdi.snapshot функционировать или использовать snapshot способ.

Конструкция

snap = Simulink.sdi.CustomSnapshot создает Simulink.sdi.CustomSnapshot объект.

Свойства

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

Ширина изображения, в пикселях.

Пример: 750

Высота изображения, в пикселях.

Пример: 500

Количество строк подграфика, заданное как скаляр между 1 и 8, включительно. Использование Rows и Columns чтобы задать требуемое размещение подграфика.

Пример: 2

Количество подграфиков, заданное как скаляр между 1 и 8, включительно. Использование Rows и Columns чтобы задать требуемое размещение подграфика.

Пример: 3

Пределы для оси времени в моментальном снимке. Временные пределы по осям одинаковы для всех подграфиков. По умолчанию ось времени регулируется, чтобы соответствовать наибольшей временной области значений нанесенных на график сигналов.

Пример: [0 20]

Массив ячеек из матриц 1 на 2, задающий пределы оси Y для всех подграфиков в пользовательском моментальном снимке. По умолчанию YRange является [-3 3] для всех подграфиков.

Пример: {[-10 10],[0 100]}

Методы

clearSignals Очистить сигналы, нанесенные на подграфики Simulink.sdi.CustomSnapshot объект
plotOnSubPlot Постройте график на Simulink.sdi.CustomSnapshot подграфики объектов
снимок Создайте пользовательский снимок файловой системы

Копировать семантику

Указатель. Чтобы узнать, как классы handle влияют на операции копирования, см. раздел «Копирование объектов».

Примеры

свернуть все

В этом примере показано, как скопировать настройки представления из одного запуска в другой и как создать рисунки с помощью 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