Commit Graph

184 Commits

Author SHA1 Message Date
enricoturri1966
c293c6e75f Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-04-29 12:53:55 +02:00
bubnikv
41d69e546b Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2020-04-28 19:31:18 +02:00
enricoturri1966
cf2f45c5ca Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer 2020-04-28 10:29:44 +02:00
Lukas Matena
34e8adeadd Custom supports data change forces invalidation of supports step 2020-04-22 11:16:28 +02:00
Lukas Matena
1abc17915d Custom supports data are saved into ModelObject and propagate to the backend
Invalidation of supports after they change is not implemented yet.
2020-04-16 16:57:46 +02:00
bubnikv
9db59a3cd7 WIP: Ironing over top surfaces. 2020-04-14 11:53:28 +02:00
enricoturri1966
7dd8ac8cb5 Fixed conflicts after merge with master 2020-03-25 12:07:59 +01:00
enricoturri1966
16e1cd5d19 ENABLE_THUMBNAIL_GENERATOR set as default 2020-03-25 10:15:02 +01:00
Lukas Matena
ac501bdf8b Merge branch 'master' into dev 2020-03-24 21:51:05 +01:00
bubnikv
f4baac9147 Revert "Added "Filament spool weight" option to filament options"
This reverts commit 3d3e36ba8d.

