Commit graph

3758 commits

Author SHA1 Message Date
YuSanka
e8be7b2ecd Implemented possibility to show resin colors from the Plater (Bottles with resin are colored now in preset combobox)
+ Added nsvgParseFromFileWithReplace() to replace some colors before parsing from SVG file
+ Thumbnails are saved with selected resin color in SL1 or SL1S files
+ "white" folder is deleted from "icons" now. THere is no needed anymore.
2021-11-09 17:01:50 +01:00
enricoturri1966
7de0f1195a Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_imgui_slider 2021-11-09 15:09:32 +01:00
enricoturri1966
ab6ceaa68c #7246 - Fixed rrror when resize object to bed limit 2021-11-09 12:29:22 +01:00
enricoturri1966
67533da405 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_imgui_slider 2021-11-08 13:44:13 +01:00
enricoturri1966
5190a1f425 #7258 - Fixed cut of merged object 2021-11-08 12:56:38 +01:00
Lukáš Hejl
69b7fac01f Fixed a compiler warning. 2021-11-05 23:19:01 +01:00
Lukáš Hejl
e13be90283 Fix of #7109 (Bulges with model's base color on multi-material painted models) 2021-11-05 22:52:52 +01:00
Lukáš Hejl
f5a6e53298 Fix of #7235 (Dimples in external perimeter after multi-material segmentation) 2021-11-05 22:52:52 +01:00
Lukáš Hejl
b572588fc5 Small refactoring of storing colored polygons in multi-material segmentation.
Previously, colored polygons were stored so that each polygon had a color assigned to it, which made it difficult to perform operations like union or so on all polygons of the same color. Now polygons are stored grouped by their assigned color/extruder.
2021-11-05 22:52:52 +01:00
YuSanka
2fcab52f86 Added "Color" parameter for SLA material 2021-11-05 17:22:37 +01:00
tamasmeszaros
535191c1e9 Verify layerHeight conf value before use 2021-11-05 15:58:40 +01:00
tamasmeszaros
c4c8b7608e Fix some mesh errors in sl1 archive reconstruction 2021-11-05 15:43:40 +01:00
tamasmeszaros
fb429c1e23 Load layer height from config.ini if profile is missing from sl1 archive 2021-11-05 15:31:15 +01:00
enricoturri1966
2a940863e1 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_imgui_slider 2021-11-05 14:47:21 +01:00
enricoturri1966
f7662682c8 Tech ENABLE_ENHANCED_IMGUI_SLIDER_FLOAT - Modified ImGuiWrapper::slider_float() to create a compound widget where an additional button can be used to set the keyboard focus into the slider to allow the user to type in the desired value 2021-11-05 14:46:44 +01:00
YuSanka
aff9e1f7ea MSW_DarkMode: Next Improvements
* Refreshed title bar for all Dialogs and MainFrame
* Refreshed header of the DataViewCtrl and ListView
* Refresh tooltips
* Redraw SpinCtrls
* Use system menu with is colored in respect to the color mode
* Preferences: Added parameter "Use system menu for application" and moved to the "Dark mode" tab with "Enable Dark mode parameter"
2021-11-05 10:01:13 +01:00
David Kocik
a771519b9f Fix of #7169 Check if material or filament profile is_compatible before selecting it when it should be selected as first selected profile in wizard. 2021-11-03 11:37:06 +01:00
Lukáš Hejl
54b0ee6a4a Fix of #7112 (Default color sometimes appeared between two multi-material painted areas) 2021-11-02 13:02:00 +01:00
Lukáš Hejl
3eb4ae309a Small refactoring of post-processing of the projected painted lines in multi-material segmentation. 2021-11-02 13:02:00 +01:00
Lukáš Hejl
e04c934253 Added more debug output for multi-material segmentation for debugging projection of the painted lines. 2021-11-02 12:49:46 +01:00
Vojtech Bubnik
4e9f906848 Cooling buffer used to remove F word from G1 Fxxx lines if the feed rate
did not change compared to the preceding value creating empty "G1" lines.
The empty "G1" lines are now removed.
Improves Features fail with extra G1 moves when above a certain layer height and Detect Thin Walls is enabled #5176
Improves Thin wall detection causes miniature loops to be added, and emits empty G1 commands #3058
2021-11-02 12:11:53 +01:00
David Kocik
ca8f7fbf80 Copying from other config folders:
Find if there is more recent config in other folders (alpha / beta / release).
If yes, ask user, make snapshot, copy files.
if there is no current config, ask user and copy recent one.
2021-11-02 10:51:45 +01:00
tamasmeszaros
73af0ed331 Fixing slow conversion from cgal mesh format 2021-11-02 09:52:44 +01:00
Lukáš Hejl
78879b2e84 Fixed missing brims for nested objects.
Brim wasn't generated when some object was placed inside the hole of another object.
2021-11-01 15:10:51 +01:00
Lukáš Hejl
30a37d0c25 Fix of #7213: Not generated inner brim after 7ff76d0768. 2021-11-01 15:10:51 +01:00
Vojtech Bubnik
a0ee41770d Fix of Print::apply() creating hierarchy of regions for complex scenarios:
Unnecessary regions were created for a modifier over a volume or a modifier,
where the modifier did not modify any of its parent's properties.
This lead to an explosion of regions for this particular 3MF.
Fixes Non Responsive & Memory Leak when opening or changing this 3MF project #7220
2021-11-01 13:48:45 +01:00
enricoturri1966
4a2e991ffe Fixed build on non-Windows OSs 2021-11-01 08:46:37 +01:00
Yuri D'Elia
0074df9c74
Fix build on linux/clang 13 (#7203)
* Include missing headers

* Disambiguate nested template function for clang 13
2021-11-01 08:02:20 +01:00
Vojtech Bubnik
a94f1b332a Fixing the GCC/clang builds. MSVC is again non-conformant. 2021-10-30 14:00:23 +02:00
Vojtech Bubnik
d78a5acba9 Numerical improvements to Welzel minimum enclosing circle algorithm 2021-10-30 11:18:36 +02:00
Vojtech Bubnik
5f84c504fc Support generator: Regression wrt. PrusaSlicer 2.3.3:
"with sheath" now again uses the lighweight zig-zag algorithm
for the sparse support columns, while PrusaSlicer 2.4.0-alpha1
to PrusaSlicer 2.4.0-beta1 used the new "stable" zig-zag
algorithm for both the non-sheathed and sheathed sparse support columns
creating unnecessarily thick support column perimeters.
2021-10-29 16:53:03 +02:00
Vojtech Bubnik
1ddd060982 New placeholder parser values for output file name template;
{num_objects} - number of printable objects on the plater.
{num_instances} - number of printable instances on the plater, adding up
  	all printable instances of all objects.
Implements #2735 #3339 #4607
2021-10-29 14:27:36 +02:00
Vojtech Bubnik
3216448bbc PlaceholderParser: implemented round(), digits() and zdigits() macros.
round() rounds to an integer.
This is a popular request, for example #3472

digits(value, num_digits, num_decimals) rounds to num_digits and
	num_decimals, left filled with spaces.
digits(value, num_digits) the same as digits(value, num_digits, 0)
    Neither decimal separator nor any decimals after decimal separator
    are emitted.
zdigits(...) is the same as digits(...) only left filled with zeros.
If the result does not fit num_digits, the result is never trimmed.
2021-10-29 13:36:26 +02:00
Vojtech Bubnik
0f145920d9 Fixed conditional G-code int(...), which did not accept an expression,
just a variable, constant or an expression enclosed in double braces (())
Mentioned for example in #3472
2021-10-29 10:45:33 +02:00
Vojtech Bubnik
b6c4e94d81 Fixing projection of bottom surfaces in MM segmentation and for
support blockers / enforcers.

All slicing functions shall produce consistent results with the same mesh, same transformation matrix and slicing parameters.
Namely, slice_mesh_slabs() shall produce consistent results with slice_mesh() and slice_mesh_ex() in the sense, that projections made by
slice_mesh_slabs() shall fall onto slicing planes produced by slice_mesh().

Before this commit, slice_mesh_slabs() projected bottom facing faces upwards to its coplanar slicing plane,
which is different from how slice_mesh() or slice_mesh_ex() work, leading to ignored support enforcer / blocker strokes.
2021-10-28 15:07:29 +02:00
Vojtech Bubnik
93e91bcacb Fixing compilation on GCC 2021-10-27 17:36:47 +02:00
Vojtech Bubnik
bc1737c0da Yet another bugfix for gcc where MSVC was happy with non-conformant code 2021-10-27 16:16:49 +02:00
Vojtech Bubnik
ad2dfe345d Fixed typo in an unused template code, where MSVC does not complain,
but GCC does.
2021-10-27 16:07:23 +02:00
Vojtech Bubnik
e87f90af9f Fixed typo in CMake 2021-10-27 16:04:58 +02:00
Vojtech Bubnik
cf7b6fb19a Extracted MedialAxis code from Geometry.cpp/hpp, moved to its own
files to Geometry/
Moved other Voronoi files to Geometry/
2021-10-27 16:03:04 +02:00
Vojtech Bubnik
497905406b New code for minimum enclosing circle by randomized Welzl algorithm.
Split the circle code from Geometry.cpp/hpp to Geometry/Circle.cpp,hpp
2021-10-27 15:12:29 +02:00
tamasmeszaros
d57cfa981e Construct supports using the trimmed mesh. To solve issues with supports within the cavity hanging in the air. This still doesn't solve the issue with undrilled holes.
To solve issues with supports within the cavity hanging in the air. This still doesn't solve the issue with undrilled holes.
2021-10-27 10:05:09 +02:00
enricoturri1966
145f0489b8 Fixed crash when a part of a multipart object is completely below the printbed 2021-10-27 08:56:10 +02:00
Vojtech Bubnik
cd13af59f4 Follow-up to 79eb59b9f2
Fix of #7168: Crash when layer count exceeds 4095
This time the crash was fixed for top / bottom propagation of
multi-material segmentation.
2021-10-26 16:21:07 +02:00
Vojtech Bubnik
28de7f5504 Support generator: Merging of bottom contacts with top contacts and
interface layers if possible. This should always be possible with
soluble supports and it should have been done long time ago.
For non-soluble supports, it may or may not be possible to merge
these layers: They will only be merged if they are extruded without
bridging and with the same layer height.
Fixes Support enforcer interfaces not generated as needed. #6784
or at least some of the issues reported.

Experimental: Added experimental filtering of propagated support columns
to two extrusions, overlapping by maximum 20%.
This filtering step will remove spurious columns that do not support
anything, but the filtering step may remove supports supporting tiny
islands. Those supports would likely not be printable anyways without
the user intervention (extending the supported area by painting).
2021-10-26 12:09:46 +02:00
Vojtech Bubnik
00c444f8c8 Tiny optimization of slice_mesh_slabs() with mirrored objects. 2021-10-26 10:03:41 +02:00
Lukas Matena
79eb59b9f2 Fix of #7168: Crash when layer count exceeds 4095 2021-10-26 09:56:49 +02:00
Lukáš Hejl
3d87904e66 Fixed the bottom layer of multi-material painted objects sunken below the print bed (#7107). 2021-10-25 14:59:05 +02:00
enricoturri1966
014bef382a #6999 - Fixed variable layer height editing not working when raft layers > 0 2021-10-25 14:47:13 +02:00
enricoturri1966
19387186a5 #7110 - Fixed calculation of estimated times for layers 2021-10-25 12:31:19 +02:00