Commit Graph

44 Commits

Author SHA1 Message Date
1f82670fb3 Add notification if some objects are ignored after arrange 2021-07-08 13:35:40 +02:00
c5304750d9 Support for forward compatibility of configurations, user and system
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.

When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.

Substitute enums and bools only.  Allow booleans to be parsed as
    true: "1", "enabled", "on" case insensitive
    false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".

Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.

WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:57:05 +02:00
0ecba516a3 Get rid of Contour3D 2021-06-08 10:28:23 +02:00
d4ceb928ba Fix warning of ignored variable in structured binding 2021-05-19 10:08:41 +02:00
2bea4ccf9d Merge remote-tracking branch 'origin/tm_sl1_import_fix' 2021-04-07 13:56:14 +02:00
389a3d0a6a Better naming of gui controls 2021-04-07 12:51:02 +02:00
a2be47a6e6 Allow rotation of multiple selected items. Disable auto positioning 2021-04-07 12:51:02 +02:00
6f04f1b1d9 Allow auto-rotation of objects not completely inside bed.
Don't use SLAPrintObject as the input for optimization. Use ModelObject and pass the print config to the optimization in RotoptimizeJob::prepare()
2021-04-07 12:51:02 +02:00
785c7e97ec Change configuration bank name for SLA auto rotation 2021-04-07 12:51:02 +02:00
f21e0ae0ff Least supports optimization revived.
Fix missing include on Win32


Cleanup benchmarking code
2021-04-07 12:51:02 +02:00
97e7350911 Method selection implemented 2021-04-07 12:51:02 +02:00
c9b787af67 Unite cancel callback and status function 2021-04-07 12:51:02 +02:00
44076d12db Reverting to old rotation optimizer object-function.
Keep the performance optimizations though
2021-04-07 12:51:02 +02:00
f5ba2a1441 Fix duplicated error message dialog from GUI jobs. 2021-04-07 12:41:52 +02:00
27c779cc16 Fix issue with importing sl1 files with non-ascii filenames. 2021-04-07 12:41:38 +02:00
d62aace663 Reduction on compiler warnings, mainly on MSVC.
Fix of the new gap_fill_enable flag: Take it into account when comparing
regions.
2021-02-10 17:29:07 +01:00
9dc1b45735 Refresh object manipulator fields in sidebar after arrange 2021-01-28 12:44:38 +01:00
7e1deed915 Implement exception rethrow for ui jobs 2021-01-19 15:01:20 +01:00
b6fff21c0d Fix for "bed fill" discarding selected instance transformation.
fixes #5621
2021-01-04 20:33:17 +01:00
58382b2aea Fix for bad wipe tower handling in arrangement
fixes #5320
2020-12-07 18:00:10 +01:00
d65def7678 Follow up fix for bed filling
fixes: 2813db8906
2020-12-02 18:08:30 +01:00
93b13c94b1 Fix for bed filling with some existing items out of bed. 2020-12-02 17:52:40 +01:00
4c2fa51c61 Fix status indication glitch for bed filling 2020-12-02 17:50:12 +01:00
1fe708f9ce Further improvement on arrange settings handling 2020-12-02 14:04:39 +01:00
7cbf4a3209 Fix arrange distance with enabled sequential printing
fixes #5258
2020-12-01 14:08:07 +01:00
11cf9ec6b8 Don't apply result if fill bed was canceled. 2020-11-30 09:38:22 +01:00
4e75d0ad88 Fix bed filling with more existing instances than needed 2020-11-26 15:11:54 +01:00
28387920df Stop bed filling if enough instances are generated 2020-11-24 14:41:36 +01:00
ea14735edf Fix broken wipe tower arrangement
fixes #5207
fixes #5216
2020-11-23 16:05:24 +01:00
d6d6dff706 Prototype feature: fill plater with instances of selected object
#fixes #1350
2020-11-20 09:58:52 +01:00
1c22667f21 Right mouse reaction to arrange button
Working arrange settings popup
2020-11-20 09:57:52 +01:00
543341516b Localization, new POT 2020-11-18 12:30:00 +01:00
d5e4bce750 Support for naming slicer own threads for debugging.
The following threads are named with this commit:
slic3r_main, slic3r_BackgroundSlicingProcess,
slic3r_tbbpool_xx_yy where xx is a one based index of the TTB thread
and yy is the platform thread ID.
2020-10-22 13:54:15 +02:00
fd0c06d38c Significant performance improvements for elevated and non-elevated case
Apply bruteforce for elevated models
2020-09-10 19:35:45 +02:00
531502746e Performance optimizations and bugfix 2020-09-10 14:03:30 +02:00
90462b34e9 Mostly working, inefficiencies remain, status indication partly broken 2020-09-10 14:03:30 +02:00
dce0053631 rotation finder experiments
wip
2020-09-10 14:03:30 +02:00
8f0746fece SLA archive import will now recover the model's original position. 2020-08-27 23:14:42 +02:00
8c5db5020b Move SLA import to libslic3r with png reading using libpng
Also fix flipped object issue
2020-08-27 23:14:42 +02:00
ceaeb26da8 Code refactoring: AppConfig.cpp(hpp) are removed from the GUI to libslic3r 2020-08-08 17:03:20 +02:00
a1eeb569db Preset and PresetBundle are moved to the _libslic3r_ folder 2020-06-16 17:03:06 +02:00
937af2a2ce Include cleanup: Selection.hpp
It does not need 3DScene.hpp and Model.hpp
And it does not to be included by GLGizmoBase.hpp
2020-05-26 13:46:59 +02:00
33ab0eb660 Add ui job for SLA import 2020-04-23 19:45:55 +02:00
82aa16d123 Move ui jobs into separate folder 2020-04-23 18:56:09 +02:00