The change is too risky just before the PrusaSlicer 2.2.0 final release
and the feature may need a bit of polishing before release.
2020-03-14 09:49:12 +01:00
bubnikv
90fc7ddca5 "inifinit_skirt" renamed to "draft_shield"
Polished the tooltip for the draft shield.
Legacy conversion from old skirt_heigth == -1 to draft_shield = 1
2020-03-14 07:46:39 +01:00
YuSanka
d48616c5e7 Merge remote-tracking branch 'origin/ys_add_new_options' into ys_improvements 2020-03-13 11:49:51 +01:00
bubnikv
28d7dbaf00 num_extruders is now available from the output_file_name template. 2020-03-11 18:12:44 +01:00
YuSanka
226455adf3 Implemented "Use unlimited skirt" option 2020-03-11 11:43:08 +01:00
YuSanka
3c79e67780 Added "Filament spool weight" option to filament options 2020-03-09 17:01:05 +01:00
Lukas Matena
bffd07baa6 Fixed some more warnings 2020-03-03 15:53:26 +01:00
Enrico Turri
77d41a143c ENABLE_GCODE_VIEWER - Basic framework for new gcode viewer 2020-03-02 15:13:23 +01:00
bubnikv
2e3f602279 Fix of Placeholders do not respect filament overrides. #3649 2020-02-19 10:56:30 +01:00
Lukas Matena
3116ab6ff4 Fixed printing order of skirt-brim intersecting extrusions (#3634) 2020-02-17 12:57:43 +01:00
bubnikv
911591e682 Fix of #3632: Crash if a thin wall object is not printable, therefore
no extrusion is generated.

Now the situation is detected and an exception is thrown.
2020-02-09 18:34:06 +01:00
bubnikv
987ed01f56 Fixed a bug in the update of the backend when the Spiral Vase option
is enabled / disabled.

Spiral Vase forces different kind of slicing than the normal model:
In Spiral Vase mode, holes are closed and only the largest area contour is kept at each layer.
Therefore toggling the Spiral Vase on / off requires complete reslicing.

This commit moves the update to the correct location.
2020-02-09 13:56:42 +01:00
bubnikv
55c174f370 Fix of the previous commit: Fixed sequential print unit tests. 2020-02-07 14:43:13 +01:00
bubnikv
0e97237dcd Fixed a bug in validation of the FDM Print to check for extruder
collisions against already printed objects: Rotation of an object
was not being taken into account.
Fixes #2450 PrusaSlicer 2.0 Sequential printing vs rotate object
Fixes #3585 Always Sequential Printing Error (Regardless of setting, placement or object size)

Fixed some collisions in sequential print just after arrangement by
making the validation using a slightly lower extruder radius value
than the arrangement.

Refactored PrintObject coordinate system so that the PrintObject's
coordinate system is always centered in respect to its ModelObject's
geometries. This refactoring may improve path planning a bit and
it may lower the requirements on bits representing Clipper coordinates
by 1 bit.
2020-02-07 14:10:27 +01:00
bubnikv
bc15ebaf40 Color change - handling Color Change data stored for different
printer configuration:

ss -> sm : Just apply the color changes of the original ss project at the active extruder.
ss -> mm : There are no tool changes stored. Ignore color changes, they are invalid because they are extruder non-specific.

sm -> ss : Apply tool changes as color changes (tool changes remember the target color), apply original color changes.
sm -> mm : Ignore both color changes and tool changes.

mm -> ss/sm : Ignore both color changes and tool changes.
2020-02-06 14:03:27 +01:00
bubnikv
621da864ff Fixed invalidation of FDM back end if a custom per layer
extruder change is added or removed.
2020-02-04 17:46:31 +01:00
bubnikv
b4d3cd44cd Implemented handling of complex ConfigOptionFloatOrPercent chains
by the PlaceholderParser.

Namely, all the options with the "ratio_over" reference are now handled
correctly by the PlaceholderParser with the exception
of the "first_layer_extrusion_width", which overrides speed of extrusions
by their respective extrusion type.

Also the various extrusion widths (extrusion_width, first_layer_extrusion_width,
external_perimeter_extrusion_width etc.) produce the same numbers
as if ran through the back-end, with the assumption of not overriding
layer height by the variable layer height editing tool or layer height
modifiers.
2020-02-04 15:27:38 +01:00
bubnikv
6687c029e8 Fixed regression of 71fa411100
where the PrintObject bounding box was not invalidated correctly
when the transformation matrices of instances changed.

Also refactored PrintObject::size() for const correctness.
2020-01-30 12:22:30 +01:00
YuSanka
eef74403bf Synchronized mode of color_print data to/from 3mf/amf
+ Code refactoring " CustomGCode extracted to separate namespace and file
2020-01-23 16:11:21 +01:00
bubnikv
ec31ef90e9 Refactored PrintObject::m_copies to PrintInstances,
so that the ordering code at G-code export may work directly with
pointers to PrintInstances instead of with pair of <PrintObject, copy idx>.
Also the PrintInstance knows its source ModelInstance, which allows
sorting of PrintInstances for sequential printing in the order
they appear in Plater's object list.
2020-01-23 09:53:06 +01:00
YuSanka
e452247a97 Code refactoring to mode comparison 2020-01-17 12:24:58 +01:00
YuSanka
dfdd2c8cb9 Added "mode" variable for custom_gcode_per_print_z 2020-01-16 16:01:19 +01:00
bubnikv
efd6d795e4 Added synonyms to some PrintSteps:
psWipeTower now equals to new psToolOrdering indicating that
the ToolOrdering has been calculated (only if non-sequential mode is active).

psBrim now equals to new psExtrusionPaths
psExtrusionPaths shall be the last step before psWipeTower, indicating
that all the printing extrusions are calculated for the G-code preview
slider to edit the custom per print_z color changes, tool changes etc.
2020-01-15 16:20:16 +01:00
bubnikv
6ed818a5e7 Custom G-code references are now being assigned to ToolOrdering::LayerTools()
and the superfluous M600 (color change) events are filtered out there.

Fixed a handful of compiler warnings.
2020-01-14 11:54:09 +01:00
bubnikv
7c0cdc3134 Refactoring of GCode::process_layer().
Refactoring of GCode export of color changes, extruder switches etc,
so that the "color change" like extruder switches are applied first
at the Wipe Tower / G-code export, so that adding / removing
an extruder switch at the G-code preview slider does not invalidate
slicing.
2020-01-14 10:31:18 +01:00
bubnikv
744f1721f6 Fix of "Don't use bridging perimeters on top of elephant-foot compensation #3011"
If the Elephant foot compensation is applied to the 1st object's layer,
the uncompensated 1st object's slice is newly used for calculation
of bridges, overhans, skirt, brim, raft and supports.

Layer::slices were renamed to Layer::lslices to simplify reading
of the code, to differentiate from LayerRegion::slices.
2020-01-03 14:07:31 +01:00
YuSanka
ee69087873 Code refactoring for Color change implementation 2019-12-17 08:37:50 +01:00
Lukas Matena
e1330fffdc Added a validation check to reject wipe tower in sequential prints
This scenario was never supported (#3283)
2019-12-11 08:12:19 +01:00
YuSanka
52905631aa Localization improvements: Text correction 2019-12-06 13:58:23 +01:00
Lukas Matena
fa85422aa4 Fix of skirt: wipe tower was not correctly processed when rotated 2019-12-04 13:45:42 +01:00
YuSanka
2a60846d46 Merge remote-tracking branch 'origin/master' into ys_color_print_extension 2019-11-28 09:01:14 +01:00
Enrico Turri
848827494a ENABLE_THUMBNAIL_GENERATOR -> Thumbnails generated using a callback function 2019-11-22 12:39:03 +01:00
YuSanka
d72e7ce245 ExtruderSequenceDialog :
Fixed layouts after the second opening of the dialog.
 (Removing any extruder from the sequence does not cause an incorrect layout)
Validation of entered values added
 (0 is not a valid value)
2019-11-16 02:12:37 +01:00
Lukas Matena
9ed8b01a19 Merge branch 'lm_low_wipe_tower' 2019-11-14 10:37:04 +01:00
Enrico Turri
ac2d912826 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_plater_thumbnail 2019-11-05 13:58:13 +01:00
bubnikv
8492b57e66 Merge branch 'master' of https://github.com/BryanSmithDev/PrusaSlicer into BryanSmithDev-master 2019-11-05 11:37:40 +01:00
Enrico Turri
c0efcd46c6 ENABLE_THUMBNAIL_GENERATOR -> Allow for multiple thumbnails into gcode and sl1 files 2019-10-25 13:59:13 +02:00
Enrico Turri
f9ce06effd ENABLE_THUMBNAIL_GENERATOR -> Code cleanup 2019-10-24 10:25:40 +02:00
Enrico Turri
5cfcfb62db ENABLE_THUMBNAIL_GENERATOR -> WIP: Refactoring and preparation for adding thumbnails to exported gcode and 3mf files 2019-10-23 13:31:24 +02:00
YuSanka
c469699a7c Improved extruder_selector for DoubleSlider 2019-10-16 10:30:29 +02:00
YuSanka
9fbba6d8bd Implemented custom extruder(tool) change from DoubleSlider 2019-10-15 15:42:30 +02:00