Commit Graph

355 Commits

Author SHA1 Message Date
tamasmeszaros
b45bb84fa6 Another fix to find_merge_pt 2022-07-29 13:05:39 +02:00
tamasmeszaros
a55be29568 Fix failing tests for merge point search
Improvements and comments to find_merge_pt
2022-07-29 13:05:39 +02:00
tamasmeszaros
f3d4a90721 Fixes to compile on MSVC 2022-07-29 13:05:39 +02:00
tamasmeszaros
1a30c0aaa0 Extend mergept tests 2022-07-29 13:05:39 +02:00
tamasmeszaros
8a78428d10 Add tests to find_merge_pt and make them pass 2022-07-29 13:05:39 +02:00
tamasmeszaros
6523bfdf99 Enable ground facing only option for branching tree
Essentially discards mesh nodes
2022-07-29 13:05:39 +02:00
tamasmeszaros
0a3b17f940 Fix failing sla tree tests
Try to increase number of rays in Beam to prevent colisions


Put back threshold for intersections with model in sla tree tests 


Increase safety distance for branching tree instead of increasing rays
2022-07-29 13:05:39 +02:00
tamasmeszaros
8723e421b3 Add new branching tree algorithm 2022-07-29 13:05:39 +02:00
tamasmeszaros
b1317be78a Selectable support tree type 2022-07-29 13:05:39 +02:00
enricoturri1966
ca34518bcc Fixed conflicts after merge with master 2022-07-21 08:55:52 +02:00
Lukáš Hejl
bea962b6fe Fixed unit tests after merge. 2022-06-30 00:30:22 +02:00
Lukas Matena
62e59a4526 Fixing conflicts part 1:
fixed simple conflicts
2022-06-29 16:43:29 +02:00
Lukas Matena
b61714bb3e Merge branch 'master_250' (NO CONFLICTS FIXED):
CONFLICT (content): Merge conflict in resources/profiles/PrusaResearch.idx
CONFLICT (content): Merge conflict in resources/profiles/PrusaResearch.ini
CONFLICT (content): Merge conflict in src/libslic3r/CMakeLists.txt
CONFLICT (content): Merge conflict in src/libslic3r/Fill/Fill.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode.hpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/GCodeProcessor.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/GCodeProcessor.hpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/SeamPlacer.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/SeamPlacer.hpp
CONFLICT (add/add): Merge conflict in src/libslic3r/Geometry/Curves.hpp
CONFLICT (content): Merge conflict in src/libslic3r/PerimeterGenerator.cpp
CONFLICT (content): Merge conflict in src/libslic3r/Point.hpp
CONFLICT (content): Merge conflict in src/libslic3r/PrintConfig.hpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/ConfigWizard.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GCodeViewer.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GLCanvas3D.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GUI_App.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/Gizmos/GLGizmoHollow.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/Gizmos/GLGizmoSlaSupports.cpp
CONFLICT (content): Merge conflict in src/slic3r/Utils/FixModelByWin10.cpp
CONFLICT (modify/delete): t/perimeters.t deleted in HEAD and modified in master_250.  Version master_250 of t/perimeters.t left in tree.
CONFLICT (content): Merge conflict in tests/fff_print/CMakeLists.txt
CONFLICT (content): Merge conflict in tests/fff_print/test_fill.cpp
CONFLICT (content): Merge conflict in version.inc
CONFLICT (modify/delete): xs/xsp/PerimeterGenerator.xsp deleted in HEAD and modified in master_250.  Version master_250 of xs/xsp/PerimeterGenerator.xsp left in tree.
2022-06-29 14:37:14 +02:00
tamasmeszaros
e44524f1cd Fix warnings in tests caused by integer conversions 2022-06-29 12:00:09 +02:00
tamasmeszaros
d23f9d7674 Refactoring and performance optimization for support trees in SLA 2022-06-29 10:43:46 +02:00
enricoturri1966
6d97de14d9 Tech ENABLE_RAYCAST_PICKING - Removal of all remaining code related to old OpenGL based picking 2022-06-21 09:16:36 +02:00
Lukáš Hejl
ce038fd7f0 Reenabled some of the previously disabled tests after the computation of bridging perimeters was added. One test was disabled for Arachne because Arachne is causing issues with seam alignment. 2022-06-09 11:23:41 +02:00
Lukáš Hejl
f460c53d86 Backported a fix from Clipper 6.4.2 for the issue that Clipper Z coordinated has incorrect value because ZFillFunction wasn't called in all cases (https://sourceforge.net/p/polyclipping/bugs/160/). Also, this issue led to duplicity vertices with the same XY coordinates but differ in Z coordinates. 2022-06-09 11:05:05 +02:00
Lukáš Hejl
89f467a488 Fixed undefined symbols when mold linker was used for linking libnest2d_tests and sla_print_tests. 2022-06-09 10:57:30 +02:00
Lukáš Hejl
46ade54937 Backported a fix from Clipper 6.4.2 for the issue that Clipper Z coordinated has incorrect value because ZFillFunction wasn't called in all cases (https://sourceforge.net/p/polyclipping/bugs/160/). Also, this issue led to duplicity vertices with the same XY coordinates but differ in Z coordinates. 2022-06-09 09:22:40 +02:00
tamasmeszaros
4f8535d0d5 Move out invalid_id constant from MutablePriotityQueue template class
Enclose it into Slic3r namespace
2022-06-07 16:05:16 +02:00
tamasmeszaros
d9ed45be56 Apply remarks from code review with additional cosmethics 2022-06-03 10:08:11 +02:00
tamasmeszaros
f9fb7f947d Revamped A* algorithm
with extended test suite
2022-06-02 17:44:51 +02:00
Lukáš Hejl
df552a9226 Fixed an undefined symbol when mold linker was used for linking slic3rutils_tests. 2022-06-02 13:47:51 +02:00
Lukáš Hejl
043ac6247e Fixed some failing unit tests after setting Arachne as the default perimeter generator. Some unit tests are temporarily disabled for Arachne. 2022-06-01 21:43:01 +02:00
Lukáš Hejl
454e6496ce Added concentric infill generated using Arachne. 2022-06-01 21:41:39 +02:00
tamasmeszaros
9892893587 Add UIThreadWorker for debugging and profiling purposes 2022-05-27 15:33:03 +02:00
Vojtech Bubnik
f5ec76c230 Follow-up to dc3931ec1f:
Fix mutable priority queue being wiped when moving out of function
    Without move constructor, the clean() gets called when returning an instance from a function.
