61 Commits

Author SHA1 Message Date
ps_copyright
f32859c302 final copyright headers 2023-09-01 14:49:07 +02:00
tamasmeszaros
0b31ef6e1e Beginning of arrange gen2 2023-08-16 09:59:10 +02:00
tamasmeszaros
5154a7f8b3 Fix arrange on virtual beds
Also fixes repeated bed filling issue
2023-06-05 15:04:27 +02:00
Lukas Matena
cc71436aef Fixed several warnings 2023-06-01 16:10:33 +02:00
tamasmeszaros
6b1c9119be Add code to extract sla supports outline for arrangement
Add functionality to libnest to support on_packed handler for all items.

Use it to swap arrange polygon from envelope to core poly after packing was succesful.
Solving brim issue by offset adjustments of arrange polygons

Only in sla yet
2023-03-23 10:01:46 +01:00
tamasmeszaros
0f5ecb6b74 Fix XL arrangement disrespecting minimum bed distance 2023-03-06 13:45:58 +01:00
tamasmeszaros
406da2abd9 Fix crash 2023-03-03 14:36:05 +01:00
tamasmeszaros
2012c945d5 Arrange onto segmented beds for XL 2023-03-02 14:28:39 +01:00
tamasmeszaros
068134d58b Don't show arrange alignment combo if not on a rectangular bed 2023-02-27 16:06:38 +01:00
tamasmeszaros
0a5a401d32 Add alignment option to arrange settings dialog
Also make it work
2023-02-27 16:06:38 +01:00
tamasmeszaros
221770cc94 Remove convexHull calculation for circular beds when arranging
Extremely slow
2023-01-06 12:00:58 +01:00
tamasmeszaros
6197acf576 Don't arrange items if the bed has negative area
Also interpret a bounding box with maxCorner lower then minCorner as a negative area box
2022-09-13 16:51:20 +02:00
tamasmeszaros
e58a15bdf8 Prepare arrange for variable bed distance 2022-07-07 15:51:41 +02:00
tamasmeszaros
2fd5a415c5 Fix arrange when some geometries are ill formed.
SPE-1216
The removed fix for issue 2209 is not needed anymore as the backend (arrange + libnest) takes care of such objects
- Offset is now done with libslic3r offset() wrapper (no expception thrown)
- Zero area objects are discarded in libnest
2022-04-19 11:45:17 +02:00
Lukas Matena
96a6c8538f Some refactoring and fixes based on static source code analysis 2022-03-31 16:33:52 +02:00
tamasmeszaros
49c6ce76d0 Search for suitable rotation when arranging items larger than the bed 2021-06-22 11:23:32 +02:00
Lukas Matena
fef385cd6b Fixed second batch of locale-dependent calls 2021-05-24 12:20:29 +02:00
Vojtech Bubnik
8d0950ce12 Convincing ClipperLib to use Slic3r's own Point type internally. 2021-04-21 20:15:49 +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
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
91b1d469eb Fix arrange with malformed contours 2020-12-03 14:58:09 +01:00
tamasmeszaros
844ea89432 Fix out of bed items after arrange.
Disabled outline decimation for arrange and added very small (EPSILON) safety offset to bed detection boundaries.
2020-12-03 12:00:12 +01:00
tamasmeszaros
869ae0247e Use smarter object function in partial arrangement with empty bed. 2020-12-02 17:53:22 +01:00
tamasmeszaros
dfbf4cbab2 Fix bed filling with more existing instances than needed 2020-11-26 15:11:54 +01:00
tamasmeszaros
30693e29e4 Stop bed filling if enough instances are generated 2020-11-24 14:41:36 +01:00
tamasmeszaros
adf81af6de Prototype feature: fill plater with instances of selected object
#fixes #1350
2020-11-20 09:58:52 +01:00
tamasmeszaros
e17e6b4d0e Add minimum bounding box rotation as starting point 2020-11-20 09:57:52 +01:00
tamasmeszaros
d5bdaceff2 Right mouse reaction to arrange button
Working arrange settings popup
2020-11-20 09:57:52 +01:00
tamasmeszaros
096d0c9860 Fix arrange objectfunction to avoid last object in awkward positions.
fixes #3900
2020-11-20 09:46:15 +01:00
tamasmeszaros
4be0e37963 Workaround for items out of bed after arrange.
Fixes #4329
2020-06-01 16:16:30 +02:00
Lukas Matena
02838eaa30 Slight include cleanup 2020-05-26 13:45:36 +02:00
Vojtech Bubnik
4c365ad583 Replaced many defines in libslic3r.h with constexpr,
removed some macros to support old visual studio compiler.
2020-05-22 09:29:21 +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
5ed7d0aa29 Fix arrangement with items larger or equal to bed dimesions.
fixes #2897 
fixes #1186
2020-03-16 14:37:54 +01:00
tamasmeszaros
59c128d9fd Fix broken partial arrange 2019-11-01 15:13:05 +01:00
tamasmeszaros
72ac8d68f0 Extend libnest tests, remove some warnings, faster catch2 compilation.
Also, improve libnest2d::nest interface.
2019-10-07 17:16:40 +02:00
tamasmeszaros
a6f5fe7bea Fix arrange crash with incorrect geometries. Guard the case with tests. 2019-09-23 11:59:44 +02:00
tamasmeszaros
1c20c4c43d Fix arrangement of objects larger than the print bed. Issue #2897 2019-09-10 13:31:29 +02:00
tamasmeszaros
1b00932a01 Small refactor for BedShapeHint 2019-08-21 15:39:20 +02:00
tamasmeszaros
67a6775773 Making arrange a little bit smarter: fix for issue #2787 2019-08-21 14:07:56 +02:00
bubnikv
e30a17beb3 Fixed memory issues of BedShapeHintwhen using unions of non-trivial objects 2019-08-19 17:01:39 +02:00
tamasmeszaros
65368db49b Merge branch 'master' into tm_clang_mingw 2019-08-16 16:37:02 +02:00
tamasmeszaros
7e0199746e more clang warnings enabled, performance measuring
Succesfull build on mingw-w64


fix sandboxes


Mingw fixes and full parallel support tree gen.
2019-08-16 16:17:37 +02:00
tamasmeszaros
8fce511806 Fix for issue #2765, arrange crash with custom beds 2019-08-15 16:15:17 +02:00
tamasmeszaros
7d25d8c677 Can build with (original llvm) clang-cl on windows 2019-08-01 16:03:52 +02:00
tamasmeszaros
764efb1385 Remove disabled code. 2019-07-22 11:18:10 +02:00
tamasmeszaros
63fada9469 Arrange selection if shift is pressed. Remove first item centering 2019-07-19 18:10:10 +02:00
tamasmeszaros
72ed8c034e Fix for incorrect inside check of fixed items.
libnest2d: Add dispatched overloads for offsetting different shapes.
2019-07-19 12:34:27 +02:00
tamasmeszaros
6ae50a710a Further refactoring 2019-07-18 17:31:27 +02:00
tamasmeszaros
aff1863aed Really fix build for msvc 2019-07-17 16:47:09 +02:00