Пакет: slreportgen.report
Создать репортер диаграмм
Создайте репортер диаграмм, включая снимок диаграммы и подпись, для диаграммы Simulink ® или Stateflow ®.
Примечание
Чтобы использовать репортер диаграммы в отчете, необходимо создать отчет с помощью slreportgen.report.Report класс.
создает пустой репортер диаграмм. Задайте его свойства для захвата диаграммы Simulink или Stateflow.diagram = Diagram()
создает репортер диаграмм для диаграммы Simulink или Stateflow, указанной diagram = Diagram(source) source. Добавление этого репортера в отчет создает снимок диаграммы. Затем снимок отображается в отчете в виде изображения с подписью. Изображение моментального снимка хранится во временной папке отчета. Когда отчет закрыт, изображение снимка копируется в отчет, а затем изображение удаляется из временной папки. Чтобы предотвратить удаление файла изображения моментального снимка, используйте Debug свойство отчета. Посмотрите slreportgen.report.Report
задает свойства, используя пары имя-значение. Можно указать несколько аргументов пары имя-значение в любом порядке. Заключите каждое имя свойства в одинарные или двойные кавычки.diagram = Diagram(Name,Value)
| createTemplate | Создать шаблон схемы |
| customizeReporter | Создать класс репортера пользовательских диаграмм |
| getClassFolder | Расположение файла определения класса схем |
| getSnapshotImage | Расположение файла снимка схемы |
Добавление снимка верхнего уровня vdp модель в отчет.
load_system('vdp')
import slreportgen.report.*
import mlreportgen.report.*
rpt = slreportgen.report.Report('output','pdf');
chapter = Chapter();
chapter.Title = 'Diagram Reporter Example';
diagram = Diagram("vdp");
diagram.Snapshot.Caption = 'The van der Pol Equation';
diagram.SnapshotFormat = 'svg';
diagram.Snapshot.Height = '4in';
add(chapter,diagram);
add(rpt,chapter);
rptview(rpt);

Создание отчета PDF и добавление снимков схемы корневой системы и подсистемы из slrgex_sf_car модель к нему. Добавьте гиперссылку в подсистему передачи и добавьте абзац в качестве цели для этой ссылки.
import mlreportgen.report.* import slreportgen.report.* import slreportgen.utils.* import mlreportgen.dom.* rpt = slreportgen.report.Report('output','pdf'); chapter = Chapter('slrgex_sf_car'); load_system('slrgex_sf_car'); diag1 = Diagram('slrgex_sf_car'); diag1.Snapshot.Caption = 'Root System: slrgex_sf_car'; add(chapter,diag1); add(chapter,PageBreak); diag2 = Diagram('slrgex_sf_car/Engine'); diag2.Snapshot.Caption = 'Subsystem: slrgex_sf_car/Engine'; add(chapter,diag2); add(chapter, PageBreak); para = Paragraph('Custom target for slrgex_sf_car/transmission'); id = getObjectID('slrgex_sf_car/transmission'); append(para,mlreportgen.dom.LinkTarget(id)); add(chapter,para); add(chapter,PageBreak); add(rpt, chapter); close(rpt); rptview(rpt);

Используйте SnapshotArea для указания области диаграммы, которую требуется зафиксировать в моментальном снимке. В этом примере настраивается вид в редакторе Simulink Editor, а затем устанавливается SnapshotArea свойство для этого представления путем вызова slreportgen.utils.getCurrentEditorView.
Откройте модель.
f14
В редакторе Simulink отобразите часть диаграммы, которую необходимо записать в снимок. Получение текущей области просмотра Simulink Editor путем вызова slreportgen.utils.getCurrentEditorView.
editorViewArea = getCurrentEditorView();
Создайте отчет и отчет по диаграммам. Установите область снимка диаграммы в текущую область просмотра редактора. Добавьте в отчет репортер диаграммы.
import slreportgen.report.* import Slreportgen.utils.* rpt = Report('output','pdf'); diag = Diagram('f14'); diag.SnapshotArea = editorViewArea; add(rpt, diag); close(rpt); rptview(rpt);
slreportgen.finder.AnnotationFinder | slreportgen.finder.BlockFinder | slreportgen.finder.ChartDiagramFinder | slreportgen.finder.DiagramElementFinder | slreportgen.finder.DiagramFinder | slreportgen.finder.StateFinder | slreportgen.finder.StateflowDiagramElementFinder | slreportgen.finder.SystemDiagramFinder | slreportgen.report.Report | slreportgen.report.SimulinkObjectProperties | slreportgen.report.StateflowObjectProperties