Commit Graph

3520 Commits

Author SHA1 Message Date
7536e51982 Do not allow objects to be placed fully below bed 2021-08-24 07:46:59 +02:00
b25cbac1a4 Merge branch 'master' into fs_QuadricEdgeCollapse 2021-08-23 11:33:14 +02:00
3da95ea901 #5798 - Fixed naming of single part objects when loaded from 3mf files produced by 3rd part softwares 2021-08-23 11:23:31 +02:00
662ee8b8ec Optimization of ConfigBase::equals() to not create intermediate
list of modified options.

Optimization of DynamicConfig::equals(), ::diff(), ::equal()
to iterate over the two compared std::map trees instead of
first generating a list of keys and then searching for each key
in the respective map.

Optimization of PresetCollection::current_is_dirty() and ::saved_is_dirty()
to call DynamicConfig::equals() instead of ::diff().
2021-08-23 10:47:47 +02:00
c4252b8746 #6806 - Fixed naming of multipart objects when loaded from 3mf files 2021-08-23 09:57:35 +02:00
bb339c5b6e error when loading configbundle (#6822)
a little typo
2021-08-23 08:09:25 +02:00
9957a5b90f Disabled "expensive checks" in debug mode, TriangleSelector 2021-08-20 16:46:38 +02:00
ef90d1b109 Fixed update of slicing back-end with MMU-painted objects after change
of a printer from MMU to non-MMU (when number of extruders changes).
Also slightly optimized in case a MMU-painted object is sliced in
single extruder mode.
2021-08-20 16:19:00 +02:00
42600ad924 Fixed unreliable application of filament overrides to PlaceholderParser.
Sometimes the PlaceholderParser used main config instead of filament
overrides and vice versa.
Follow-up to #3649
2021-08-20 14:21:22 +02:00
1b17c9489a Tech ENABLE_FIX_MIRRORED_VOLUMES_3MF_IMPORT_EXPORT - fixed export/import to/from 3mf file of mirrored volumes 2021-08-20 11:24:48 +02:00
b5c8e2629c Removed debug code 2021-08-19 09:47:01 +02:00
0e6b9aa65b Added retract acceleration member variable to GCodeProcessor and modified GCodeProcessor::process_M204() method 2021-08-19 09:38:51 +02:00
ea5769e748 Remove misleading comment 2021-08-18 16:51:14 +02:00
cfe33cfc37 Remove code duplication, clarify naming of orientation searches 2021-08-18 16:48:51 +02:00
0f0fc43bb3 Add min z height orientation search 2021-08-18 16:48:51 +02:00
257b22ec9c Auto selection of presets (#6817)
PresetComboBoxes: Auto selection of printer/material preset from the new added presets in ConfigWizard
+ Check unsaved changes if ConfigWizard is running from the PesetComboBoxes
2021-08-18 16:10:35 +02:00
e4567a6be0 Add cancel and statusFn into init phase of simplification
Move debug functions into NDEBUG macro
2021-08-18 12:07:46 +02:00
925705ca55 Merge branch 'master' into fs_QuadricEdgeCollapse 2021-08-18 10:37:21 +02:00
b4f91cffee Fix SLA support strut piercing into model 2021-08-18 09:36:01 +02:00
803de571e0 Merge branch 'tm_rotfinder_fixes' 2021-08-17 16:15:41 +02:00
2b9d7c1523 Some improvements to "less supports" optimizer 2021-08-17 15:40:01 +02:00
756e6f3a5e Default values for brim_offset anf elefant_foot_compensation set to zero 2021-08-17 15:09:34 +02:00
814f6818e0 Merge remote-tracking branch 'origin/lh_brim_offset' 2021-08-17 15:02:41 +02:00
2b4005d1f5 Merge branch 'master' into fs_QuadricEdgeCollapse 2021-08-16 11:56:56 +02:00
6e5bf6486a Merge branch 'fs_QuadricEdgeCollapse' of https://github.com/prusa3d/PrusaSlicer into fs_QuadricEdgeCollapse 2021-08-16 11:55:43 +02:00
bc2a61719a Add check of neighbors
Add store triangle for debug purpose
2021-08-16 11:53:37 +02:00
c08cdf5605 Make the input mesh transformation consistent.
Also add some comments
2021-08-16 11:29:48 +02:00
c286a0fcca Rotfinder fixes wip 2021-08-16 11:29:22 +02:00
7053d6ab91 Fixes after merging 2.3.2/2.3.3 changes from stable to master. 2021-08-13 14:53:13 +02:00
264e10400a Fix of 2.3.2 regression in configuration layer (reading of nullable
boolean vectors)
Fix of Filament overrides on saved 3MF MMU profiles are broken #6711
2021-08-13 13:53:09 +02:00
49c1a4ddbb Improvement in the subtitution information dialog. 2021-08-13 13:49:43 +02:00
0fef5938e1 Forward compatibility, parameter susbtitution: Substitute vector values
(extruder specific) with their default, if the default
is a single value vector.
Show the "Physical Printers" label in the substitution window.
2021-08-13 13:48:28 +02:00
9edf910167 Configuration compatibility - implemented substitution and reporting for vectors
of bools (including the nullable bools).
2021-08-13 13:48:12 +02:00
dad19f3b5b Fix of the previous commit. 2021-08-13 13:47:07 +02:00
6e6bce1ac3 Forward compatibility - config substitutions:
1) Verify whether a value looks like an enum
2) Always report substitution of an enum with a boolean.
2021-08-13 13:43:33 +02:00
498db5cb01 Support for SL1S printer:
Where SL1 is mentioned, mention it as SL1 / SL1S.
Support loading / saving of SL1S files in addition to SL1.
2021-08-13 13:40:13 +02:00
c7d91198b8 Improved error reporting when importing various configuration files:
1) Slic3r::RuntimeError was replaced with ConfigurationError,
   all exceptions thrown by the configuration layer are derived
   from ConfigurationError.
