Lukáš Hejl
4b02e888ee
Fix crash in adaptive infill when an extrusion line width is zero.
...
When an extrusion line width is set to zero, then an extrusion line width is calculated from nozzle diameter.
2020-09-25 09:54:27 +02:00
Vojtech Bubnik
56e6d10a86
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
876e5bc897
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
2992c71798
Fix build on Linux
2020-09-18 13:37:37 +02:00
Vojtech Bubnik
0d4308538b
Adaptive infill:
...
Fixing compilation on Linux,
WIP: Better chainining of infill lines.
2020-09-18 13:35:35 +02:00
Vojtech Bubnik
1e9a3cab55
Adaptive infill: Reshuffled the namespaces.
2020-09-18 10:53:50 +02:00
Vojtech Bubnik
b3e936bda3
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
c814c16e4a
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
f58ee46687
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
fc3b470ded
Add missing forward declarations
2020-09-11 16:51:05 +02:00
Lukáš Hejl
693aac1f3f
Fix compiler warnings and failing compilation on macOS
2020-09-10 22:57:58 +02:00
Lukáš Hejl
7a37279307
Fix typo in function build_octree
2020-09-10 22:38:37 +02:00
Lukáš Hejl
bfe47c1af0
Fix rotation in support cubic infill
2020-09-10 22:30:49 +02:00
Lukáš Hejl
dc698c2bb1
Move support cubic infill to separate class.
...
Support infill is enabled in the GUI.
2020-09-10 16:53:08 +02:00
Lukáš Hejl
dfd1351c9a
A prototype of adaptive support infill
2020-09-10 14:55:48 +02:00
Lukáš Hejl
dd2fe22f05
Construct octree based on inserted points
2020-09-10 14:52:26 +02:00
Lukáš Hejl
e4c32a85de
A simple version of adaptive cubic support, for testing purposes
2020-09-10 14:52:26 +02:00
Lukáš Hejl
bddca650a9
Move rotation from building octree to infill generating
2020-09-10 14:52:21 +02:00
Vojtech Bubnik
b7ebee01aa
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
3ddeac598a
Check if exist any boundary polyline
2020-09-07 09:14:06 +02:00
Lukáš Hejl
1c0a4aaa9b
Octree representation rework
2020-09-03 19:21:55 +02:00
Lukáš Hejl
1e73ab0202
Fix bug in lines merging
2020-09-03 14:28:25 +02:00
Lukáš Hejl
e245c7e787
Connect infill to perimeters
2020-09-03 13:05:28 +02:00
Lukáš Hejl
f0a8f736e3
Code cleanup
2020-09-03 11:56:41 +02:00
Lukáš Hejl
fb7cf3dc48
Octree's first cube depends on model size.
2020-09-03 08:04:05 +02:00
Lukáš Hejl
f43b8b1c0f
Change in passing octree struct
2020-09-02 22:53:10 +02:00
Lukáš Hejl
7363156063
Fix crash on inconsistent input
2020-08-30 20:38:07 +02:00
Lukáš Hejl
49830f2212
Fix discontinuous extrusion lines for adaptive infill
2020-08-27 13:04:53 +02:00
Lukáš Hejl
87244c6b81
Switch to smart pointers
2020-08-27 07:28:43 +02:00
Lukáš Hejl
f014afb08c
Polylines merging
2020-08-27 01:59:35 +02:00
Lukáš Hejl
0b6841264c
Add function for check existence of triangle in define radius
2020-08-26 23:28:52 +02:00
Lukáš Hejl
923687e06f
Generating polylines from octree
2020-08-26 22:18:51 +02:00
Lukáš Hejl
e4aea124cf
Building octree based on distance from mesh
2020-08-26 18:15:59 +02:00
Lukáš Hejl
f1a59060a3
Preparation for new infill
2020-08-26 16:51:34 +02:00
Lukas Matena
edcaab8b0a
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
e8e004ab5e
Fixed few warnings
2020-05-26 16:06:11 +02:00
Lukas Matena
4fa702c570
Slight include cleanup
2020-05-26 13:45:36 +02:00
bubnikv
5703f31d96
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
7325be0e7d
fixing a compilation issue on a buggy GCC on R-PI
2020-04-28 18:28:11 +02:00
bubnikv
8156379ec1
Ironing and Monotonous infill - first working implementation.
2020-04-28 17:19:11 +02:00
bubnikv
805cc03894
Introduction of Monotonous infill type. Fill no-sort only for monotonous
...
and ironing infills.
2020-04-25 08:15:04 +02:00
bubnikv
775ceb6037
WIP: Monotonous infill
2020-04-24 09:41:48 +02:00
bubnikv
109b95bb19
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
9db59a3cd7
WIP: Ironing over top surfaces.
2020-04-14 11:53:28 +02:00
Lukas Matena
ac501bdf8b
Merge branch 'master' into dev
2020-03-24 21:51:05 +01:00
bubnikv
0841ef6ee8
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
bffd07baa6
Fixed some more warnings
2020-03-03 15:53:26 +01:00
Lukas Matena
f26de2e1ac
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
756d3e4da1
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
30bce02593
Fix of the new gyroid infill path planning. Fixes #3226
2019-11-22 18:22:44 +01:00