Filip Sykala
34304a40bf
Merge branch 'master' into fs_emboss
2022-05-11 16:05:40 +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
Filip Sykala
05354eda0c
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/slic3r/GUI/GLCanvas3D.cpp
2022-05-06 08:58:04 +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
Filip Sykala
864d1e5830
Cut surface in backend job
...
Store flag about use surface(into 3mf and style)
GUI: Add checkbox to start using model surface
2022-05-04 19:42:39 +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
Filip Sykala
e5bf946008
Fix filtering order of AOIs
2022-05-03 13:05:58 +02:00
Filip Sykala
51b103885c
Fix of flood fill on edge
2022-05-02 17:29:56 +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
Filip Sykala
3e9778b46b
Merge branch 'et_world_coordinates' into fs_emboss
2022-05-02 10:11:47 +02:00
Filip Sykala
a1d7040902
WIP: cut surface of model
...
update emboss icons to not be soo huge - pixel preccisse
2022-04-26 17:43:38 +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
Filip Sykala
331d4d4557
Show user warning about unknown symbols by font inside of input text
...
Fix correct selection of collection ascent, descent, ...
Remove boost log from emboss --> not work properly on thread
2022-04-07 16:34:14 +02:00
Filip Sykala
d91d13c769
Fix of backslash ending line in comment
...
../tests/libslic3r/test_quadric_edge_collapse.cpp:162:5: warning: multi-line comment [-Wcomment]
../tests/libslic3r/test_quadric_edge_collapse.cpp:165:5: warning: multi-line comment [-Wcomment]
2022-04-05 16:28:34 +02:00
Filip Sykala
ee50af26c3
Fix Linux memory leaks
2022-03-25 15:50:13 +01:00
Filip Sykala
08c6e4faec
Add emboss text test
...
(created mainly to profile conversion)
2022-03-25 11:06:58 +01:00
Filip Sykala
583babb3b4
Merge branch 'master' into fs_emboss
2022-03-24 11:48:09 +01:00
Lukáš Hejl
97a5aa9592
Added a new test case for a missing Voronoi vertex.
2022-03-24 11:30:32 +01:00
Filip Sykala
e6838f7e18
add new cgal as technology
2022-03-22 15:47:34 +01:00
Vojtech Bubnik
59e14cb752
Reworked constrained Delanay triangulation of polygons / expolygons
...
using CGAL CDT implementation:
Removed all the sets / maps, replaced with vectors and CDT vertex
intrusive indices.
Reworked the outside / inside classification using just the CDT
"constrained edge" attributes and a single queue.
Cherry pick commit 1648ae853d6c69a1118efbc694dadeb9965154ee
2022-03-17 13:09:10 +01:00
Filip Sykala
84bde2163d
Partialy prepare surface cut
2022-03-16 16:58:36 +01:00
Filip Sykala
87f22765ba
Separate functionality
2022-03-15 19:53:43 +01:00
Filip Sykala
41e6dba3df
Fix fill on edge
...
change color to enum
2022-03-14 11:12:53 +01:00
Filip Sykala
572207e1c3
partial refactor
2022-03-11 16:54:53 +01:00
Filip Sykala
9e1ebcf4c6
revert auto formating
2022-03-09 13:41:41 +01:00
Filip Sykala
70b94d592b
Merge branch 'et_world_coordinates' into fs_emboss_with_CGAL_5_4
...
# Conflicts:
# src/libslic3r/Technologies.hpp
# src/slic3r/GUI/Gizmos/GLGizmoBase.hpp
# src/slic3r/GUI/Gizmos/GLGizmosManager.cpp
2022-03-09 11:06:58 +01:00
Filip Sykala
57c75395c6
fix test
2022-03-09 10:59:22 +01:00
Filip Sykala
4a399789f4
Add vojta test
2022-03-09 09:41:03 +01:00
Filip Sykala
a6834a1a82
WxUtils are using imap
...
Remove unused map utils
2022-03-08 09:22:56 +01:00
Filip Sykala
41a506688a
Change 2 map to bimap in TextConfigurationSerialization
2022-03-08 08:35:26 +01:00
Filip Sykala
6fdaee3cfe
Fix data type of collection
...
Fix warnings
../src/libslic3r/Emboss.cpp:135:24: warning: comparison of integer expressions of different signedness: 'int' and 'const unsigned int' [-Wsign-compare]
../src/libslic3r/Emboss.cpp:653:20: warning: comparison of integer expressions of different signedness: 'int' and 'unsigned int' [-Wsign-compare]
../src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp:2057:12: warning: unused variable 'count_icons' [-Wunused-variable]
../src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp:2058:12: warning: unused variable 'count_states' [-Wunused-variable]
2022-03-07 12:16:24 +01:00
Filip Sykala
0d724ad646
Fix test to be runable on other computers.
2022-03-07 11:40:23 +01:00
Filip Sykala
a000d12361
Change test to use font from resources
2022-03-02 14:31:56 +01:00
Filip Sykala
18d269506a
add index of font inside of collection to FontProp(font property) + serialization/deserialization (3mf + appConfig)
...
separate glyph cache from FontFile
2022-02-28 18:32:50 +01:00
Lukas Matena
e058f794d9
Merge branch 'stable'
2022-02-24 13:05:05 +01:00
Filip Sykala
ca79932d30
Reduce test to use only STB calls
2022-02-23 13:55:27 +01:00
Filip Sykala
482e510d7f
Add temporary test for win/mac
2022-02-23 13:29:26 +01:00
Filip Sykala
24207403ea
Merge branch 'master' into fs_emboss
2022-02-22 13:51:04 +01:00
tamasmeszaros
4f2772fef4
Fix sla archive tests
2022-02-18 14:30:13 +01:00
tamasmeszaros
b8718f4601
Silence sla print messages for archive export tests
2022-02-17 14:05:45 +01:00
tamasmeszaros
66f60de556
SLAArchive framework refactor
2022-02-17 12:50:40 +01:00
Filip Sykala
faa63f3182
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/libslic3r/Format/3mf.cpp
2022-02-10 14:04:02 +01:00
Lukáš Hejl
9b9f93ca07
Make unit test 'fff_print_tests' to pass when a memory leak is detected.
...
This is just for fixing builds from the stable branch, the master branch doesn't need it.
2022-02-09 13:43:51 +01:00
tamasmeszaros
7a092467a8
Disable overly detailed test outputs
2022-02-03 17:12:53 +01:00
tamasmeszaros
72da90d28f
WIP
...
wip
2022-02-03 16:10:03 +01:00
Filip Sykala
3f58cf73af
Fix for:
...
../tests/libslic3r/test_emboss.cpp:200:38: error: 'directory_iterator' is unavailable: introduced in macOS 10.15
../tests/libslic3r/test_emboss.cpp:200:57: error: 'path' is unavailable: introduced in macOS 10.15
2022-02-03 13:12:14 +01:00
Filip Sykala
546009a8e9
Fix Mac build
2022-02-03 12:45:39 +01:00
Filip Sykala
e783086689
Remove Simplify from tests
2022-02-03 10:25:06 +01:00
Filip Sykala
a50d93cd66
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/libslic3r/Geometry.cpp
# src/slic3r/GUI/Gizmos/GLGizmoBase.cpp
# src/slic3r/GUI/Gizmos/GLGizmoMove.cpp
# src/slic3r/GUI/Gizmos/GLGizmoMove.hpp
# src/slic3r/GUI/Gizmos/GLGizmoRotate.cpp
# src/slic3r/GUI/Gizmos/GLGizmoRotate.hpp
# src/slic3r/GUI/Gizmos/GLGizmoScale.cpp
# src/slic3r/GUI/Gizmos/GLGizmoScale.hpp
# src/slic3r/GUI/Gizmos/GLGizmoSimplify.cpp
# src/slic3r/GUI/ImGuiWrapper.cpp
# src/slic3r/GUI/ImGuiWrapper.hpp
# src/slic3r/GUI/Selection.cpp
# tests/slic3rutils/slic3r_jobs_tests.cpp
2022-02-02 15:27:25 +01:00
Filip Sykala
af69a4f2de
create emboss text mesh on same place as update
...
fix:
Un Itelic redraw
../src/slic3r/Utils/WxFontUtils.hpp:49:77: error: non-const lvalue reference to type 'shared_ptr<...>' cannot bind to a temporary of type 'shared_ptr<...>'
../src/slic3r/Utils/WxFontUtils.hpp:55:75: error: non-const lvalue reference to type 'shared_ptr<...>' cannot bind to a temporary of type 'shared_ptr<...>'
2022-01-31 13:17:24 +01:00
enricoturri1966
8d94841fa3
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev
2022-01-29 09:17:30 +01:00
Vojtech Bubnik
ba84240a85
Fixed unit-tests of GCodeFindReplace
...
Follow-up to 7da4bebe7a
WIP GCode substitutions: Changed the format of gcode_substitutions by
adding an empty comment as a fourth parameter to each substitution.
In the future, we will provide a UI to show / edit the comment.
2022-01-28 11:02:06 +01:00
enricoturri1966
703aefa75c
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev
2022-01-27 12:04:47 +01:00
Vojtech Bubnik
7ba5a2f5bc
GCodeFindReplace - single line option unit tests.
2022-01-25 16:54:16 +01:00
tamasmeszaros
960158b79f
Fix failing test for new ui jobs
2022-01-18 10:54:37 +01:00
YuSanka
fec654513e
Merge remote-tracking branch 'origin/master' into dev
2022-01-18 08:41:10 +01:00
Vojtech Bubnik
aa62868ccb
WIP G-code find & replace: Unit tests and some bug fixes.
2022-01-17 12:29:47 +01:00
enricoturri1966
c07a848257
Follow-up of 6201dad245
- Fixed test_color.cpp
2022-01-14 08:26:13 +01:00
enricoturri1966
a2dc1cd446
Fixed conflicts after merge with dev branch
2022-01-12 15:54:48 +01:00
tamasmeszaros
43f5e61b5f
Add possibility to wait for current job to stop.
2022-01-11 11:26:26 +01:00
tamasmeszaros
e367ef8011
Fix job tests on Win, don't use usleep()
2022-01-11 11:26:26 +01:00
tamasmeszaros
7e070d393e
Fix issue with non atomic transition to running state
...
After popping a job from input queue
2022-01-11 11:26:26 +01:00
tamasmeszaros
7352e1a01a
Basic tests for BoostThreadWorker
...
Separate job tests
2022-01-11 11:26:26 +01:00
Filip Sykala
4ec4bafe19
Create Emboss::Font as unique ptr not optional
...
Reason: Job need pointer on font until finished
2022-01-06 16:12:15 +01:00
Filip Sykala
b1b8eee3c9
add is italic check for font file
2022-01-06 11:29:16 +01:00
enricoturri1966
ab99a7865f
Fixed build of test_color.cpp on non-Windows OSs
2021-12-22 11:31:35 +01:00
enricoturri1966
cd4094743e
Tech ENABLE_COLOR_CLASSES - 1st installment -> Introduction of classes ColorRGB and ColorRGBA to unify color data definition and manipulation
2021-12-22 10:45:35 +01:00
Filip Sykala
5464b650d1
Merge branch 'tm_ui_job_rework_2' into fs_emboss
...
# Conflicts:
# src/slic3r/CMakeLists.txt
# src/slic3r/GUI/Jobs/PlaterJob.cpp
2021-12-14 19:04:52 +01:00
Filip Sykala
88523bceb6
Merge branch 'master' into fs_emboss
2021-12-13 10:52:04 +01:00
Vojtech Bubnik
d6bb8eead9
Fixed 3mf unit tests to pass on ARM 64bit
2021-12-06 14:20:52 +01:00
tamasmeszaros
35ca045b1c
Add possibility to wait for current job to stop.
2021-12-03 01:59:34 +01:00
tamasmeszaros
2b945f36f1
Fix job tests on Win, don't use usleep()
2021-12-02 15:34:20 +01:00
tamasmeszaros
78118b7b1d
Fix issue with non atomic transition to running state
...
After popping a job from input queue
2021-12-02 15:06:58 +01:00
tamasmeszaros
39198ff845
Basic tests for BoostThreadWorker
...
Separate job tests
2021-12-02 15:06:35 +01:00
Filip Sykala
d698df2c31
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/slic3r/GUI/GUI_App.cpp
# tests/libslic3r/test_indexed_triangle_set.cpp
2021-12-01 14:35:42 +01:00
Vojtech Bubnik
7a2bd9023a
One more fix to run unit tests on Windows: Missing DLLS need to be copied.
2021-11-30 11:00:26 +01:00
Vojtech Bubnik
5fd279cbc8
Fixing clang compiler warnings
2021-11-30 10:50:27 +01:00
Justin Schuh
cb4bade69f
Add missing setupapi.lib to slic3rutils tests ( #7382 )
...
thanks
2021-11-30 10:22:50 +01:00
Filip Sykala
eba68f9a9e
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/slic3r/GUI/GUI_ObjectList.cpp
# src/slic3r/GUI/Gizmos/GLGizmoSimplify.cpp
# src/slic3r/GUI/ImGuiWrapper.hpp
2021-11-23 09:09:09 +01:00
Vojtech Bubnik
cc44089440
New BuildVolume class was created, which detects build volume type (rectangular,
...
circular, convex, concave) and performs efficient collision detection agains these build
volumes. As of now, collision detection is performed against a convex
hull of a concave build volume for efficency.
GCodeProcessor::Result renamed out of GCodeProcessor to GCodeProcessorResult,
so it could be forward declared.
Plater newly exports BuildVolume, not Bed3D. Bed3D is a rendering class,
while BuildVolume is a purely geometric class.
Reduced usage of global wxGetApp, the Bed3D is passed as a parameter
to View3D/Preview/GLCanvas.
Convex hull code was extracted from Geometry.cpp/hpp to Geometry/ConvexHulll.cpp,hpp.
New test inside_convex_polygon().
New efficent point inside polygon test: Decompose convex hull
to bottom / top parts and use the decomposition to detect point inside
a convex polygon in O(log n). decompose_convex_polygon_top_bottom(),
inside_convex_polygon().
New Circle constructing functions: circle_ransac() and circle_taubin_newton().
New polygon_is_convex() test with unit tests.
2021-11-16 10:15:51 +01:00
Filip Sykala
d3dd025833
Draw text convex hull
2021-11-04 12:41:53 +01:00
Filip Sykala
9749dcb959
extend qec tests
2021-11-03 09:56:06 +01:00
Filip Sykala
f9bdde5603
Remove SimplifyMesh
2021-11-02 14:23:49 +01:00
Vojtech Bubnik
d78a5acba9
Numerical improvements to Welzel minimum enclosing circle algorithm
2021-10-30 11:18:36 +02:00
Vojtech Bubnik
3216448bbc
PlaceholderParser: implemented round(), digits() and zdigits() macros.
...
round() rounds to an integer.
This is a popular request, for example #3472
digits(value, num_digits, num_decimals) rounds to num_digits and
num_decimals, left filled with spaces.
digits(value, num_digits) the same as digits(value, num_digits, 0)
Neither decimal separator nor any decimals after decimal separator
are emitted.
zdigits(...) is the same as digits(...) only left filled with zeros.
If the result does not fit num_digits, the result is never trimmed.
2021-10-29 13:36:26 +02:00
Vojtech Bubnik
cf7b6fb19a
Extracted MedialAxis code from Geometry.cpp/hpp, moved to its own
...
files to Geometry/
Moved other Voronoi files to Geometry/
2021-10-27 16:03:04 +02:00
Vojtech Bubnik
497905406b
New code for minimum enclosing circle by randomized Welzl algorithm.
...
Split the circle code from Geometry.cpp/hpp to Geometry/Circle.cpp,hpp
2021-10-27 15:12:29 +02:00
Filip Sykala
b5a075ce4a
Merge branch 'master' into fs_emboss
2021-10-26 18:58:38 +02:00
Vojtech Bubnik
743b99d22c
Unit tests to the new optimized implementation of
...
Line::parallel_to() a Line::perpendicular_to().
2021-10-25 12:03:44 +02:00
Vojtech Bubnik
be236eda85
Renamed Geometry::intersect() to Geometry::convex_polygons_intersect()
...
to convey its true meaning.
2021-10-23 15:29:18 +02:00
Filip Sykala
ae5f594e1e
Merge branch 'master' into fs_emboss
2021-10-21 19:43:05 +02:00
Filip Sykala
323b12fbee
Change 3mf XML store/load text - NOT back compatible
2021-10-21 15:34:41 +02:00
tamasmeszaros
5f19539df5
Obvious fixes to stupid warnings
2021-10-21 09:55:12 +02:00
Filip Sykala
7f848b0603
fix test
2021-10-21 08:36:38 +02:00
Filip Sykala
b04bd6a8ad
Temporary Skip test
2021-10-20 16:52:11 +02:00
Filip Sykala
6c8f754186
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/slic3r/GUI/3DScene.cpp
2021-10-19 13:40:19 +02:00
Filip Sykala
e8f7f3245f
Refactoring tests
2021-10-19 13:34:26 +02:00
Vojtech Bubnik
7ff76d0768
New ClipperUtils functions: opening(), closing() as an alternative
...
for offset2() with clear meaning.
New ClipperUtils functions: expand(), shrink() as an alternative
for offset() with clear meaning.
All offset values for the new functions are positive.
Various offsetting ClipperUtils (offset, offset2, offset2_ex) working
over Polygons were marked as unsafe, sometimes producing invalid output
if called for more than one polygon. These functions were reworked
to offset polygons one by one. The new functions working over Polygons
shall work the same way as the old safe ones working over ExPolygons,
but working with Polygons shall be computationally more efficient.
Improvements in FDM support generator:
1) For both grid and snug supports: Don't filter out supports for which
the contacts are completely reduced by support / object XY separation.
2) Rounding / merging of supports using the closing radius parameter is
now smoother, it does not produce sharp corners.
3) Snug supports: When calculating support interfaces, expand the projected
support contact areas to produce wider, printable and more stable interfaces.
4) Don't reduce support interfaces for snug supports for steep overhangs,
that would normally not need them. Snug supports often produce very
narrow support interface regions and turning them off makes the support
interfaces disappear.
2021-10-14 09:11:31 +02:00
Filip Sykala
3bd9fc07d2
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/libslic3r/Format/3mf.cpp
# src/slic3r/GUI/Gizmos/GLGizmoSimplify.hpp
2021-10-07 08:28:17 +02:00
tamasmeszaros
4cc1b2740d
Don't report intersection if two polygons are only touching.
2021-10-04 14:16:13 +02:00
tamasmeszaros
9fce0ce3a6
Fix compile issues and overlapping polygon fails
2021-10-01 18:27:37 +02:00
Lukas Matena
476b48ed11
Revert "Merge branch 'tm_convex_intersect_rotcalip'"
...
This reverts commit 627d8bcaef
, reversing
changes made to 66d4462724
.
The change breaks build on mac
2021-09-30 16:49:00 +02:00
tamasmeszaros
234f062ad4
Fast convex polygon intersection test with rotating calipers
2021-09-30 15:49:12 +02:00
Vojtech Bubnik
6c37955d75
Moved a commented out test for DynamicPrintConfig serialization
...
/ deserialization into a living unit test.
2021-09-24 11:32:15 +02:00
Filip Sykala
7a3b220f0a
Clean up
2021-09-22 12:11:05 +02:00
Vojtech Bubnik
8a2a9dba2f
Eradicated admesh from TriangleMesh:
...
TriangleMesh newly only holds indexed_triangle_set and
TriangleMeshStats. TriangleMeshStats contains an excerpt of stl_stats.
TriangleMeshStats are updated when initializing with indexed_triangle_set.
Admesh triangle mesh fixing is newly only used when loading an STL.
AMF / 3MF / OBJ file formats are already indexed triangle sets, thus
they are no more converted to admesh stl_file format, nor fixed
through admesh repair machinery. When importing AMF / 3MF / OBJ files,
volume is calculated and if negative, all faces are flipped. Also
a bounding box and number of open edges is calculated.
Implemented its_number_of_patches(), its_num_open_edges()
Optimized its_split(), its_is_splittable() using a visitor pattern.
Reworked QHull integration into TriangleMesh:
1) Face normals were not right.
2) Indexed triangle set is newly emitted instead of duplicating
vertices for each face.
Fixed cut_mesh(): Orient the triangulated faces correctly.
2021-09-20 17:12:22 +02:00
Filip Sykala
2b0408cc24
Using ExPolygons instead of polygons to represents shape of letters(text)
2021-09-17 23:07:17 +02:00
Vojtech Bubnik
58d8ab3dea
Removed the PRUS format parser. WIP: admesh eradication:
...
stl_stats are newly only accessed by TriangleMesh::stats(),
most of the direct access to TriangleMesh::stl is gone with the exception
of parsing input files (3MF, AMF, obj).
2021-09-14 11:58:14 +02:00
Filip Sykala
7df893177c
Merge branch 'master' into fs_emboss
...
# Conflicts:
# src/slic3r/GUI/Gizmos/GLGizmoSimplify.cpp
2021-09-14 09:50:19 +02:00
Vojtech Bubnik
ec976cbe05
Fixed unit tests after cab71073a1
2021-09-13 15:45:33 +02:00
Lukáš Hejl
e520454c3e
Fixed unit tests after the previous commit.
2021-09-11 00:54:30 +02:00
Filip Sykala
9d52ceee44
Choose font by wxWidgetDialog
2021-09-09 19:36:51 +02:00
Filip Sykala
84488ba6df
Enumerate fonts
2021-09-03 12:22:44 +02:00
Filip Sykala
d45ab1c484
Fix trouble case test
2021-09-02 11:17:07 +02:00
Filip Sykala
25feacfd95
FIX Creation of non volume place in mode during simplification
2021-09-01 19:15:16 +02:00
Filip Sykala
028f04f8a1
Triangulation of polygons respects its area
...
- remove its_filtration
Move Flatness out of Font
2021-09-01 11:21:05 +02:00
Filip Sykala
026ad24b64
Convert text to mesh
2021-08-30 22:57:14 +02:00
Filip Sykala
e33c665876
Partial emboss
2021-08-30 10:51:58 +02:00
Filip Sykala
c04856e049
Extend simplify test to chack distance of each triangle center and each vertices. Both simplify to origin and vice versa
2021-08-16 18:04:38 +02:00
Filip Sykala
b90ca142a5
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-08-16 11:56:56 +02:00
Vojtech Bubnik
965c2f2c55
Improved error reporting when importing various configuration files:
...
1) Slic3r::RuntimeError was replaced with ConfigurationError,
all exceptions thrown by the configuration layer are derived
from ConfigurationError.
2) When parsing configuration files, ConfigurationError is catched and
rethrown extended with the file name being parsed.
2021-08-13 13:37:24 +02:00
Filip Sykala
ef5c94f90a
Fix: prevent degeneration of model during simplification
2021-08-06 15:11:20 +02:00
Filip Sykala
6bcc576b5f
truncate model name
2021-07-21 08:34:43 +02:00
Filip Sykala
25a4887075
QEC: When collapsing edge flip normal than check other edges in triangle
...
Quadric is calculated with double precission of normal
Fix calculation of normal for changed triangles
2021-07-19 15:46:41 +02:00
Filip Sykala
86a3fd00a5
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-19 09:18:55 +02:00
Filip Sykala
af526c54f4
Add simplification GUI
2021-07-19 09:17:50 +02:00
tamasmeszaros
db782b01a5
Fix build on gcc8
2021-07-16 16:40:59 +02:00
Filip Sykala
aca93a7ced
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-09 14:14:54 +02:00
Vojtech Bubnik
3a9857e493
Our friendly GCC does not consider std::pair<int, int> trivially
...
copiable either, while everybody else does. Shame on GCC.
2021-07-09 14:05:30 +02:00
Vojtech Bubnik
d8a0b11157
GCC does not consider std::pair<std::pair<...>, ...> to be trivially
...
copiable, thus fixing the unit tests with a custom trivially
copyable type.
2021-07-09 13:58:54 +02:00
Filip Sykala
b2238834fb
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-09 13:40:58 +02:00
Vojtech Bubnik
e4fd6a828f
1) Fixed a significant bug in MutablePriorityQueue when setting
...
the indices allowing rescheduling of values in the middle of the queue.
2) Implemented a cache friendly variant - MutableSkipHeapPriorityQueue
based on
https://playfulprogramming.blogspot.com/2015/08/cache-optimizing-priority-queue.html
https://github.com/rollbear/prio_queue/blob/master/prio_queue.hpp
2021-07-09 12:53:29 +02:00
Filip Sykala
2c0b89e4a7
FIX Simplify test
2021-07-09 10:31:05 +02:00
Filip Sykala
c53c958cdd
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-09 09:10:05 +02:00
Filip Sykala
e26bffadd8
Add throw_on_cancel and statusfn into QEC
2021-07-09 09:09:52 +02:00
Vojtech Bubnik
60768d3248
Updated the Catch2 framework from v2.13.3 to v2.13.6.
...
Fixes Fix build error with non-const MINSIGSTKSZ. #6518
2021-07-08 16:55:59 +02:00
Filip Sykala
35a906139e
Extend test with checking simplified model distance to original model
2021-07-08 08:33:06 +02:00
Filip Sykala
ed9152d004
Merge branch 'master' into fs_QuadricEdgeCollapse
2021-07-07 16:52:10 +02:00
Vojtech Bubnik
0f3cabb5d9
Support for forward compatibility of configurations, user and system
...
config bundles, project files (3MFs, AMFs). When loading these files,
the caller may decide whether to substitute some of the configuration
values the current PrusaSlicer version does not understand with
some reasonable default value, and whether to report it. If substitution
is disabled, an exception is being thrown as before this commit.
If substitution is enabled, list of substitutions is returned by the
API to be presented to the user. This allows us to introduce for example
new firmware flavor key in PrusaSlicer 2.4 while letting PrusaSlicer
2.3.2 to fall back to some default and to report it to the user.
When slicing from command line, substutions are performed by default
and reported into the console, however substitutions may be either
disabled or made silent with the new "config-compatibility" command
line option.
Substitute enums and bools only. Allow booleans to be parsed as
true: "1", "enabled", "on" case insensitive
false: "0", "disabled", "off" case insensitive
This will allow us in the future for example to switch the draft_shield
boolean to an enum with the following values: "disabled" / "enabled" / "limited".
Added "enum_bitmask.hpp" - support for type safe sets of options.
See for example PresetBundle::load_configbundle(...
LoadConfigBundleAttributes flags) for an example of intended usage.
WIP: GUI for reporting the list of config substitutions needs to be
implemented by @YuSanka.
2021-06-27 16:57:05 +02:00
Filip Sykala
7c13cfa1d9
Add test checking diference in volume before/after simplification
...
FIX warnings
..\src\libslic3r\QuadricEdgeCollapse.cpp(173): warning C4056: overflow in floating-point constant arithmetic
..\src\libslic3r\QuadricEdgeCollapse.cpp(232): warning C4056: overflow in floating-point constant arithmetic
2021-06-22 09:41:38 +02:00
Filip Sykala
e3cdeda673
Add quadric edge collapse
2021-06-22 09:21:16 +02:00
tamasmeszaros
c4507842a0
Add new (winner) neighbor index based on measurements
2021-06-08 10:34:32 +02:00
tamasmeszaros
c8be2cdceb
Added measuring sandbox for neighbors index creation
2021-06-08 10:34:32 +02:00
tamasmeszaros
c542e6e14b
Corrected mesh split implementation
2021-06-08 10:28:23 +02:00
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