+ Added localization markers for errors
Plater: load_files() : Check for type_zip_amf and prusa is removed from conditions (it doesn't used as project's extensions anymore).
+ ModelProcessing: Some functions, like delete zero object, detection if model need to be converted from other units or looks like multipart are moved inside load_model() and theirs return values are written in load statistics, which have to be used by UI later.
Print can be unslicable for various reasons:
- object partially on bed
- invalid data (e.g. when sequential printing)
- bed is empty
Keep this information for each bed a behave accordingly.
- Add duplicate detection to validation
- Add file existance detection to validation
- Remove dependency on PrintToExport
- Remove destructor and use unique_ptr instead
- Call print apply on all print within update_background_process
- Render multiple bed thumnail only when there is a reason to (by
requesting extra frame)
- Show status of the slicing process for each bed
- Add aggregated statistics
Printing supports with different nozzle diameters is experimental, so the user is notified that it requires caution.
When automatic calculation of extrusion width is used, then the extrusion width of supports is calculated from the nozzle diameter of the smallest extruder.
Add an option that automatically changes all extrusion widths to zero, which will automatically calculate extrusion width based on nozzle diameters.
Allow using wipe tower with different nozzle diameters and show just warning about it.
Add an option for infill combination that automatically calculates the number of layers based on nozzle diameter.
Decide if we should rearrange after load based on the version
in 3mf config. Rearrange if the version < 2.9.0-alpha1.
In any other case do not rearrange (even if the version is missing).
The cut arrange updated the Plater without the new objects
being on any of the beds. This led to mutliple beds reducing
the bed count and activating a previous bed. This in turn
ment that get_active_bed was temporarily wrong and the subsequent
arrange placed items on a wrong bed.
Improve this by explictly setting which bed is going to be
used for the arrange and than restoring the originally
active bed.
If there is just one instance, simply choose the bed the
instance is on. If there are more instances, use the active
bed for arrange.