Commit Graph

3733 Commits

Author SHA1 Message Date
bubnikv
d86cf1e116 Fix of a regression in wipe tower generator:
Return to the known position after custom tool change G-code.
2019-09-13 18:56:37 +02:00
bubnikv
145cf294c9 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-13 16:21:48 +02:00
bubnikv
a9182fb0b3 Merge branch 'master' into dev 2019-09-13 16:19:35 +02:00
bubnikv
345d73e0d6 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-13 16:17:23 +02:00
bubnikv
ea8b6262cf Introduction of ClipperLib_Z: The Clipper library compiled with support
of the Z coordinate, compiled in the ClipperLib_Z namespace.

Update of Lukas's new brim clipping:
All the brim contours are now clipped by the ClipperLib_Z library
in one shot.
2019-09-13 16:16:37 +02:00
Lukas Matena
ee7132a23d Fixup of 4f89672 + allowing negative support_contact_z 2019-09-13 15:47:00 +02:00
bubnikv
4f89672816 Fixed false positives of missing layers due to support layer snapping
to avoid layers thinner than min_layer height, and possibly due to
the fact, that empty support extrusions may get generated
for support layers with non-empty support polygons.

Fix of Empty layers detection added to GCode.cpp (6ab1cec)
2019-09-13 15:18:42 +02:00
Lukas Matena
70c0c87598 Renamed MeshClipper.cpp/.hpp to MeshUtils.cpp/.hpp
More helper classes like the MeshClipper could live here
Moved ClippingPlane class in here to start
2019-09-13 12:03:53 +02:00
Lukas Matena
9782701dd4 Calculating the transformations is now only performed by the MeshClipper
Attempted to get mirroring right (that never worked correctly with the clipping plane in the sla gizmo)
The transformation of the support mesh is kind of a mystery to me, hopefully it is right
Also cleaned the code a bit (removed commented-out code, unused variables, etc)
2019-09-13 12:03:53 +02:00
Lukas Matena
546917830b Initial implementation of MeshClipper class
So far the work is shared between the old code in GLGizmoSlaSupports.cpp and the new class
2019-09-13 12:03:53 +02:00
Lukas Matena
cf23146ee3 Refactoring the SLA clipping plane
The plane is now internally stored as a plane in world coordinates
2019-09-13 12:03:53 +02:00
tamasmeszaros
177a96a768 Fix arrange crash with ASAN 2019-09-13 11:01:02 +02:00
bubnikv
bb896b4c13 Merge remote-tracking branch 'remotes/origin/lm_brimskirt' 2019-09-12 15:53:20 +02:00
Enrico Turri
7fe691f14e Merge branch 'et_reload_from_disk' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-12 10:46:32 +02:00
Enrico Turri
724cc19ae5 Fixed object position after reload from disk 2019-09-12 10:44:38 +02:00
bubnikv
b4f2df6a98 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-12 10:19:09 +02:00
bubnikv
6f4fff1b29 Fix of 2.1.0-rc2 Fails to open "certain' STL files #2906 2019-09-12 10:16:52 +02:00
Enrico Turri
22ab022088 Merge branch 'et_reload_from_disk' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-11 15:36:23 +02:00
Enrico Turri
c55a463c93 Do not show intermediate states in objects list while reloading from disk 2019-09-11 15:31:30 +02:00
Enrico Turri
26f3af4b16 Fixed modifiers after reload from disk 2019-09-11 15:02:57 +02:00
bubnikv
15c8b579b2 Refactoring of ExtrusionEntity / ExtrusionEntityCollection:
Iterator loops replaced with C++11 loops.
Fixed clone() methods to return an ExtrusionEntity*.
PerimeterGenerator now uses move semantics on ExtrusionEntity a little
bit more.
2019-09-11 13:25:50 +02:00
tamasmeszaros
c37ec7463f Add new config values to SL1 zip file config.ini
All requested config values are written into SL1 ini file inside the zip

