Commit Graph

10866 Commits

Author SHA1 Message Date
bubnikv
93a157e26c Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-30 16:25:31 +02:00
bubnikv
272479826f Refactoring of the G-code preview for lower memory allocation
and for separation of concerns:

The final G-code preview no more uses ExtrusionPaths structure
to hold the G-code path data extracted by parsing the G-code.
Instead, the ExtrusionPath class has been trimmed down back to
the original size before the G-code preview was introduced,
and a new GCodePreviewData::Extrusion::Path class was created to hold
the additional path data as the extruder ID, color change ID
and fan speed.
2019-09-30 16:25:26 +02:00
YuSanka
f5593c05aa Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-30 14:04:45 +02:00
YuSanka
904bbcc006 Fix of SPE-1035 (Wrong filament color updating for multi-material print) 2019-09-30 13:59:26 +02:00
bubnikv
b425ee50a9 Merge remote-tracking branch 'remotes/origin/et_pull_2922' 2019-09-30 10:23:16 +02:00
Lukas Matena
5ded376fe2 An attempt to fix #2997
More fixes might be needed on the other platforms
2019-09-28 09:57:26 +02:00
bubnikv
0abde9a2a8 Return MultiPoint::first_point() by reference. 2019-09-27 19:47:30 +02:00
bubnikv
6d11bfe96a Fixing C++ issues, that the Visual Studio compiler did not report. 2019-09-27 19:18:35 +02:00
bubnikv
debd9e2f81 One more try, fixing a missing parameter. 2019-09-27 19:07:07 +02:00
bubnikv
50d3894e32 Fix of the ShortestPath.hpp interface: Provide non-move variant. 2019-09-27 18:47:08 +02:00
bubnikv
85ea0396a4 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-27 18:23:36 +02:00
bubnikv
331c187b39 Rest of the path chaining has been replaced with the new algorithm.
PolylineCollection.cpp/hpp was removed, use Polylines instead.
Various first_point() / last_point() now return references, not copies.
2019-09-27 18:17:21 +02:00
Lukas Matena
d57a09558e Several fixes of previous commits related to KDTreeIndirect.hpp and ShortestPath.cpp/.hpp 2019-09-27 13:30:07 +02:00
Lukas Matena
5123673b3a CMakeLists: filename fix so everything works on case-sensitive filesystems 2019-09-27 11:42:52 +02:00
Lukas Matena
661c91a821 Fixing Linux build
GCC 4.8 does not fully support C++11 and in-class char array initialization
2019-09-27 11:31:16 +02:00
bubnikv
4b35ebe6e5 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-27 09:52:57 +02:00
bubnikv
e65ab90c16 Fix of G-code path planning: Infill lines were incorrectly ordered
for islands with another islands in their holes.

Improvement of chaining of infill lines for 3D honeycomb, Gyroid and
Honeycomb infill: New TSP chaining algorithm is used.
2019-09-27 09:51:07 +02:00
bubnikv
d06831076d WIP: Consolidation of shortest path calculations,
various chaining algorithms are replaced with the improved TSP
algorithm.
2019-09-26 17:30:03 +02:00
bubnikv
10eecb2cab Reworked Traveling Salesman Problem code for simplicity and robustness.
The TSP algorithm is newly used for planning of the printing order
of objects AND their instances.
2019-09-26 16:39:50 +02:00
bubnikv
8d4dd294b2 Merge branch 'dev' of https://github.com/Prusa3d/PrusaSlicer into dev 2019-09-26 09:44:53 +02:00
bubnikv
41495a932a Introduction of a greedy Traveling Salesman Problem algorithm,
producing better shortest path estimate than the "closest next neighbor"
heuristics. The new greedy algorithm utilizes KD tree for closest
end point search, and builds a graph to detect loops.

PerimeterGenerator newly uses the optimized TSP algorithm.

