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
Vojtech Kral
eb93d2a32d
Merge branch 'master' into materials
2019-09-30 16:12:48 +02:00
Enrico Turri
d58dedd459
ENABLE_3DCONNEXION_DEVICES -> Increased limit of device buttons
2019-09-30 15:58:45 +02:00
Enrico Turri
b11704d380
Merge branch 'et_3dconnexion' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion
2019-09-30 15:38:13 +02:00
Vojtech Kral
520a51c62f
hidapi: Fix include path
2019-09-30 15:20:23 +02:00
Enrico Turri
7c8732d560
Merge branch 'et_3dconnexion' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion
2019-09-30 15:19:36 +02:00
Enrico Turri
eabaa21df2
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion
2019-09-30 15:19:21 +02:00
Vojtech Kral
82fed1790a
3D connexion support on Linux:
...
- Replace hidapi/linux/hid.c with the hidraw variant (link to udev)
- Add CMakeLists.txt for hidapi, refactor
- Add udev rules file (no installation so far)
2019-09-30 14:59:21 +02:00
YuSanka
c07a193b4e
Implemented BitmapChoiseRenderer
2019-09-30 14:34:29 +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
Enrico Turri
7f7b3e0b0b
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion
2019-09-30 08:15:20 +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
Enrico Turri
1aa559585c
Added missing include
2019-09-27 15:26:13 +02:00
Enrico Turri
33bfc925c2
ENABLE_3DCONNEXION_DEVICES -> try a different hid.c for hidapi library on Linux
2019-09-27 15:02:38 +02:00
Enrico Turri
4b3eab0ed9
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_3dconnexion
2019-09-27 14:52:30 +02:00
Enrico Turri
f958cfd2ff
ENABLE_3DCONNEXION_DEVICES - 1st installment of support for 3Dconnexion devices
...
Implemented using hidapi library (https://github.com/libusb/hidapi ) and https://github.com/koenieee/CrossplatformSpacemouseDriver/tree/master/SpaceMouseDriver as reference
Unsolved issues:
- When manipulating the SpaceNavigator wxWidgets generates a mouse wheel event that needs to be filtered out
- wxWidgets does not detect devices being connected/disconnected to the pc
- Current state forces a continuous rendering
- Current state misses dependence on camera zoom
- Non intuitive movement limits
- Translation and rotation speed factors are hardcoded
- Number of device buttons hardcoded
2019-09-27 14:52:19 +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
YuSanka
c370fccd8b
Changed default values.
...
And bottle_volume is preferred to recalculation instead of bottle_weight
2019-09-27 12:08:08 +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
YuSanka
82bc243281
Implemented possibility to set a resin cost
2019-09-26 16:36:31 +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
YuSanka
1a03b664b9
Some changes for alignments in manipulation panel
2019-09-25 15:04:39 +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
YuSanka
f6996b7dda
Try to fix Linux build
2019-09-25 12:45:39 +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
YuSanka
efb9ef37f6
Merge remote-tracking branch 'origin/master' into ys_manipulation_panel_rw
2019-09-25 11:33:19 +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
YuSanka
6faf67d90c
Add binding for ManipulationEditors
2019-09-25 11:25:05 +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