* TIme.hpp and Time.cpp is now part of libslic3r instead of libslic3r_gui
* Updated time manipulation function: separate timestamp_local_str and timestamp_utc_str
* timestamp_utc_str is used in header_slic3r_generated(). Gcode now contains UTC timestamps
2019-09-11 13:10:23 +02:00
bubnikv
b3f27b8fb9 Fixed typo in comments 2019-09-11 11:38:17 +02:00
bubnikv
0989cb8296 Refactoring of PerimeterGenerator:
header interface was reduced,
compiler warnings removed.
2019-09-11 11:37:48 +02:00
Enrico Turri
af77eca9df Follow-up of 44c3493f7d -> error message logged only for multi-extruder printers 2019-09-11 10:02:27 +02:00
Enrico Turri
b383d9581a Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-11 09:01:44 +02:00
Enrico Turri
3835257ec2 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-11 09:01:34 +02:00
Enrico Turri
7e5043961a Added missing include 2019-09-11 08:51:36 +02:00
Enrico Turri
44c3493f7d GCodeAnalyzer: Fixed a crash when encountering an invalid toolchange 2019-09-11 08:39:29 +02:00
bubnikv
9bdc5b7939 Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-10 19:09:41 +02:00
bubnikv
b9389f2d39 Some C++11 refactoring 2019-09-10 19:09:37 +02:00
bubnikv
413e737d7e Fix of previous infill refactoring. 2019-09-10 19:08:04 +02:00
bubnikv
246dc64c99 Fix of "Bridging and gap fill are parsed incorrectly when infill is set to 0" #1476
The gap fill was disabled for zero infill.
Now the gap fill is enabled in between the perimeters, but disabled between
the inner-most perimeter and infill in case the infill is set to zero.

Also in case there are multiple infill regions inside a perimeter,
the mutliple infills are considered as non-zero if at least one infill
is non-zero, therefore the gap fill will be added inside the inner-most
perimeter.
2019-09-10 19:03:37 +02:00
tamasmeszaros
84e8081413 Fix compilation on OSX 2019-09-10 14:00:48 +02:00
tamasmeszaros
1c20c4c43d Fix arrangement of objects larger than the print bed. Issue #2897 2019-09-10 13:31:29 +02:00
Lukas Matena
2fef16c39a Fix of #1266 and #2258
In case there were empty object layers supposed to be floating on supports which were set to use a specific extruder, wipe tower was missing layer required to do the toolchange, leading to a crash
Such cases are now detected and layers that need it are additionally assigned as wipe tower layers

