Commit Graph

19242 Commits

Author SHA1 Message Date
Vojtech Bubnik
9f09f03228 Refactoring of FDM support generator:
1) If "support on build plate only" is enabled, the support columns are
   newly trimmed to not land on top of an object. However this may make
   the column too small to be stable.
2) Support enforcers newly take precedence over "supports on build plate only"
   and over "don't support bridges".
3) Some refactoring of the support generator code for clarity: Reduced
   some of the worst spagetti offenders.

Fixes Support generated even if support on build only activated #915
Fixes Bug: supports on build plate only #1340
Fixes Bottom interface layer is not generated , support on build plate only. (long open defect) #4199
Fixes option "supports on build plate only" does not work #3980

Fixes No support interface layers generated #1997
Fixes Feature Request: Option to combine results of 'support from build plate only' and 'support enforcers only' #2801
Fixes Support interface isn't generated: build plate only + blocked by model + support enforcer #3831
Fixes Support Enforcer don't create interface layers #5748
Fixes Support Enforcers Don't Have Top Loops/Raft #1870
Fixes Don't cancel support enforcers with "don't support bridges" #5105
2021-03-19 11:21:35 +01:00
YuSanka
4602f40813 Next auto color change improvements 2021-03-19 11:11:46 +01:00
YuSanka
995512f280 Fix of #6232 - Layer preview number scale and print time problem.
Problem description:
When "Print Settings -> Multiple Extruders -> No sparse layer" is enabled, then "Smart" Wipe Tower is used for wiping.
As a result, each layer with tool changes is splited for min 3 parts: first tool, wiping, second tool ...
But vertical slider wasn't respect to this case.
2021-03-18 18:53:49 +01:00
YuSanka
eda19a7e56 Fixed a crash after switch from Filament Settings Tab to some another, when "Custom G-code" category is active. 2021-03-18 18:53:49 +01:00
David Kocik
4d5500f10c Merge branch 'dk_notifications' 2021-03-18 14:08:10 +01:00
David Kocik
bfd87dc93a cleanup 2021-03-18 13:21:11 +01:00
David Kocik
7c7c355376 Notification manager - apply_in_preview function 2021-03-18 12:42:42 +01:00
YuSanka
a6cf840540 Auto color change improvements: Show info notification just ones, if there is new print 2021-03-17 17:11:03 +01:00
David Kocik
e054fe231e Merge branch 'dk_printhost' 2021-03-17 16:05:32 +01:00
David Kocik
8c075a878f warning fix 2021-03-17 15:43:41 +01:00
David Kocik
b4e6cc7ff8 Merge branch 'dk_notifications' 2021-03-17 15:41:52 +01:00
David Kocik
d2ec2b33f9 missing override keyword
missing override keyword
2021-03-17 15:40:59 +01:00
Vojtech Bubnik
a95607d7bf Fixing an FDM support generator bug, where some of the support columns
were missing abruptly when going down.
The issue was caused by extracting support areas from a grid and
filtering the extracted islands by intersection with the input islands.
Sometimes the input islands were a bit bigger than the extracted contour,
thus some of the samples of the input islands did not fall into
the extracted contour.
2021-03-17 12:25:49 +01:00
tamasmeszaros
b13239e4ca Fix previous commit's missing include 2021-03-17 10:05:24 +01:00
tamasmeszaros
0c4fb6dfcc CGAL may have infinite face vertex ranges.
Calling vtc.size() may end up in an infinite loop. Also, quads do not appear in CGAL meshes.
2021-03-17 09:42:03 +01:00
David Kocik
92de7bafc6 Merge branch 'dk_printhost' 2021-03-16 18:44:59 +01:00
David Kocik
5daaaa2845 Fixed upload notification cancel button 2021-03-16 18:44:12 +01:00
YuSanka
80b9a3c62b Fix of #6212 - Cannot select "New Project" after deleting models in saved project, continuing overwrites old project 2021-03-16 10:32:15 +01:00
tamasmeszaros
3e5e020651 Merge branch 'tm_drilling_improve' 2021-03-16 09:38:07 +01:00
tamasmeszaros
96ac6ff2fa Fix undrillable hole color and picking 2021-03-16 09:31:03 +01:00
tamasmeszaros
6d58546aef Fix unmarked failed holes on first gizmo opening 2021-03-16 09:31:03 +01:00
tamasmeszaros
3d0d96d8f9 Working hole drilling one by one without linear slowdown. 2021-03-16 09:31:03 +01:00
tamasmeszaros
6059d89bc8 Avoid mesh alteration when converting to CGAL Surface_Mesh
orient_to_bound_a_volume tends produce incorrect results.
2021-03-16 09:31:03 +01:00
tamasmeszaros
4b9de0398f Drill holes one by one and display warning of any of them fails
Drill with cgal::minus for now
2021-03-16 09:31:03 +01:00
Vojtech Bubnik
d0febbec32 Disable the new Toggle fullscreen menu item on OSX, it adds its own. 2021-03-16 08:54:46 +01:00
Lukas Matena
fc7762e465 Added a missing include (Linux) 2021-03-16 07:25:31 +01:00
Vojtech Bubnik
fc0e2d578f Checking for removable media on Chrome OS. 2021-03-15 17:42:18 +01:00
Vojtech Bubnik
d695e090ef Changing the Fullscreen hotkey to Ctrl+Cmd+F for OSX 2021-03-15 17:11:36 +01:00
Vojtech Bubnik
b9c4d29fe9 call detect_platform() after SLIC3R_LOGLEVEL env variable is read 2021-03-15 17:00:49 +01:00
Vojtech Bubnik
01406fd521 Worked around some quirky Linux file system issues. Namely
the Chromebooks share their file system to Linux using the 9p file
system, which does not support setting file ownership. Newly PrusaSlicer
will detect platform and it will not panick if copy_file() cannot set
file ownership after copying. It just logs the incident, and on
chromebooks the loglevel for that incident is "Info", not "Error".