The above fix was applied also to MutableSkipHeapPriorityQueue.

Follow-up to 15a082b80b:
Fixed TEST_CASE("Mutable priority queue - first pop", "[MutableSkipHeapPriorityQueue]")
2022-05-16 17:27:10 +02:00
Vojtech Bubnik
15a082b80b Fix of libslic3r "Mutable priority queue - first pop" test failure #8276
Improved readability by introducing invalid_id() getter.
Made the ResetIndexWhenRemoved flag active in both debug and release mode,
it used to be made active by Vojtech for release mode only for unknown
reason.
2022-05-16 11:34:26 +02:00
tamasmeszaros
de84fbf23d Remove junk output to stdout from various tests 2022-05-16 10:28:43 +02:00
PavelMikus
d0c08ec5c1 Feature: AABB tree for lines
Small refactoring of AABB tree distance query function, to allow different primitives (apart from triangles)
Implemented Distancer and functions to create AABB tree from lines and use closest point query
Added test for the AABBTree with lines
Added Benchmark comparing EdgeGrid with AABBTree on line contours (Inside AABBTree test file, disabled under compilation flag)
2022-05-12 12:55:10 +02:00
tamasmeszaros
6b23e90424 Add astar algorithm
Fix windows build
2022-05-11 12:06:07 +02:00
tamasmeszaros
fed317f27b Change std::nan("") to proper nan constants 2022-05-11 10:35:12 +02:00
tamasmeszaros
12a54251c9 Extend kdtree with k-nearest and bounding box queries
Also add test to verify it
2022-05-11 10:35:01 +02:00
Filip Sykala
effad3a6f8 fix initialization type 2022-05-09 17:02:55 +02:00
Vojtech Bubnik
e687db9eb0 Ported custom_gcode and print unit tests from Perl to C++. 2022-05-06 18:30:18 +02:00
Filip Sykala
6ab517187f Fix mismatch of data types.
Separate checks.
2022-05-06 13:37:35 +02:00
Vojtech Bubnik
d4b8d4d0f3 Further Perl unit test porting to C++ and Perl interface reduction:
Ported cooling, gap fill, thin walls and polyline unit tests.
2022-05-05 17:57:57 +02:00
Vojtech Bubnik
576c167bd5 Ported "avoid crossing perimeters" and bridging unit tests from Perl
to C++.
Further reduced Perl bindings.
Got rid of the ExPolygonCollection wrapper, replaced with ExPolygons.
2022-05-04 18:21:08 +02:00
Vojtech Bubnik
a627614b58 Perl unit tests for perimeters and multi-material were rewritten to C++.
Perl binding was slimmed down, namely Clipper is no more linked by Perl.
2022-05-04 15:06:04 +02:00
Vojtech Bubnik
33b2478b69 Ported Infill unit tests from Perl to C++. 2022-05-02 14:34:50 +02:00
Vojtech Bubnik
3687bc28d5 Some reduction of Perl dependencies on ClipperLib,
ported some ClipperLib polyline clipping tests to C++.
2022-05-02 14:34:50 +02:00
tamasmeszaros
4148d7332e Prohibit multiple formats with the same extension (zip)
Archive format can be specified as a hint when a reader is created.
2022-04-26 14:43:28 +02:00
tamasmeszaros
784105f5ad Extend sla archive tests with read-back 2022-04-26 10:57:49 +02:00
tamasmeszaros
5ecf29f303 Separate existing sla archive import code 2022-04-26 09:38:03 +02:00
Vojtech Bubnik
42e802c1b8 Refactoring of Curves.hpp for better memory management and vectorization
(replaced vector of vectors with Eigen 2D matrices).
2022-04-25 12:42:51 +02:00
Vojtech Bubnik
7d02647ebf Removed various Point::ccw() and Point::ccw_angle() methods, they were
provided for Perl bindings and their semantic was confusing.
Implemented free function angle() to measure angle between two vectors.
Reworked Polygon::convex/concave_points(), changed the meaning of their
angle threshold parameter.
Removed some unused methods from Perl bindings and tests.
Reworked the "wipe inside at the external perimeter" function
after Point::ccw_angle() was removed.
2022-04-25 12:42:51 +02:00
PavelMikus
5c23d471de BSplines, Polynomial fitting 2022-04-25 12:42:51 +02:00
PavelMikus
bbcd6be250 Implemented piecewise data (curve) fitting with variable kernels 2022-04-25 12:42:51 +02:00
Vojtech Bubnik
926ae04718 Follow-up to 408e56f039
Fixing compilation of tests on latest GCC/boost
2022-04-25 11:32:09 +02:00