Commit Graph

4768 Commits

Author SHA1 Message Date
tamasmeszaros
9da14ba321 Remove redundant header from Astar 2022-10-26 16:28:40 +02:00
Vojtech Bubnik
2ced762948 Integrating a C++20 like span library
https://github.com/tcbrindle/span

Replacing a homebrew const pointer wrapper const correctness helper
with the C++20 like span library.

One day when we switch to C++20 we will just use the C++20 spans instead.
2022-10-19 16:27:15 +02:00
Vojtech Bubnik
acbc60f3e3 Better const correctness 2022-10-19 16:27:15 +02:00
Vojtech Bubnik
24f671e924 Little clean-up of ConstVectorOfPtrsAdaptor to be more vector like. 2022-10-19 16:27:15 +02:00
enricoturri1966
71660a281b Tech ENABLE_WIPETOWER_OBJECTID_1000_REMOVAL set as default 2022-10-19 08:52:35 +02:00
Vojtech Bubnik
b6e1a7ed52 WIP TreeSupports highly experimental: Add 2nd perimeter
to thick tree supports for stability.
2022-10-13 14:43:03 +02:00
Vojtech Bubnik
842283cd3b WIP TreeSupports - organic supports: Partial fix for bottoms
of supports over object locked against laplacian smoothing
2022-10-13 14:42:25 +02:00
Vojtech Bubnik
2365b3a8dd WIP TreeSupports: Now it is possible to switch between the normal
and the "organic" supports.
2022-10-12 14:33:36 +02:00
Vojtech Bubnik
009fe1cab4 New method ConfigOptionDef::set_enum_values() to initialize enum
names / values for UI combo boxes using an initializer list of pairs
of values.
2022-10-12 14:12:07 +02:00
Vojtech Bubnik
418734f41b WIP Tree supports with circular crossections: Clipping the remaining
collisions with the object.
2022-10-10 16:58:43 +02:00
Vojtech Bubnik
5cb4b63325 WIP TreeSupports: Experimental code draw_branches() to produce
trees with circular cross section
2022-10-10 14:19:06 +02:00
Vojtech Bubnik
5cba1e8319 Improved Point.hpp to_2d() and to_3d() templates to accept Eigen expressions 2022-10-10 14:15:26 +02:00
Vojtech Bubnik
493ada15a5 WIP TreeSupports: fix of calculatePlaceables() by Thomas Rahm 2022-10-10 14:15:26 +02:00
Pavel Mikus
c86deb92db improve function name to reflect that it does unscaling (to_unscaled_linesf) 2022-10-06 12:19:33 +02:00
Pavel Mikus
e02aed31d2 Added new query to AABBTree: all primitives (triangles/lines) within radius 2022-10-05 14:51:32 +02:00
Pavel Mikus
b49a2425ca Improve Lines Distancer quality, use it also in SeamPlacer 2022-10-05 14:51:32 +02:00
PavelMikus
20bd7f9a26 improvements in islands recognition; LinesDistancer class for both Point based and Floating based lines 2022-10-05 14:51:32 +02:00
tamasmeszaros
835c08beeb Remove accidental leftover commented source file 2022-10-05 10:12:28 +02:00
Vojtech Bubnik
3350292ff2 WIP TreeSupports
1) Nodes allocated using std::deque, not as std::set of pointers for
   less memory allocator pressure.
2) Parents changed to parent indices, so that one may allocate side
   by side data for nodes addressed by these indices. Thus now elemens
   are being marked as deleted and the whole node database is being
   compacted in one shot instead of deleting an element from std::set.
3) Removed SUPPORT_TREE_ONLY_GRACIOUS_TO_MODEL for simplicity, it was
   never used.
4) Fixed crash when slicing multiple objects with three supports.
2022-09-29 17:10:53 +02:00
enricoturri1966
3513b800a0 Tech ENABLE_PREVIEW_LAYOUT set as default 2022-09-29 14:23:41 +02:00
enricoturri1966
524e55edd9 Tech ENABLE_LEGEND_TOOLBAR_ICONS set as default 2022-09-29 12:19:20 +02:00
Vojtech Bubnik
d7d849a02c Fix of #8932 Hang while slicing interlocking chainmail model
Reworked the Archimedean Chords, Hilbert and Octagram Spiral infill
generators to
1) Generate solid infill as not aligned with other solid infill layers.
   This may surprise some users as the pattern over multiple islands
   will be different, maybe not that nice. This may change in the future.
2) Sparse infill is always aligned and generated over the whole object,
   however newly the generated lines are trimmed with a snug bounding box
   while being generated.
3) For Archimedean chords the accuracy was not applied correctly, leading
   to higher accuracy for dense infill and lower accuracy for sparse infill.
2022-09-29 12:12:20 +02:00
enricoturri1966
32b2c90538 Tech ENABLE_TRAVEL_TIME set as default 2022-09-29 11:07:20 +02:00
Vojtech Bubnik
9bc69efde6 Configuration of TBB work pool threads executed from the background
slicing process:
1) "C" locales are always enforced.
2) OSX Quality of Service level is set to make sure the slicing
  runs on fat cores on Apple Silicon if some fat cores are available.
