--load-slicedata
<dir>Restore per-object slicing, perimeter, infill, and support outputs from a prior --export-slicedata run, skipping all per-object processing steps while still running wipe tower planning and G-code export, with a per-plate fallback to normal slicing if the cache is absent or invalid.
Details
Takes a path to a directory of previously exported slice data and, for each plate, attempts to restore the per-object slicing and toolpath results from JSON on disk rather than recomputing them. The companion flag --export-slicedata generates the directory during a prior slice run; --load-slicedata consumes it in a later run.
The directory is not read as a flat collection of files. The slicer appends a 1-based plate index to the base path, so plate 1's data lives in <dir>/1/, plate 2's in <dir>/2/, and so on. Inside each plate subdirectory, one JSON file exists per sliced object, named obj_<identify_id>_<region_count>_<region_config_hash>.json. The identify_id is the loaded_id written into the 3MF model instance at save time (falling back to the internal runtime ID for 3MFs that predate that field). The region_count is the total number of print regions on the plate, and region_config_hash is a combined hash over every region's config block. Both values are recomputed from the live job at load time and used to construct the expected filename; if no file with that name exists, the object is skipped with a warning log entry rather than treated as an error. What the JSON encodes is the full per-object processing output: per-layer sliced polygons, layer bounding boxes, overhang polygons, support layers, per-layer region data (perimeters and fill extrusion entities), and first-layer groupings.
When cache data loads cleanly, the slicer marks all per-object processing steps (slice, perimeters, infill, ironing, support generation) as done without executing them, then proceeds directly to wipe tower planning and G-code export. Objects whose cache files are missing but that are geometrically identical to a cached sibling on the same plate inherit that sibling's layers via the shared-object mechanism. Objects with no cache file and no matching sibling are re-sliced normally in the same pass without aborting the job. If the plate directory itself is absent, or if any JSON file fails to parse, the entire plate falls back to normal slicing with a warning log entry; no error exit occurs. Because --load-slicedata never aborts on a miss, a stale or partial cache directory degrades to a full re-slice rather than stopping the pipeline.
Watch out for
- ▲ Cache lookup is keyed on the model instance's saved ID plus a combined hash of all plate-level region configs, not on any geometry hash. If you modify object meshes in the 3MF between the export and load runs without changing slice settings, the old cache files will still match by name and the stale geometry will be used without warning.
- ▲ Combining `--load-slicedata` with `--repetitions` is a hard error that exits before slicing begins. When the loaded 3MF was created for a different printer bed than the currently loaded profile -- causing the slicer to internally remap object positions to fit the new bed -- using `--load-slicedata` emits a warning but continues; the cached geometry was computed for the original positions and will not reflect the remapping, so the resulting G-code paths may be mispositioned.
- ▲ The cache captures the full per-object processing output, from mesh slicing through perimeter generation, infill, ironing, and support generation. Wipe tower planning and final G-code export always run unconditionally on every invocation. What the cache bypasses is the per-object slicing pipeline, not just the geometry stage.
Sign up for free today
No credit card required. Connect unlimited printers and get production automation running in minutes.