tamasmeszaros
8fdb0fddc0
Get rid of Contour3D
2021-06-08 10:28:23 +02:00
tamasmeszaros
e6f97358bc
Refactored hollowing backend to use indexed_triangle_mesh
2021-06-08 10:28:23 +02:00
tamasmeszaros
1009f78862
SLA backend refactored, except Hollowing
2021-06-08 10:27:35 +02:00
Lukas Matena
6b6b086948
Fixed tests and windows build
2021-05-24 12:20:29 +02:00
enricoturri1966
9da87d8e0f
Code cleanup
2021-05-24 10:03:48 +02:00
enricoturri1966
ca9fad002c
3rd attempt to fix unit test for 2D convex hull of sinking object on RasperryPi
2021-05-24 08:54:08 +02:00
enricoturri1966
dfa85c2c37
Another attempt to fix unit test for 2D convex hull of sinking object on RasperryPi
2021-05-21 15:37:25 +02:00
enricoturri1966
49f29e8353
Added debug output to help fixing unit test for 2D convex hull of sinking object on RasperryPi
2021-05-21 11:56:10 +02:00
enricoturri1966
90be278d98
Attempt to fix unit test for 2D convex hull of sinking object on RasperryPi
2021-05-21 10:14:13 +02:00
enricoturri1966
f0ef5e409d
Added unit test for calculation of 2D convex hull of sinking object
2021-05-20 12:53:47 +02:00
Vojtech Bubnik
3481898d4d
Fixed missing include
2021-05-18 16:15:54 +02:00
Vojtech Bubnik
70b4915f9c
TriangleMeshSlicer: Got rid of admesh!
2021-05-18 15:05:30 +02:00
Vojtech Bubnik
308d6b7809
WIP: Reworked slicing
...
1) Slicing code moved to TriangleMeshSlicer.cpp,hpp from TriangleMesh.cpp,hpp
2) Refactored to use as little as possible of admesh.
2021-05-17 20:25:59 +02:00
Vojtech Bubnik
52b3c655ff
Fixed Polygon::centroid()
...
Ported Polygon unit tests from Perl to C++.
2021-05-07 11:42:21 +02:00
Vojtech Bubnik
f16d4953be
Removing offset2 from Perl bindings and other minor cleanup.
2021-05-06 14:29:20 +02:00
Vojtech Bubnik
a2de09e11e
Fixing unit tests.
2021-05-05 13:19:01 +02:00
Vojtech Bubnik
09a80d954c
Further rework of ClipperUtils: Replaced many to_polygons() /
...
to_expolygons() calls with templated ClipperUtils variants to avoid
memory allocation and copying.
2021-05-03 11:39:53 +02:00
Vojtech Bubnik
9f4e9da5c6
Merge branch 'tm_vb_clipper_eigen'
2021-04-23 11:44:25 +02:00
Vojtech Bubnik
8d0950ce12
Convincing ClipperLib to use Slic3r's own Point type internally.
2021-04-21 20:15:49 +02:00
tamasmeszaros
949b0e63e8
Fix integer overflows in libnest2d tests
2021-04-21 16:08:38 +02:00
tamasmeszaros
ad19ab219d
New custom backend for libnest2d using libslic3r types
...
Adapted to new clipper->eigen mod
2021-04-21 16:02:25 +02:00
Vojtech Bubnik
542d95a593
Fixing unit tests
2021-04-21 15:31:06 +02:00
Vojtech Bubnik
ba94fa4867
Fixed unit tests.
2021-04-21 13:30:32 +02:00
Vojtech Bubnik
7112ac61b6
Replacing ClipperLib::IntPoint with Eigen point as a first step to
...
make the ClipperLib paths and polygons compatible with Slic3r paths
and polygons without conversions and memory allocations.
2021-04-14 09:22:51 +02:00
tamasmeszaros
41a0e270ac
Fix integer overflows in libnest2d tests
2021-04-14 08:51:54 +02:00
tamasmeszaros
f3e3aabec7
Least supports optimization revived.
...
Fix missing include on Win32
Cleanup benchmarking code
2021-04-07 12:51:02 +02:00
tamasmeszaros
4eb13a407f
Extend execution framework with convenience functions
2021-04-07 12:51:02 +02:00
Lukáš Hejl
dd4b26ba25
Fix of 7bd412a2ca
2021-04-05 20:32:41 +02:00
Lukáš Hejl
7bd412a2ca
A few test cases for Voronoi diagrams.
...
A few test cases collected from multi-material segmentation. All new test cases are suppressed not to fail a building process.
2021-04-05 16:47:00 +02:00
tamasmeszaros
f117d02750
Back-porting improvements for libnest2d
2021-03-31 09:36:54 +02:00
Vojtech Bubnik
ba5e8860cb
Fixing some compilation warnings
2021-03-15 10:36:03 +01:00
Vojtech Bubnik
adcbe4347c
Fixed unit tests.
2021-03-15 09:55:56 +01:00
Vojtech Bubnik
8e27e355c2
Fixing unit tests.
2021-03-15 09:55:56 +01:00
Vojtech Bubnik
ceea9de8b8
WIP: Refactored bridging flow from normal flow, new config value
...
'thick_bridges' to switch between the Slic3r vs. S3D/Cura/Ideamaker
way of printing 1st object layer over supports.
Simplified the PresetHints.
2021-03-15 09:55:56 +01:00
tamasmeszaros
33d6655f26
Clean up hollowing test
...
Needs rethinking anyway
2021-03-08 17:38:10 +01:00
tamasmeszaros
82954ba715
Group hollowing result (including grid) into one struct
2021-03-08 17:38:10 +01:00
Vojtech Bubnik
5f5de1c812
Follow-up to 5276bd98d7
:
...
WIP: MutablePolygon - linked list based polygon implementation
allowing rapid insertion and removal of points.
WIP: porting smooth_outward() from Cura.
2021-03-03 15:04:26 +01:00
Vojtech Bubnik
5276bd98d7
WIP: MutablePolygon - linked list based polygon implementation
...
allowing rapid insertion and removal of points.
WIP: porting smooth_outward() from Cura.
2021-03-01 18:41:46 +01:00
Vojtech Bubnik
db2d78ff21
Reduction on compiler warnings, mainly on MSVC.
...
Fix of the new gap_fill_enable flag: Take it into account when comparing
regions.
2021-02-10 17:29:07 +01:00
Vojtech Bubnik
5449e6c549
Fixing some compiler warnings on Linux
2021-02-08 11:58:03 +01:00
Vojtech Bubnik
73c9f939e0
Squash merge of lh_brim_rework,
...
brim separated to Brim.cpp,hpp
Refactored accessors to PrintObjectPtrs, PrintRegionPtrs, LayerPtrs,
SupportLayerPtrs for const correctness.
2021-02-03 15:12:53 +01:00
Vojtech Bubnik
a116914fce
WIP VoronoiOffset: Squash merge of vb_voronoi_offset
...
Working contour offsetting,
skeleton_edges_rough() to detect "important" skeleton edges.
Radius of an inscribed circle along the "important" skeleton edges
changes slowly, therefore these "important" skeleton edges signify
oblong regions possibly needing a gap fill.
2021-01-29 16:34:22 +01:00
Lukas Matena
dc4bdad84a
Fixed some more GCC warnings
2021-01-29 15:17:03 +01:00
Vojtech Bubnik
e78ad6ffa9
Fixing unit tests for supports. After "dont_support_bridges" was fixed
...
for perimeters, no support was rightfully generated for a preset
using a default "dont_support_bridges" = off.
2020-12-11 17:57:49 +01:00
Vojtech Bubnik
bd79036d13
Replaced all "long long" types with int64_t
...
Replaced all "unsigned long long" types with uint64_t.
These "new" types better communicate their meaning and they are
guaranteed to behave the same on all platforms & compilers.
2020-12-10 08:40:15 +01:00
Vojtech Bubnik
9f77335d8a
Updated Catch2 to v2.13.3 to support compilation on OSX11 / ARM
2020-12-01 16:48:59 +01:00
Vojtech Bubnik
aa6ddfec85
Added functions to export raw image data to PNG for debugging purposes.
...
Renamed PNGRead.cpp/hpp to PNGReadWrite.cpp,hpp
EdgeGrid: Resurrected debugging output to PNG.
2020-11-26 09:01:44 +01:00
tamasmeszaros
0a932ebfe3
Enable http digest authentication for CURL
2020-11-25 13:58:03 +01:00
Vojtech Bubnik
e77fc43159
Merge remote-tracking branch 'remotes/origin/master' into lh_adaptive_infill_hooks
2020-11-16 10:54:19 +01:00
enricoturri1966
8c8ad70c58
ENABLE_GCODE_VIEWER set as default in fff_print test and PrusaSlicer.cpp
2020-11-12 15:01:59 +01:00
Vojtech Bubnik
239d588c5d
1) Implemented anchoring of infill lines to perimeters with length
...
limited anchors, while before a full perimeter segment was always
taken if possible.
2) Adapted the line infills (grid, stars, triangles, cubic) to 1).
This also solves a long standing issue of these infills producing
anchors for each sweep direction independently, thus possibly
overlapping and overextruding, which was quite detrimental
in narrow areas.
3) Refactored cubic adaptive infill anchroing algorithm
for performance and clarity.
2020-11-05 17:32:40 +01:00
Vojtech Bubnik
3cfccf1a5a
Fixed unit tests broken with 3502f256fa
2020-10-29 12:39:03 +01:00
tamasmeszaros
2f422f5dbe
Fix sla tests on mac
2020-10-15 13:50:05 +02:00
tamasmeszaros
73d8bab4f8
Fix confusing test
...
fixes #4724
2020-09-21 08:45:28 +02:00
tamasmeszaros
743d6643ae
Drop rubbish tests
2020-09-16 15:04:01 +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
tamasmeszaros
c10ff4f503
fixing optimizer and concurrency::reduce
2020-09-10 14:03:30 +02:00
tamasmeszaros
a21ff4141b
Fix failing test due to changes in support point genertion
2020-09-10 13:19:17 +02:00
tamasmeszaros
a9a99de939
Enable all tests for support point generator
2020-09-10 13:19:17 +02:00
enricoturri1966
b563010bf1
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer
2020-08-28 12:30:45 +02:00
tamasmeszaros
1560e15ed9
Add missing includes for win
2020-08-27 23:14:42 +02:00
tamasmeszaros
2bcd36d155
PNG image read with libpng
2020-08-27 23:14:42 +02:00
enricoturri1966
af200e47c1
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer
2020-08-19 08:18:23 +02:00
tamasmeszaros
4ef52af906
Add dedicated tests for support point generation
2020-08-18 11:41:14 +02:00
enricoturri1966
25c3552555
Fixed conflicts after merge with master
2020-08-04 09:58:19 +02:00
tamasmeszaros
927b81ea97
Working small-to-normal support merging
...
Fixed fatal bug with anchors for mini supports
Make the optimization cleaner in support generatior
Much better widening behaviour
Add an optimizer interface and the NLopt implementation into libslic3r
New optimizer based only on nlopt C interfase
Fix build and tests
2020-08-03 19:05:30 +02:00
tamasmeszaros
a68564e2d0
Include test name with output obj files for sla_print_tests
2020-08-03 19:05:30 +02:00
tamasmeszaros
1eec6c473c
Rename EigenMesh3D to IndexedMesh and SupportConfig to SupportTreeConfig
2020-08-03 19:05:30 +02:00
tamasmeszaros
f19b3a2344
Id-s put in a base class for support tree primitives
2020-08-03 19:05:30 +02:00
tamasmeszaros
301a168b89
Fix bugs and non working tests
...
Fix failing tests
Try to fix build on windows
Try to fix failng tests on Mac
2020-08-03 19:05:30 +02:00
tamasmeszaros
184f64f828
Separate support tree routing and meshing, remove Common.hpp/.cpp .
...
* Remove Common.hpp and Common.cpp, move things into their respective modules in sla.
2020-08-03 19:05:30 +02:00
tamasmeszaros
0622322146
Create smaller supports in problematic areas with established strategies
...
Completely remove the concept of CompactBridge.
Replace it with Heads having the same back radius as front radius.
Try to apply the same rules for mini supports as in the route_to_model step.
Increased accuracy of bridge_mesh_intersect shot from support points
Refining mini support integration
2020-08-03 19:05:30 +02:00
enricoturri1966
f727198891
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer
2020-06-29 08:48:23 +02:00
bubnikv
c10f6a622d
Fixed unit tests on Windows after introduction of GMP to
...
boost::polygon Voronoi diagram generator by Vojtech.
Fixed Perl bindings on Windows after some "improvement" of the Windows 10
SDK headers, which fail if included from a C++ code using the
extern "C"
clause. Namely, the Windows 10 SDK include for sockets introduces C++ macros
if a "compiled with C++" symbol is provided even if included through
exetrn "C".
2020-06-27 08:44:13 +02:00
enricoturri1966
5c7b0948bc
Fixed conflict after merge with master
2020-06-19 11:49:59 +02:00
Vojtech Bubnik
851ebc7991
fix of previous commit, missing include
2020-06-16 14:00:25 +02:00
Vojtech Bubnik
b101a8e266
Fixes of the offset curves from Voronoi diagram.
...
The offset curve extractor is already quite usable,
though singular cases are still not covered yet
when the offset curve intersects or nearly intersects
a Voronoi vertex.
Removal of the PRINTF_ZU "%zu" Visual Studio printf compatibility macro.
Fixes of a contours self intersection test for collinear segments.
SVG exporter now exports white background, so that the GNOME Eye viewer is usable.
2020-06-16 13:15:48 +02:00
enricoturri1966
ab60499298
Fixed conflicts after merge with master
2020-06-12 10:35:18 +02:00
Vojtech Bubnik
1c95ceaeaa
Reworked algorithm for Voronoi Offset curve extraction.
...
Now the algorithm is very different from the OpenVoronoi implementation
and hopefully it is now correct (save numerical issues, which will be
a big PITA).
2020-06-11 16:11:02 +02:00
enricoturri1966
70a6fb0e20
Added new tech ENABLE_GCODE_VIEWER_AS_STATE -> GCodeViewer as a new application state (WIP) + fix of conflicts after merge with master
2020-06-05 16:50:17 +02:00
enricoturri1966
c3d643ead3
Fixed conflicts after merge with master
2020-06-04 13:57:39 +02:00
Vojtech Bubnik
6f4d24ab95
WIP: Generating offset curves with properly rounded corners from
...
a Voronoi diagram. Curve extraction is based on the OpenVoronoi implementation.
2020-06-04 13:50:09 +02:00
tamasmeszaros
10c59b0d00
Fix the tests after EigenMesh3D refactor
2020-06-02 17:15:08 +02:00
enricoturri1966
71db69ef41
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer
2020-05-29 12:29:24 +02:00
Vojtech Bubnik
6f92538c20
BoundingBox support for Lines,
...
BoundingBox constructor will no more throw for empty vector of points.
GMP allowed for Vojtech's fork of boost::polygon Voronoi implementation.
Added libslic3r tests for boost::polygon Voronoi. All Voronoi issues
ever reported on the Internet are captured by the tests. Two issues
reported (the two test cases) are real issues which may influence
PrusaSlicer negatively, namely
https://github.com/boostorg/polygon/issues/43
2020-05-28 15:53:53 +02:00
enricoturri1966
2eb4b2caed
Fixed conflicts after merge with master
2020-05-27 10:32:02 +02:00
Lukas Matena
3e855d36dc
Fixed unit tests after previous include manipulations
2020-05-26 15:33:44 +02:00
enricoturri1966
80c2f107c1
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer
2020-05-22 12:12:56 +02:00
Vojtech Bubnik
2b8f655020
WIP AABBIndirect: Documentation, polishing.
2020-05-22 09:29:21 +02:00
Vojtech Bubnik
eeb9590d28
WIP: own AABBTreeIndirect, builds up the tree 4x quicker than libigl.
2020-05-22 09:29:21 +02:00
enricoturri1966
05e4476808
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_gcode_viewer
2020-04-29 12:53:55 +02:00
tamasmeszaros
2a8c485b32
suppress unnecessary test output in release mode
2020-04-28 21:11:54 +02:00
enricoturri1966
e5c45405d4
Fixed conflicts after merge with master
2020-04-24 10:59:03 +02:00
tamasmeszaros
217477a9ff
SLA archive import with miniz, marching square bugfixes
...
Fix compilation on Windows
Fix array subscript out of range error in MarchingSquares
Fix normals of mesh constructed from slices
Improve performance of mesh construction from slices
2020-04-23 19:12:07 +02:00
tamasmeszaros
247fca6d55
Initial version of sl1 import with sla::Raster refactor.
2020-04-23 19:05:32 +02:00
tamasmeszaros
1bffc2b99b
Add ModelArrange.hpp as extension to Model.hpp, use it for duplicating
...
Refactored Arrange interface: remove the union based BedShapeHint, replace it with proper function overloads
WARN: this commit is only intermediate, it does not compile.
2020-04-23 18:19:03 +02:00
tamasmeszaros
69c02a407b
Add libnest tests for various basic object functions
2020-04-23 18:17:58 +02:00
tamasmeszaros
89d376dc35
Add min_object_distance method as free function taking ConfigBase argument
2020-04-23 18:17:37 +02:00
enricoturri1966
29cbfa7c9e
Fixed conflicts after merge with master
2020-03-30 09:36:37 +02:00
bubnikv
c27297f6cc
64bit coord_t
...
Vec3i as a vertex index to TriangleMesh constructor
2020-03-25 14:35:41 +01:00