iso10110.report#
ISO 10110 System Report
Batches ElementDrawing instances for every
element in a DrawingSpec and provides
combined save/preview methods.
Bernhard Lutzer, 2026
Classes
|
Generate ISO 10110 drawings for all elements in a system. |
- class ISO10110Report(spec: DrawingSpec, paper: str = 'A4', orientation: str = 'portrait', style: DrawingStyle | None = None)[source]#
Generate ISO 10110 drawings for all elements in a system.
- Parameters:
spec – The
DrawingSpecthat carries both the optic geometry and all tolerance annotations.style –
DrawingStylefont-size scale factors and border margin, applied to every element’s drawing. Defaults toDrawingStyle(), reproducing the built-in appearance exactly.
Example:
report = ISO10110Report(spec) report.generate() report.save_dxf("output/") report.save_pdf("output/system_drawings.pdf") report.show()
- generate() list[ElementDrawing][source]#
Build an
ElementDrawingfor every element.Note this only constructs the
ElementDrawinginstances — it does not eagerly build each one’s DXF document, so calling this (and the PDF/PNG/show methods below, which call it automatically) never requiresezdxfto be installed.ElementDrawing.generate()(DXF-specific) is invoked lazily bysave_dxf()instead.- Returns:
List of generated
ElementDrawinginstances.
- save_dxf(directory: str | Path) list[Path][source]#
Save one DXF file per element into directory.
- Returns:
List of written file paths.
- save_pdf(path: str | Path, combined: bool = True) Path[source]#
Save drawings to PDF.
- Parameters:
path – If combined is True, the path of the combined multi-page PDF. If False, treated as a directory and one PDF per element is written.
combined – When True (default) all elements go into a single multi-page PDF.
- Returns:
Path to the written file (or the directory when combined=False).