Compilers#

OpenVCAD compilers translate prepared implicit Node trees into concrete outputs: voxel image stacks, slicer projects, and other machine-facing artifacts. They are exposed as pyvcad_compilers.

This section compares the compilers shipped today and links to dedicated guides. Each compiler assumes you have already built a design with the attributes it consumes (see Getting Started with OpenVCAD and the Functional Grading Guide).

Compiler comparison#

Compiler

Required attributes (root)

Primary output

Typical use

Material Inkjet

VOLUME_FRACTIONS

Stack of RGBA PNG slices (one per Z layer)

Multi-material material jetting workflows that consume per-layer voxel images (e.g. PolyJet-class systems and similar slice-based pipelines)

Color Inkjet

COLOR_RGBA

Stack of RGBA PNG slices (ICC / color pipeline → discrete CMYK + white + clear)

Full-color PolyJet-class inkjet builds from sRGBA designs

VAT Photo

INTENSITY

Stack of 8-bit grayscale BMP slices (one per Z layer)

Vat photopolymer workflows that consume grayscale exposure masks (for example LCD / DLP / masked SLA image stacks)

Slicer Project

(validated internally; see guide)

.3mf project for PrusaSlicer

FFF / filament slicing with spatially varying scalar fields → per-volume settings or G-code extrusion

Simulation Compiler

VOLUME_FRACTIONS or selected direct scalar fields such as MODULUS, POISSONS_RATIO, and DENSITY

.xdmf + .h5 or .inp

Finite-element mesh export for simulation workflows that need geometry plus cell-wise material/property data