Commit graph

38 commits

Author SHA1 Message Date
tamasmeszaros
d99d22a901 Make partial arrange callable using a flag 2023-05-23 16:43:26 +02:00
Vojtech Bubnik
c9a55c2c01 Merge remote-tracking branch 'remotes/origin/vb_scalable_alloc' 2023-04-21 16:28:39 +02:00
Vojtech Bubnik
b67ad6434d Follow-up to 9cde96993e
use tbb::scallable_allocator for Polygons and ExPolygon::holes
to better scale on multiple threads
2023-04-20 14:30:52 +02:00
tamasmeszaros
1ec13fef08 Fix crash when arranging objects not fitting into the bed
fixes 
fixes 
SPE-1637
2023-04-17 11:04:31 +02:00
tamasmeszaros
e1861d220c Revert "Try to handle fff supports in arrange after slicing"
This reverts commit 92e0c13513.
2023-03-31 12:24:14 +02:00
tamasmeszaros
92e0c13513 Try to handle fff supports in arrange after slicing
Not really precise yet
2023-03-23 10:24:56 +01:00
tamasmeszaros
333d0727ef Handling brim offset in SLA without the need to slice the object 2023-03-23 10:24:56 +01:00
tamasmeszaros
3c5ecd4a8f FFF arrange minding skirt and brim distances
many thanks to @individ-divided and @jschuh
2023-03-23 10:24:56 +01: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
2012c945d5 Arrange onto segmented beds for XL 2023-03-02 14:28:39 +01:00
tamasmeszaros
aab6299458 Show and arrange alignment only for XL (MINI currentl 2023-02-27 18:10:14 +01:00
tamasmeszaros
2a69dda9da Fix compilation on Linux 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
David Kocik
9dce38b9a7 missing include 2023-01-16 15:22:22 +01:00
tamasmeszaros
f7c832ddaf Fix crash when pressing 'A' without any objects on plater 2022-12-01 12:38:34 +01:00
tamasmeszaros
5ecacdc66c Merge branch 'tm_arrange_jump_SPE-1297' 2022-09-20 11:15:55 +02:00
tamasmeszaros
c1fd265d18 Fix jumping hidden items larger than the bed after hitting arrange 2022-09-14 13:43:57 +02:00
tamasmeszaros
3e53abf9bd Remove junk code 2022-09-13 16:50:18 +02:00
tamasmeszaros
4d9530deb7 Prevent potential data races in arrange job 2022-09-13 15:07:40 +02:00
tamasmeszaros
e58a15bdf8 Prepare arrange for variable bed distance 2022-07-07 15:51:41 +02:00
tamasmeszaros
17f4b1bea3 Avoid issue with invisible status indication. 2022-01-11 11:26:26 +01:00
tamasmeszaros
b53ff75cf4 Rework UI jobs to make them more understandable and flexible. 2022-01-11 11:26:18 +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
tamasmeszaros
c30ac4b66f Add notification if some objects are ignored after arrange 2021-07-08 13:35:40 +02:00
tamasmeszaros
649dfca8d6 Allow rotation of multiple selected items. Disable auto positioning 2021-04-07 12:51:02 +02: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
enricoturri1966
ba9025491b Refresh object manipulator fields in sidebar after arrange 2021-01-28 12:44:38 +01:00
tamasmeszaros
56e7d83513 Implement exception rethrow for ui jobs 2021-01-19 15:01:20 +01:00
tamasmeszaros
598ac290a1 Fix for bad wipe tower handling in arrangement
fixes 
2020-12-07 18:00:10 +01:00
tamasmeszaros
4f7f08d0de Further improvement on arrange settings handling 2020-12-02 14:04:39 +01:00
tamasmeszaros
8027f6608a Fix arrange distance with enabled sequential printing
fixes 
2020-12-01 14:08:07 +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
f1acde8024 Fix broken wipe tower arrangement
fixes 
fixes 
2020-11-23 16:05:24 +01:00
tamasmeszaros
adf81af6de Prototype feature: fill plater with instances of selected object
#fixes 
2020-11-20 09:58:52 +01:00
tamasmeszaros
d5bdaceff2 Right mouse reaction to arrange button
Working arrange settings popup
2020-11-20 09:57:52 +01:00
Lukas Matena
94b0ab603f Include cleanup: Selection.hpp
It does not need 3DScene.hpp and Model.hpp
And it does not to be included by GLGizmoBase.hpp
2020-05-26 13:46:59 +02:00
tamasmeszaros
6eb51a1cca Move ui jobs into separate folder 2020-04-23 18:56:09 +02:00
Renamed from src/slic3r/GUI/ArrangeJob.cpp (Browse further)