Internals - slic3r/Slic3r GitHub Wiki
PrintObject/ModelObject
- PrintObjects should be treated as ephemeral -- that is, overwritten any time a user makes a change.
- Any user-customizable option should be stored to or read from ModelObject.
- This permits saving and reloading from AMF.
Model* classes hold the input data, and any per-object configuration override. A Model basically is the content of the plater. A model can be saved to an AMF file and reloaded back. Print* classes are the temporary classes performing the job. The GUI automatically loads/reloads changes to Print* whenever a Model* is updated.