Commit Graph

77 Commits

Author SHA1 Message Date
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
bubnikv
a70b0d952f Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-11-14 17:02:46 +01:00
bubnikv
94923cafb6 Fix of a typo in KDTreeIndirect.
Improvement of the infill path planning.
Regression fix of Gyroid infill crashes.
Some unit tests for elephant foot and path planning.
2019-11-14 17:02:32 +01:00
Enrico Turri
14d739b557 Attempt to fix Mac build on buildserver 2019-11-12 13:19:17 +01:00
bubnikv
6dd0872b1d Merged pull request "Gyroid improvements" #2730
by @supermerill and @wavexx

WIP: The function Fill::connect_infill() is being rewritten
to utilize spatial structures wherever possible for lower CPU load
and less dynamic memory allocation.
2019-11-07 14:28:30 +01:00
bubnikv
6fa25152d7 Ported test_fill from upstream Slic3r, thanks @lordofhyphens 2019-10-16 17:43:43 +02:00
bubnikv
ce217b6222 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
bubnikv
30f0e9b4d3 Merge branch 'master' of https://github.com/Prusa3d/PrusaSlicer 2019-09-27 09:52:57 +02:00
bubnikv
f5d48d90a7 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
Lukas Matena
2fbc4c37fc 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
bubnikv
02b3fe2e36 Fix of previous infill refactoring. 2019-09-10 19:08:04 +02:00
bubnikv
d09c77c401 Fix of d146a0237e
(reworked infill generator to merge regions with the same properties).
2019-09-09 16:44:29 +02:00
Lukas Matena
1bae0a6a97 Fill.cpp: Fixed a typo 2019-09-05 16:03:44 +02:00
bubnikv
bc412ea4aa 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
bubnikv
fc35cb4f43 Some Vojtech's beautification 2019-08-22 09:47:44 +02:00