2) When parsing configuration files, ConfigurationError is catched and
   rethrown extended with the file name being parsed.
2021-08-13 13:37:24 +02:00
3b2a7d1b05 Fixed loading of system presets with incompatible system profile keys
before the "reconfigure" dialog is shown.

Replaced boost::filesystem::copy_file() with Slic3r::copy_file()
in config snapshot loading code.
2021-08-13 13:34:40 +02:00
dad7e8cf9b Substitutions : Implemented InfoDialog 2021-08-13 13:30:50 +02:00
dc6fbde291 Fixed reading of configuration from 3MF broken
with e947a29fc8
2021-08-13 10:52:54 +02:00
94c05f1dd9 Follow-up to 7c01ddf996
1) Starting with this commit, configuration block exported into G-code
   is delimited by "; prusaslicer_config = begin" and "; prusaslicer_config = end".
   These delimiters look like any other key / value configuration pairs
   on purpose to be compatible with older PrusaSlicer config parsing from G-code.
2) Config parser from G-code newly searches for "; generated by ..."
   comment over the complete G-code, thus it is compatible with various
   post processing scripts extending the G-code at the start.
3) Config parser from G-code parses PrusaSlicer version from
   the "; generated by PrusaSlicer ...." header and if the G-code was
   generated by PrusaSlicer 2.4.0-alpha0 and newer, it expects that
   the G-code already contains the "; prusaslicer_config = begin / end"
   tags and it relies on these tags to extract configuration.
4) A new simple and robust parser was written for reading project configuration
   from 3MF / AMF, while a heuristic parser to read config from G-code located
   at the end of the G-code file was used before.
2021-08-12 15:27:46 +02:00
a077cf498f Moved 'brim_offset' option into Advanced mode (same as EFC) 2021-08-12 13:38:53 +02:00
d9a801bf35 Fixup of previous commit 2021-08-11 13:38:28 +02:00
3e051aa753 Follow-up of cf32b56 (postprocessing scripts):
- The optional output_name file might contain the .pp suffix.
- In case the file contains just filename, prepend it with the
  output dir. We don't want to save to current workdir.
2021-08-11 12:12:50 +02:00
2a1b146697 Follow-up to 215ee293ae:
More robust CLI parser.
2021-08-11 09:49:23 +02:00
894850f868 Reworked visualization of selected triangles by seed fill and bucket fill inside the multi-material painting gizmo. Now is drawn boundary around a selected area, and also all triangles inside the selected area are drawn with a darker color. 2021-08-10 21:38:48 +02:00
ed4cce7feb Added missing includes (GCC 11.1) 2021-08-10 21:37:10 +02:00
2cfe471a05 Implemented extension of the G-code post-processor framework:
1) New environment variable SLIC3R_PP_HOST contains one of
   "File", "PrusaLink", "Repetier", "SL1Host", "OctoPrint", "FlashAir", "Duet", "AstroBox" ...
2) New environment variable SLIC3R_PP_OUTPUT_NAME contains the name
   of the G-code file including path (for SLIC3R_PP_HOST == "File")
   or a name of the file after upload to the host (PrusaLink, Octoprint ...)
3) The post-processing script may suggest a new output file name
   (likely based on SLIC3R_PP_OUTPUT_NAME) by saving it as a single line
   into a new "output name" temp file. The "output name" file name is
   created by suffixing the input G-code file name with ".output_name".

Please note that the G-code viewer visualizes G-code before post-processing.

Fixes Broken PostProcessing when script changes out-filename #6042
2021-08-10 15:22:01 +02:00
57a66f1dfb The offset is applied after the elephant food compensation. The value of the brim offset is now also measured from the object after the elephant foot compensation. Thus, the brim offset set to zero means that the brim will touch the object even if elephant foot compensation is enabled. 2021-08-10 09:44:39 +02:00
3cce6652dd Fix of Some FDM supports fail to generate due to wrongly-translated enforcer polygons. #6739
Thanks @n8bot for finding the bug.
Also removed some dead code in MM segmentation.
2021-08-10 09:41:28 +02:00