Vojtech Bubnik
230dbb7394
Adaptive Cubic infill:
...
1) Fixed a wrong offset when extracting infill lines from the octree.
2) Added a variant for testing triangle in a bounding sphere
when buildind the octree. Currently not used as the box test
is more tight.
3) "Bridging infill" regions are now triangulated and used to densify
the octree as well to support the bridging infill correctly.
2020-09-22 08:53:45 +02:00
Vojtech Bubnik
6cdb19971f
Fixed crash in Adaptive Cubic infill if just a single line was extracted.
...
New function to chain lines, however not used by the Adaptive Cubic infill.
2020-09-21 11:10:57 +02:00
Lukas Matena
f2951b53c0
Fix build on Linux
2020-09-18 13:37:37 +02:00
Vojtech Bubnik
348c654c26
Adaptive infill:
...
Fixing compilation on Linux,
WIP: Better chainining of infill lines.
2020-09-18 13:35:35 +02:00
Vojtech Bubnik
7e756b20e6
Adaptive infill: Reshuffled the namespaces.
2020-09-18 10:53:50 +02:00
Vojtech Bubnik
37c5fe9923
Refactoring of adaptive cubic / support cubic:
...
1) Octree is built directly from the triangle mesh by checking
overlap of a triangle with an octree cell. This shall produce
a tighter octree with less dense cells.
2) The same method is used for both the adaptive / support cubic infill,
where for the support cubic infill the non-overhang triangles are
ignored.
The AABB tree is no more used.
3) Optimized extraction of continuous infill lines in O(1) instead of O(n^2)
2020-09-17 18:39:28 +02:00
Vojtech Bubnik
1eadb6a1a9
Replaced some of Slic3r::RuntimeError exceptions with Slic3r::SlicingError.
...
Only Slic3r::SlicingError are now displayed by a notification, other
exceptions are shown by a pop-up dialog.
2020-09-14 18:03:22 +02:00
Vojtech Bubnik
067cde85f1
WIP Refactoring of exceptions:
...
1) All slicer's exceptions are now derived from Slic3r::Exception.
2) New exceptions are defined for slicing errors.
3) Exceptions are propagated to the Plater to show.
It remains to modify the slicing back-end to throw the new SlicingError
exceptions instead of std::runtime_error and to show the other exceptions
by a message dialog instead of a notification.
2020-09-14 18:03:22 +02:00
Yuri D'Elia
776a775996
Add missing forward declarations
2020-09-11 16:51:05 +02:00
Lukáš Hejl
137e7a0712
Fix compiler warnings and failing compilation on macOS
2020-09-10 22:57:58 +02:00
Lukáš Hejl
7ef5def077
Fix typo in function build_octree
2020-09-10 22:38:37 +02:00
Lukáš Hejl
e9a325c9ca
Fix rotation in support cubic infill
2020-09-10 22:30:49 +02:00
Lukáš Hejl
f49144a9ef
Move support cubic infill to separate class.
...
Support infill is enabled in the GUI.
2020-09-10 16:53:08 +02:00
Lukáš Hejl
8fb9b290b2
A prototype of adaptive support infill
2020-09-10 14:55:48 +02:00
Lukáš Hejl
680b1b9809
Construct octree based on inserted points
2020-09-10 14:52:26 +02:00
Lukáš Hejl
c261624999
A simple version of adaptive cubic support, for testing purposes
2020-09-10 14:52:26 +02:00
Lukáš Hejl
70cb67430c
Move rotation from building octree to infill generating
2020-09-10 14:52:21 +02:00
Vojtech Bubnik
7b318e1698
Refactoring of adaptive cubic infill:
...
Don't create an octree for the infill if it is not needed.
2020-09-09 15:55:06 +02:00
Lukáš Hejl
97e62be902
Check if exist any boundary polyline
2020-09-07 09:14:06 +02:00
Lukáš Hejl
ce18b824ad
Octree representation rework
2020-09-03 19:21:55 +02:00
Lukáš Hejl
184cb7afd9
Fix bug in lines merging
2020-09-03 14:28:25 +02:00
Lukáš Hejl
353c65fa4c
Connect infill to perimeters
2020-09-03 13:05:28 +02:00
Lukáš Hejl
a3a1c20172
Code cleanup
2020-09-03 11:56:41 +02:00
Lukáš Hejl
fd3a31651c
Octree's first cube depends on model size.
2020-09-03 08:04:05 +02:00
Lukáš Hejl
5997f2759c
Change in passing octree struct
2020-09-02 22:53:10 +02:00
Lukáš Hejl
8e6760e033
Fix crash on inconsistent input
2020-08-30 20:38:07 +02:00
Lukáš Hejl
b28f9b8935
Fix discontinuous extrusion lines for adaptive infill
2020-08-27 13:04:53 +02:00
Lukáš Hejl
c5a73a7cd6
Switch to smart pointers
2020-08-27 07:28:43 +02:00
Lukáš Hejl
cb328c99aa
Polylines merging
2020-08-27 01:59:35 +02:00
Lukáš Hejl
fb24d8167a
Add function for check existence of triangle in define radius
2020-08-26 23:28:52 +02:00
Lukáš Hejl
eaaff4e707
Generating polylines from octree
2020-08-26 22:18:51 +02:00
Lukáš Hejl
3ac16d9c9c
Building octree based on distance from mesh
2020-08-26 18:15:59 +02:00
Lukáš Hejl
42a7f2b1d8
Preparation for new infill
2020-08-26 16:51:34 +02:00
Lukas Matena
48c186331a
Includes cleanup:
...
GUI_App.hpp (should not include) MainFrame.hpp
MainFrame.hpp Plater.hpp
ModelArrange.hpp Model.hpp
Slicing.hpp PrintConfig.hpp
FillBase.hpp PrintConfig.hpp
GUI_App.hpp PrintConfig.hpp
OptionsGroup.hpp GUI_App.hpp
2020-05-27 14:01:47 +02:00
Lukas Matena
32a353058f
Fixed few warnings
2020-05-26 16:06:11 +02:00
Lukas Matena
02838eaa30
Slight include cleanup
2020-05-26 13:45:36 +02:00
bubnikv
0940db7b2e
Improvements of the monotonous infill ordering:
...
Calculate the initial path length and set the initial pheromone level
accordingly.
Implemented a stopping criterion to ant colony optimization.
Fixed some compilation warnings.
2020-05-06 18:28:23 +02:00
bubnikv
ef89c73fd5
fixing a compilation issue on a buggy GCC on R-PI
2020-04-28 18:28:11 +02:00
bubnikv
ec81de7553
Ironing and Monotonous infill - first working implementation.
2020-04-28 17:19:11 +02:00
bubnikv
033548a568
Introduction of Monotonous infill type. Fill no-sort only for monotonous
...
and ironing infills.
2020-04-25 08:15:04 +02:00
bubnikv
e390ebc95c
WIP: Monotonous infill
2020-04-24 09:41:48 +02:00
bubnikv
03eb5ffcd5
WIP: Reworking of FillRectilinear2 to support monotonous infill
...
with ant colony optimization and 3-opt flips.
2020-04-22 10:54:11 +02:00
bubnikv
10110ed307
WIP: Ironing over top surfaces.
2020-04-14 11:53:28 +02:00
Lukas Matena
97b9de47b4
Merge branch 'master' into dev
2020-03-24 21:51:05 +01:00
bubnikv
7f376fa927
Fix of infill type update with vase mode enabled after change
...
of the number of bottom layers.
related to [2.2.1-RC] Vase mode prints base no matter what #3823
2020-03-14 11:59:50 +01:00
Lukas Matena
7589e4ebfc
Fixed some more warnings
2020-03-03 15:53:26 +01:00
Lukas Matena
c70b34b6c8
Fixed several warnings
...
The biggest difference is changing PresetCollection::m_idx_selected from int to size_t, which fixed many warnings at once.
2020-03-03 15:47:02 +01:00
bubnikv
afa72da9d1
Fix of infill connecting along perimeter lines,
...
new 3-opt iterative improvement of infill path (currently disabled,
it is extremely slow)
2019-12-02 15:01:52 +01:00
bubnikv
9c4dc80057
Fix of the new gyroid infill path planning. Fixes #3226
2019-11-22 18:22:44 +01:00
bubnikv
8c377c6585
Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer
2019-11-14 17:02:46 +01:00