Adjusted the full screen mode to contain menu bar.
Moved Platform.cpp/hpp to libslic3r
2021-03-15 16:19:22 +01:00
David Kocik
84a333e4ed Fixed progress percentage passed to notification 2021-03-15 16:03:51 +01:00
David Kocik
888f331778 Deleted debug print 2021-03-15 14:01:21 +01:00
David Kocik
645c840e5f Enabled print host upload notifications 2021-03-15 13:07:54 +01:00
enricoturri1966
db71a6308d Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_window 2021-03-15 11:27:43 +01:00
enricoturri1966
117a6ace5a G-code window - Fixed file mapping for gcode files generated by other slicers 2021-03-15 11:27:24 +01:00
Vojtech Bubnik
fb9d537b58 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2021-03-15 10:36:22 +01:00
Vojtech Bubnik
ba5e8860cb Fixing some compilation warnings 2021-03-15 10:36:03 +01:00
Oleksandra Yushchenko
e002f0066f
Ys code refactoring (#6227)
* GUI_ObjectList code refactoring:
The MenuFactory structure contains functions related to the context menu and bitmaps used to different volume types.
The SettingsFactory structure contains functions to getting overridden options, its bundles and bitmaps used to setting categories.

Fixed bugs/crashes:
1. Add object -> Add Settings from 3D scene -> Right click on object => Part's Settings list instead of object's
   (Same behavior if something else but Object is selected in ObjectList)
2. Add settings to the part -> Change part type to the "Support Blocker/Enforcer" -> Settings disappears (it's OK) but =>
   Save Project -> Open project => Support Blocker/Enforcer has a settings
3. Add part for object -> Change type of part -> Change monitor DPI -> old type icon appears
4. Select all instances in ObjectList -> Context menu in 3D scene -> Add Settings -> Select some category -> Crash

* ObjectLayers: Fixed a crash on re-scaling, when some layer range is selected

* Fixed OSX build

* Added menu item "Split to Objects" for multipart objects

+ Fixed bug: Add 2 parts,
             Add some settings for one part
             Delete part without settings => Single part object without settings, but settings are applied for the object.

+ Next refactoring: use same menu for Plater and ObjectList
2021-03-15 10:04:45 +01:00
Vojtech Bubnik
95c5763b83 Fixed typo in previous commit. 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
932336612c Full screen toggle 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
75ad7f262e Linux with precompiled headers wants Config.hpp header in PrintConfig.cpp 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
33b63b35a2 Added detection of Microsoft WSL/WSL2 Linux flavors.
Added tracing of the platform detection.
2021-03-15 09:55:57 +01:00
Vojtech Bubnik
2c76c42baa Linux/OSX don't like an "BSD" symbol? 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
8b4b6afd7b Fix of previous commit. 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
a9c3d270e6 ConfigOptions: GUI type as enum, not string.
Fixing compilation error in the new Platform code.
Fixing one issue in FDM support after splitting the top/bottom
interface layers.
2021-03-15 09:55:57 +01:00
Vojtech Bubnik
051ba0e6f4 New files missing from the previous commit. 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
ca8cf0a9f1 Detecting platform, namely reading /proc/version to detect Chromium OS.
Disabling Eject on Chromium, detecting removable media the Chromium way.
2021-03-15 09:55:57 +01:00
Vojtech Bubnik
2b19708720 Further ChromeOS support: Detect removable media mounted through ChromeOS 2021-03-15 09:55:57 +01:00
Vojtech Bubnik
9c80c6a4af Disable multi-sampling with virgl (VirtualGL) on Linux.
Namely, on ChromeOS virgl flips red/blue channels at least on some computers with multi-sampling enabled.
It seems it is sufficient to disable multi-sampling after the OpenGL context is created.
2021-03-15 09:55:57 +01:00
Vojtech Bubnik
2494a8f384 Allowing ints with open enums in combo boxes. 2021-03-15 09:55:57 +01:00