Also tracked as SPE-526
2019-09-10 13:13:21 +02:00
Lukas Matena
4fc20090c8 GUI_ObjectList.cpp: Max layer height defaults to 0.75*nozzle_diameter as it should (#2892) 2019-09-10 12:34:03 +02:00
Lukas Matena
c5f78dd6e2 Some more warnings fixed (WipeTower.cpp/.hpp) 2019-09-10 12:08:43 +02:00
Lukas Matena
86b258f727 Fixed many warnings in following files:
src/slic3r/Config/Snapshot.cpp
src/slic3r/GUI/Field.cpp
src/slic3r/GUI/GLToolbar.cpp
src/slic3r/GUI/GUI_ObjectList.cpp
src/slic3r/GUI/GUI_ObjectList.hpp
src/slic3r/GUI/Plater.cpp
src/slic3r/GUI/Plater.hpp
src/slic3r/GUI/PresetBundle.cpp
src/slic3r/GUI/Tab.cpp
src/slic3r/GUI/wxExtensions.cpp
2019-09-10 12:08:43 +02:00
Lukas Matena
a62bba2508 CoolingBuffer.cpp: Fixed a crash when encountering an invalid toolchange
This can happen if the user enters invalid toolchange through the custom gcodes
Such toolchange is now simply ignored by the CoolingBuffer, exporting gcode is NOT stopped, a log error is emitted
2019-09-10 11:46:18 +02:00
Enrico Turri
27f01bb09e Fixed instance printable property after reload from disk 2019-09-10 11:16:59 +02:00
bubnikv
4585618aea Fix of "Bridge flow ratio doesn't trigger reslicing of support" #2359 2019-09-09 18:09:40 +02:00
bubnikv
6ba43ebacb Merge remote-tracking branch 'remotes/origin/master' into dev 2019-09-09 17:49:07 +02:00
bubnikv
ac7bae8c5d Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-09 17:47:41 +02:00
bubnikv
5c72eecf26 Fix of "Strange behavior on bridge detection" #1482
The very first slicing step needs to be invalidated if support is
enabled or disabled while the soluble supports are configured,
as the bridging is disabled for soluble supports, while the bridging
is enabled with supports disabled.
2019-09-09 17:47:29 +02:00
bubnikv
ee928f5f4d Replaced Perl style infill type enums with C++ enums in comments. 2019-09-09 16:47:15 +02:00
bubnikv
735f5146e9 Fix of d146a0237e
(reworked infill generator to merge regions with the same properties).
2019-09-09 16:44:29 +02:00
Vojtech Kral
f747b97564 FirmwareDialog: Attempt to fix window double close assertion #2619 2019-09-09 16:41:14 +02:00
Lukas Matena
4dbc8b22a5 Updated tooltip 2019-09-09 16:39:26 +02:00
Lukas Matena
97a02f4412 Merge branch 'lm_custom_toolchange' 2019-09-09 16:12:09 +02:00
tamasmeszaros
796d0fbd81 Fix typo 2019-09-09 16:08:19 +02:00
Lukas Matena
822bc7a91c Fix of previous commit, tooltip update 2019-09-09 16:02:39 +02:00
Enrico Turri
6507b7bf39 Fixed gizmos update after objects loading 2019-09-09 15:55:04 +02:00
Enrico Turri
eae02f6cad Fixed handling of mouse left up event when moving an object while the place on face gizmo is active 2019-09-09 14:56:55 +02:00
Lukas Matena
499fdeddd1 Custom toolchange gcode is searched for tool-changing command
If the custom toolchange gcode switches extruder to the one that is expected, PrusaSlicer does not issue its own T command
Otherwise, this command is inserted just after the custom gcode, even in case it is not empty
This should prevent issues such as #2884 and #2886 from being reported
2019-09-09 13:05:18 +02:00
Enrico Turri
749a1863e5 Fixed rotate gizmo hovering 2019-09-09 12:11:49 +02:00
Enrico Turri
015d430f03 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-09 11:51:03 +02:00
Enrico Turri
a30c35d240 Follow-up of 9b5edbfa5f -> added comments 2019-09-09 11:50:19 +02:00
bubnikv
751b9e69fa Fixed stack overflows in G-code generator. 2019-09-09 10:18:17 +02:00
Enrico Turri
d954a70bbf Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-09 09:56:52 +02:00
Enrico Turri
9b5edbfa5f Fixed import from obj files 2019-09-09 09:56:36 +02:00
bubnikv
42e41dae04 Fix of a regression big endian issue in admesh
fixes 2.1.0-rc build error in admesh (unusual architecture only) (#2879)
2019-09-09 09:18:53 +02:00
Enrico Turri
ae0fc75b13 Merge branch 'et_reload_from_disk' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-09 08:42:39 +02:00
Enrico Turri
98d8fa37c9 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-09 08:28:16 +02:00
Enrico Turri
19616c4f93 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-06 17:53:17 +02:00
Enrico Turri
e6366894da Fixed object settings after reload from disk 2019-09-06 17:26:08 +02:00
Enrico Turri
5b60fe272a Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-06 17:25:39 +02:00
Vojtech Kral
d096804a24 Fix a few warnings in PrintHostDialogs, UploadDialogs 2019-09-06 16:33:00 +02:00
Enrico Turri
9cf3793aac Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-06 16:06:37 +02:00
Lukas Matena
a985a2720f Fixed some more warnings, moved function to get ExtrusionRole name into ExtrusionEntity.hpp
So it can be called from wherever it may be needed
2019-09-06 15:55:07 +02:00
Lukas Matena
3f988b314c Fixed several warnings (Config.hpp and few other files) 2019-09-06 15:55:07 +02:00
Enrico Turri
abd170fbf4 Follow-up of 6c3aae8f89 -> Fixed update of objects list when object has a unique instance 2019-09-06 15:50:54 +02:00
Vojtech Kral
34821df6eb Fix bad pointer dereference in ObjectList::list_manipulation()
Fix of #2875
2019-09-06 15:28:58 +02:00
Vojtech Kral
3b498f687c Fix a few error messages in avrdude 2019-09-06 15:14:28 +02:00
Enrico Turri
6c3aae8f89 Fixed update of instances in objects list after reload from disk 2019-09-06 15:10:07 +02:00
bubnikv
48ecbe777f Fix of "excess infill below bridges with 0% infill" #442
Fix of "Bridging infill not connecting with infill set to 0%" #1301

Top, bottom and bridging areas are extended into infill as long
as the infill is not zero. If the infill is zero,
top, bottom and bridging areas wound not expand into these "void" areas.

With this commit, the top, bottom and bridging areas are allowed to expand
into the "void" areas as long as these "void" areas are supported below
with perimeters or some other non-empty infill, and slightly beyond
these supporting areas into the voids (currently hard coded to 1mm).
2019-09-06 15:03:49 +02:00
Enrico Turri
4f1747d5f6 Keep correct instance selection after reload from disk 2019-09-06 14:36:47 +02:00
Enrico Turri
fe07bde385 Do not render intermediate states while reload from disk action is taking place 2019-09-06 13:49:15 +02:00
Enrico Turri
a7a01bfc72 Keep selection after reload from disk 2019-09-06 13:11:20 +02:00
Enrico Turri
d6c3c766aa Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk 2019-09-06 12:22:45 +02:00
Enrico Turri
bda0246b5d Fix of #2868 -> Revert 2c9521c6d2 and partial revert of fab3634931 2019-09-06 09:44:39 +02:00
Lukas Matena
6cc29c308c Fill.cpp: Fixed a typo 2019-09-05 16:03:44 +02:00
YuSanka
c4d90ed47a Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-05 15:31:38 +02:00
YuSanka
4263fa8dff DoubleSlider refactoring 2019-09-05 15:31:22 +02:00
bubnikv
07798510fc Fighting the ASCII STL import.
Fix of 2.1.0-rc: Loading MMU STL's results in object placement off the plater (#2868)
It has been broken with 9abef2241d
when trying to fix "Error on importing stl" #2813
2019-09-05 14:29:34 +02:00
Enrico Turri
bdbaecb7f8 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-05 09:55:08 +02:00
Enrico Turri
9b550fbd5b Improved time estimator post-processing 2019-09-05 09:54:44 +02:00
YuSanka
1651c8db6e Fixed ColorPrint Legend update if Print preset was changed and model was resliced. 2019-09-05 09:13:59 +02:00
Enrico Turri
3f5511faa3 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-05 08:14:34 +02:00
bubnikv
d2ac827137 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-04 16:11:28 +02:00
bubnikv
d146a0237e WIP: Reworked the infill generator to merge areas with the same
properties.

Note for Vojtech:
Review src/libslic3r/Fill/Fill.cpp once again,
add test for G-code generator properties (extrusion speed, cooling?)

Fixes Modifier slice/move efficiency #1005
2019-09-04 16:11:16 +02:00
Lukas Matena
09e4ac42ba Fixed some more warnings (mostly GLGizmoSlaSupports.cpp) 2019-09-04 16:05:32 +02:00
Lukas Matena
570bec299f Merge branch 'master' into dev 2019-09-04 15:50:18 +02:00
Lukas Matena
326eb5e343 GUI_ObjectList.cpp: Fixed a crash when deleting instances.
Deleting second-but-last instance deletes the whole Instances node, we must select object node in that case.
2019-09-04 15:15:35 +02:00
tamasmeszaros
642442c977 Fix typo 2019-09-04 15:15:10 +02:00
Lukas Matena
805a5d22a1 Fixed couple of warnings in WipeTower.cpp, ToolOrdering.cpp and GCode.cpp 2019-09-04 14:56:35 +02:00
YuSanka
8c43b04970 Fixed debug crash in update_changed_tree_ui
Reproduce: For MK2.5S printer preset set flag "Support stealth mode"
2019-09-04 14:37:09 +02:00
YuSanka
229eff72d6 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-04 13:21:13 +02:00
YuSanka
aab3001b24 Added DoubleSlider::epsilon() to get a permissible error for layer height 2019-09-04 13:16:44 +02:00
bubnikv
a09bb3802b Updated the bundled Prusa Research profiles.
Bumped up the version number to 2.0.0-rc.
Changed the location of profiles from PrusaSlicer-beta to PrusaSlicer
(that is the location for the released software).
2019-09-04 12:50:43 +02:00