Commit Graph

18826 Commits

Author SHA1 Message Date
enricoturri1966
36c317c0e5 Follow-up of dcbc5e1251 - Button label changed from Cancel to Ok 2022-04-28 10:43:21 +02:00
enricoturri1966
dcbc5e1251 Fixed typo into Plater::load_gcode leading to a message dialog without buttons 2022-04-28 09:55:05 +02:00
enricoturri1966
6c31b8d7a8 SPE-1223 - Removed from legend the option to show shells in GCode Viewer 2022-04-28 09:39:58 +02:00
Lukas Matena
56466abe99 Fixed conflicts after stable->master merge 2022-04-27 23:45:16 +02:00
Lukas Matena
09fe421fe8 Merge branch 'stable' (no conflicts fixed) 2022-04-27 22:24:13 +02:00
tamasmeszaros
2377349e7f Merge branch 'tm_read_svg_archive' 2022-04-26 16:55:59 +02:00
tamasmeszaros
9d5f8a02c6 Remove junk message 2022-04-26 16:19:32 +02:00
tamasmeszaros
7cf893fe81 Fix memory corruption in svg parsing 2022-04-26 15:26:29 +02:00
tamasmeszaros
be78bdf5ff Fix the issue with point skipping in svg export 2022-04-26 15:08:06 +02:00
tamasmeszaros
dea3c2cea3 Merge branch 'tm_hollowing_optimization_2' 2022-04-26 14:51:39 +02:00
tamasmeszaros
610e971373 Fix Fix triangle removal issues when using full narrow band of interior 2022-04-26 14:50:50 +02:00
tamasmeszaros
39a47e91f7 Fix failing test for hollowing 2022-04-26 14:50:50 +02:00
tamasmeszaros
23db6f3071 Additional performance tuning
by decreasing accuracy
2022-04-26 14:50:50 +02:00
tamasmeszaros
d1b161b281 Hollowing voxel_scale now considers input model volume 2022-04-26 14:50:50 +02:00
tamasmeszaros
e405b0ef4a Cleanup 2022-04-26 14:50:50 +02:00
tamasmeszaros
b5bf529551 Solve missing faces of the interior in connection with the holes 2022-04-26 14:50:50 +02:00
tamasmeszaros
1a6a2a0b9a 2.5x speedup of hollowing.
Triangle removal is slightly broken
2022-04-26 14:50:50 +02:00
tamasmeszaros
9e5ba20f8f Use default bandwidth before csgUnion when hollowing
Add cca  6.5% speedup (on 12 core amd)
2022-04-26 14:50: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
24c9ce6e14 Fix the issue with point skipping in svg export 2022-04-26 13:26:13 +02:00
tamasmeszaros
73837c2f82 Add more comments 2022-04-26 11:30:55 +02:00
tamasmeszaros
784105f5ad Extend sla archive tests with read-back 2022-04-26 10:57:49 +02:00
tamasmeszaros
0025a65611 Add comment 2022-04-26 09:44:00 +02:00
tamasmeszaros
32a923da93 Archive reader types are now registered in one place 2022-04-26 09:38:03 +02:00
tamasmeszaros
885e6964ba Working svg import
Strange bug in export, see line 111
2022-04-26 09:38:03 +02:00
tamasmeszaros
4ef860811f Wip on svg archive import 2022-04-26 09:38:03 +02:00
tamasmeszaros
e0fc337b2d Get rid of window size parameter from import interface
Make 'Balanced' the default import quality
2022-04-26 09:38:03 +02:00
tamasmeszaros
5ecf29f303 Separate existing sla archive import code 2022-04-26 09:38:03 +02:00
Pavel Mikuš
1b1f523e3b
Merge pull request #8242 from prusa3d/pm_occlusion_guided_seams
Implementation of occlusion guided seam placement - balance between visibility and angle sharpness.
Improvements in seam drawing and alignment, via cubic splines.
Spline/Polynomial fitting functions.
Refactoring of Point structure - angle functions.
Triangular mesh subdivision function.
Various small additions/refactoring.
! Macro which replaces std::deque with boost version on Windows builds.
2022-04-25 17:53:30 +02:00
PavelMikus
7cccb736de Reverted perl perimeter test bypass 2022-04-25 17:34:22 +02:00
PavelMikus
77b5885f7d fix build problems 2022-04-25 12:42:51 +02:00
PavelMikus
b5a5926bbe Implemented alignment of inner seams, especially in concave angles where the perpendicular
projection is suboptimal.
2022-04-25 12:42:51 +02:00
PavelMikus
e377e58cd2 Updated weights for curve fitting, ensured snapping to sharp corners
Fixed debug exports after refactorings.
2022-04-25 12:42:51 +02:00
Godrak
43d9166382 nomralize weights of points before curve fitting and fitted value interpolation 2022-04-25 12:42:51 +02:00
PavelMikus
68cf4db58e interpolate fitted and original position during b spline alignment -
push points with large weight more towards their original position
2022-04-25 12:42:51 +02:00
PavelMikus
137fa35238 Postpone seam picking for spNearest configuration to the place_seam method. 2022-04-25 12:42:51 +02:00
PavelMikus
83f3ca27dc reworked and improved the find_next_seam_in_layer method:
Now uses find nearby_points with radius to save some computations
if all points are far.
From the nearby points, it finds the nearest and best point, and tries
to use them in this order (preivously only nearest was considered).
This helps to snap the alignment to nearby sharp corners if present.
2022-04-25 12:42:51 +02:00
PavelMikus
04d4a0d4f7 when searching for central enforcer (for alignment purposes), find properly the first
enforced segment. Fixed issue where if the enforced segment was painted over the start/end of the
perimeter, part of the enforced points was not considered.
2022-04-25 12:42:51 +02:00
Vojtech Bubnik
2dfabb7e69 Fixing missing include. 2022-04-25 12:42:51 +02:00
Vojtech Bubnik
399b7f79e8 Little more refactoring of SeamPlacer. 2022-04-25 12:42:51 +02:00
Vojtech Bubnik
8c2e6aba79 On MSVC, std::deque degenerates to a list of pointers, which defeats
its purpose of reducing allocator load and memory fragmentation.
https://github.com/microsoft/STL/issues/147#issuecomment-1090148740
Slic3r::deque<> compiles to boost::container::deque<> on Windows,
to std::deque<> on other systems.
SeamPlacer newly uses Slic3r::deque<>.
2022-04-25 12:42:51 +02:00
Vojtech Bubnik
adb467286f Documented the seam placement corner penalty with an image. 2022-04-25 12:42:51 +02:00
Vojtech Bubnik
853b8adf80 Little refactoring of SeamPlacer.
Moved color mapping functions to Color.hpp
Removed the "extern" keyword from Color.hpp
2022-04-25 12:42:51 +02:00
Vojtech Bubnik
f5709345ad GCode export: Replaced std::strings in G-code comments with string_views.
Seam placer: Detecting perimeter by the pointer and size of the
comment_perimeter string_view, only placing seams for perimeters.
2022-04-25 12:42:51 +02:00
PavelMikus
fb2621c03c Negative volumes raycasting fix - normal was flipped between iterations, incorrect algorithm for hit detection
Debug files export fix after refactoring
2022-04-25 12:42:51 +02:00
Vojtech Bubnik
8ce36e9137 Refactoring of SeamPlacer:
Replaced shared_ptr<> with deque.
Merged multiple vectors into one.
Refactoring using common helper functions (prev/next_idx_modulo(),
angle(), ...)
AABBTreeIndirect::intersect_ray_all_hits(): Reuse memory of the hits cache.
2022-04-25 12:42:51 +02:00
PavelMikus
3b8cfc62da fixed drawing seams on multipart objects
removed oversampling for blockers
improved drawing seams over sharp features
2022-04-25 12:42:51 +02:00
PavelMikus
47fc39a4ba fixed misleanding or wrong comments of the fitting function 2022-04-25 12:42:51 +02:00
PavelMikus
ae89d65e3e added description for the parameter count increase 2022-04-25 12:42:51 +02:00
PavelMikus
396d3215bd Refactoring of curve fitting algorithm:
removal of artificial extension at the ends of the curve
removal of observation points normalization
added clamping of parameter index which compensates for under-represented spline segments
added parameter for level of freedom at the ends of the curve
2022-04-25 12:42:51 +02:00