2022-09-27 18:12:27 +02:00
enricoturri1966
174df56ec2 Tech ENABLE_PREVIEW_LAYER_TIME set as default 2022-09-27 12:39:24 +02:00
enricoturri1966
e834b75e54 Tech ENABLE_VOLUMETRIC_RATE_TOOLPATHS_RECALC set as default 2022-09-27 10:22:39 +02:00
Vojtech Bubnik
2b3d4b2868 WIP TreeSupports:
1) Reworked the merging code to use an AABB tree for better locality.
   The old code sorted lexicographically, the new code splits bounding
   boxes by the longest axis.
2) Refactored to a functional style with better const correctness.
3) Reduced memory allocation pressure by replacing std::set with
   vectors, in place merging etc.
2022-09-26 11:20:20 +02:00
Vojtech Bubnik
87dcba3e30 WIP TreeSupports: turned SupportElement::area from pointer to value. 2022-09-26 11:20:20 +02:00
enricoturri1966
f19882749f #8941 - GCodeViewer - Extended processing of line G10 for RepRap firmware (set tool temperature) 2022-09-26 09:38:08 +02:00
YuSanka
7a1c118924 Split object : Check if new objects don't have a zero volume
Related to :
 * #8931 - Split to objects crashes Prusa Slicer
 * SPE-1221(https://dev.prusa3d.com/browse/SPE-1221) - Split to objects fail
2022-09-23 16:37:33 +02:00
Lukas Matena
70be93d112 Fixed issue with Euler angles:
the function to extract Euler angles did not work reliably in some of the corner cases.
The bug was not present in 2.5.0 release.
2022-09-23 13:23:40 +02:00
PavelMikus
bb993b8f94 Greatly reduce curling of Rear seams, revert previous ineffective change
SPE-1310
2022-09-23 11:40:19 +02:00
tamasmeszaros
9ef826cb5f Fix potential crashes in SLA normal calculation routine 2022-09-20 12:47:53 +02:00
tamasmeszaros
a3aeddfd13 Merge branch 'tm_arrange_bounds_SPE-1247' 2022-09-20 10:59:49 +02:00
YuSanka
84f651f85d DiffDialog: Save preset
* Fixed a crash after save the preset with existing name
* Added update of the PresetComboBoxes on SettingsTabs and Sidebar
* Some code refactoring
2022-09-16 17:25:00 +02:00
YuSanka
1bd0c83121 Follow-up 97ab4cae4f : typo fix 2022-09-16 15:03:27 +02:00
YuSanka
30831af8a5 DiffDialog: Implemented a transfer of the selected options from left preset to the right and save them to the new preset
* Related to #6130 - Feature Request: Profile settings, Save AND Transfer
+ SavePresetDialog: Refactoring
2022-09-15 16:48:14 +02:00
PavelMikus
63222eb529 Reduce curling of Rear seams, improve its quality
Relevant issue: 8841 Rear Seam Not Aligned, Not Rear of Model
2022-09-15 15:25:27 +02:00
PavelMikus
2781f716f4 Fixed short edge collapse algortihm, so that it does not decimate all triangles on very high detailed models
Relevant issue 8834 Access Error when slicing
2022-09-15 15:25:15 +02:00
YuSanka
82716cd78c Follow-up 3b1f1d9444 fixes:
Tab: Fixed rename_preset().
 * Presets weren't sorted after preset renaming.
 * New selected preset wasn't updated on the Plater.
Preset: Fixed delete_preset().
 * Selected preset wasn't updated after preset deletion.
2022-09-14 15:09:52 +02:00
enricoturri1966
ec2e783615 Fixed GCodeViewer to take care of parking volume when calculating used filament (similar as in PrusaSlicer) 2022-09-14 10:02:39 +02:00
enricoturri1966
430408f535 Fixed typo 2022-09-14 09:16:21 +02:00
enricoturri1966
60cad081e6 Rework of 850b590c31 - The previous fix resulted in wrong colors for toolpaths in Tool view mode 2022-09-14 09:13:22 +02: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
PavelMikus
670629d883 Fix compilation - missing include for boost string conv,
set supports flags for object AFTER the dialog window and snapshot
2022-09-09 15:34:48 +02:00
PavelMikus
e82856f4dd Merge branch 'master' into pm_support_spots_generator 2022-09-09 11:11:50 +02:00
enricoturri1966
997d0a48a8 Improved time estimation for gcode files produced by KISSSlicer 2022-09-08 13:45:18 +02:00
YuSanka
8cc1a58f61 Preset: New flag "respect_active_preset" is added to preset(name).
Return values, when preset i sactive:
 - edited_preset,   when respect_active_preset==true
 - selected_preset, when respect_active_preset==false

+ UnsavedChangedDialog: Implementation for FR #7393 - "Switching Presets: Unsaved Changes" table

+ DiffDialog: Implemented possibility to compare selected and edited presets
2022-09-08 12:32:23 +02:00
PavelMikus
9e2a555f1b fix supporting of start and end of extrusion line 2022-09-07 18:00:04 +02:00
PavelMikus
3202756d22 Merge branch 'master' into pm_support_spots_generator 2022-09-07 17:18:02 +02:00