ExtrusionEntity has been refactored / simplified.
2019-09-26 09:44:38 +02:00
Enrico Turri
6f8a9bc1ff Fixed visual hints in 3D scene not disappearing when tabbing out of size z field in object manipulators sidebar 2019-09-25 13:05:18 +02:00
Lukas Matena
dbc51a140d Fixed erroneous use of logical OR where bitwise OR was meant
Also, PrintBase::SlicingStatus enum had two entries assigned to 0 - removed the one that was never used
2019-09-25 12:18:30 +02:00
Enrico Turri
fdbe339622 Fixed gizmo scale for objects added to scene using the new context menu 2019-09-25 11:25:14 +02:00
Lukas Matena
1d18339e62 PRUS.cpp: Fixed an always-true condition in extract_model_from_archive
SupportMaterial.cpp: Simplified one condition (also solves a -Wmaybe-uninitialized warning on gcc)
2019-09-24 18:09:48 +02:00
Lukas Matena
b67d8c1614 Fixed memsetting non-trivially-copyable types
Types stl_stats, stl_normal and SurfaceFillParams should not be zeroed by memset
This is not correct and also triggered warnings on gcc
2019-09-24 17:09:07 +02:00
Lukas Matena
7861fa5086 Whitespace changes to supress misleading indentation warnings
These appear in newer gcc when spaces and tabs are mixed
2019-09-24 16:01:01 +02:00
YuSanka
b2e7081d31 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-24 14:33:20 +02:00
YuSanka
9607fbeb6d Fix of SPE-1027 2019-09-24 14:32:59 +02:00
Enrico Turri
2fd5044460 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-24 14:13:22 +02:00
Enrico Turri
7c1706f7ee Follow-up of f4910cafed -> Fix extended to Mac 2019-09-24 14:13:03 +02:00
Lukas Matena
c1e3be9b27 MeshUtils.cpp: MeshRaycaster is now aware of the clipping plane 2019-09-24 12:58:12 +02:00
Enrico Turri
a68a72a660 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2019-09-24 09:11:43 +02:00
Enrico Turri
e6604afd05 #2972 - Fixed selection after adding an instance with autocenter active 2019-09-24 09:11:27 +02:00
Jason Tibbitts
197a1f95ff Relocate declaration of stl_internal_reverse_quads
On little-endian hosts, stl_internal_reverse_quads will be called before
it is declared.  Move the declaration up to the beginning of the file to
fix build breakage seen on an s390x host.
2019-09-24 08:54:35 +02:00
YuSanka
a234193dea Fixed localization for "Configuration Wizard" menu item 2019-09-23 16:29:07 +02:00
Enrico Turri
82a52e8b21 #2922 - Port of commit: f42edd35ce by jschuh 2019-09-23 14:56:27 +02:00
YuSanka
c0c937425f Added missed comment to 7e060f84bd 2019-09-23 14:24:53 +02:00
tamasmeszaros
a6f5fe7bea Fix arrange crash with incorrect geometries. Guard the case with tests. 2019-09-23 11:59:44 +02:00
YuSanka
4aec14ddab Replace "mm3/s" with "mm³/s" in preview legend for a "Volumetric flow rate" 2019-09-23 11:11:43 +02:00
YuSanka
4e22761f95 Fix of #2977 2019-09-23 10:17:53 +02:00
Vojtech Kral
927ad5776c avrdude: Cherry-pick rev 1421 from upstream:
Submitted by Reinhard Max patch #8311: Add IPv6 support to the
-Pnet:host:port option * ser_posix.c (net_open):
Rewrite to use getaddrinfo() rather than gethostbyname()

Fix #2918
2019-09-20 17:17:07 +02:00
Lukas Matena
656569b0e9 Fix of https://github.com/prusa3d/PrusaSlicer/issues/2953
printf-like function argument mismatch: num was long, which was obfuscated by the auto keyword
2019-09-20 16:47:10 +02:00
YuSanka
89ebf1f1e8 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-20 11:30:53 +02:00
YuSanka
7e060f84bd Forcing of explicit SetWidth for the columns under OSX, as an attempt to fix a narrow column width on 4(5)K monitors under OSX 2019-09-20 11:30:29 +02:00
Enrico Turri
ac305a77b3 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-20 11:19:24 +02:00
Enrico Turri
d66bf7e1e1 Follow-up of 8aaff08355 -> Do not show the new context menu when the user pans the scene + cleanup 2019-09-20 11:19:06 +02:00
Lukas Matena
b241ba16ed Fixed layer profile equality check for wipe tower validation (fixup of b43003d) 2019-09-20 10:53:50 +02:00
YuSanka
a27026aa03 Merge branch 'dev' of https://github.com/prusa3d/PrusaSlicer into dev 2019-09-20 09:58:33 +02:00
YuSanka
8aaff08355 Added Possibility to create "shape" as an independent object from 3dScene,
using right click on empty place
2019-09-20 09:57:27 +02:00