Commit Graph

3275 Commits

Author SHA1 Message Date
2b5d1fcaf7 TriangleSelector optimizations:
1) When splitting a triangle, vertices are now properly shared with
   the neighbor triangles, if these are already split.
   Please note that the splitting may not be regular if the splitting
   thershold is changed between splitting calls. Still the new code
   shares the vertices accross shared edges properly.
2) Triangles resp. vertices are newly reused after deleted using
   linked lists of released triangles resp. vertices.
   This mechanism replaces the old mechanism of reusing already split
   triangles.
2021-06-15 14:43:46 +02:00
3cb502c954 GCode Viewer -> Fixed used filament for gcode files produced by other slicers 2021-06-15 09:39:33 +02:00
7fdc32f0ac Workaround of boost::filesystem::copy_file() incompatibility
on some file systems (eCrypt ...)
Should fix #4716 #6588
2021-06-14 12:19:13 +02:00
99c37e5c41 Fixed build on MacOS.
Based on information in https://stackoverflow.com/a/46115028, structured bindings in C++17 don't name variables, and because of that, it is impossible to capture these variables in lambda functions.
2021-06-13 16:22:44 +02:00
55c82efb5b Fixing previous TriangleSelector refactoring. 2021-06-11 17:59:33 +02:00
a2e30a0e53 Fixed regression bug after PrintRegions refactoring:
Fixed crash if an object is outside the print bed, its modifier inside
the print bed and the modifier gets deleted.
2021-06-11 17:29:16 +02:00
611ea4383d TriangleSelector - some memory optimization.
Don't store traingle normal, but reference the source triangle,
which stores its normal.
2021-06-11 12:27:58 +02:00
a47250ad9b TriangleSelector refactoring for readability and a bit of performance,
added some comments, improved encapsulation through private attributes,
removed recursive call through std::function etc.
2021-06-11 11:02:47 +02:00
7130cfb1e3 Added missing assignment into ModelObject::assign_copy() 2021-06-10 13:32:53 +02:00
a9430f2f3f TriangleSelector::get_facets() refactoring to share vertices.
TriangleSelector::valid refactored to m_valid and valid()
and bool members moved next to each other to shrink data structure
size due to memory alignment.
2021-06-10 12:43:31 +02:00
e4f36339e8 Support / seam / MMU painting serialization / deserialization:
Changed the serialization structure
	std::map<int, std::vector<bool>>
to a significantly more compact
	std::pair<std::vector<std::pair<int, int>>, std::vector<bool>>
Such change shall significantly improve efficiency of Undo / Redo stack.
2021-06-10 09:26:30 +02:00
c05d3c45c0 try to fix build on windows 2021-06-08 11:53:38 +02:00
dfe53f83ae Fix the build 2021-06-08 11:02:29 +02:00
17ed82b673 Make new split always default if feasible 2021-06-08 10:34:32 +02:00
41c7ff4692 Add parallel version of neighbors index creation, make it default 2021-06-08 10:34:32 +02:00
5aac71c9a3 Improve its_split for large number of parts 2021-06-08 10:34:32 +02:00
04331beb33 Add new (winner) neighbor index based on measurements 2021-06-08 10:34:32 +02:00
c89ef2ee6b Add triangle mesh split to perf comparison 2021-06-08 10:34:32 +02:00
2227d0f1ad Added measuring sandbox for neighbors index creation 2021-06-08 10:34:32 +02:00
1ee724e7ed Corrected mesh split implementation 2021-06-08 10:28:23 +02:00
0ecba516a3 Get rid of Contour3D 2021-06-08 10:28:23 +02:00
c451fc94ba Refactored hollowing backend to use indexed_triangle_mesh 2021-06-08 10:28:23 +02:00
5d85a57ae6 wip on hollowing refactor 2021-06-08 10:27:35 +02:00
997c446a05 SLA backend refactored, except Hollowing 2021-06-08 10:27:35 +02:00
cf1731feea Tech ENABLE_ALLOW_NEGATIVE_Z -> Added threshold to detect if an object is sinking 2021-06-08 10:07:47 +02:00
55658979b7 Fixed two more locales-related issues
One warning was also fixed
2021-06-07 12:31:41 +02:00
03c6bdfe9a Fixed a memory leak during locales switching on macOS and
removed frequent locales switching during gcode processing
2021-06-05 07:09:23 +02:00
473644a94c Small MMU segmentation optimization 2021-06-04 08:46:02 +02:00
521ef4e17f Merge remote-tracking branch 'remotes/origin/master' into vb_print_regions 2021-06-02 18:25:11 +02:00
392bf4f2d0 Follow-up 7eebd56b5f - fixed a typo
+ added add_negative.svg for dark mode
2021-06-02 14:36:49 +02:00
611b91bc1f Fixed DnD for "Model part" volumes inside the object
Fixed volumes order inside the object
2021-06-02 12:54:56 +02:00
ee70eb4199 Fixed an issue when the option "Inner brim only" doesn't generate brim inside the object in some cases, and issue that top-level brim was ignoring an offset around the object without a brim.
Also, some possible warnings were fixed.
2021-06-02 10:33:16 +02:00
bc6419dfb3 Add <cfloat> for missing DBL_MAX declaration (#6582)
Fixes build on linux/gcc10.
2021-06-01 19:54:53 +02:00
46b8497a08 VertexFaceIndex: vertex index to incident face indices built for
indexed_triangle_set.
2021-06-01 19:30:26 +02:00
1fa790789c Fix of previous commit: Mixed up ClipperLib::pftPositive and pftNonZero 2021-06-01 12:33:14 +02:00
5681489621 Merge remote-tracking branch 'remotes/origin/master' into vb_print_regions 2021-06-01 11:19:53 +02:00
5088e36995 PrintRegion refactoring: Fixed a crash when an object is moved from outside
the print bed inside and it becomes printable.
2021-06-01 11:12:55 +02:00
da95f2a753 New parameter "Slicing Mode" for supporting 3DLabPrint airplane models.
S3D's strategy for merging self intersecting models is "Even / Odd"
which PrusaSlicer now supports as an alternative to "Positive" rule.
Also added a "Close Holes" option to fill in all internal structures.
3D-Labprint Models aren't sliceable (till years) #3062 #3708
2021-06-01 11:10:12 +02:00
6d2677e6fa Wipe tower: use normal retraction when moving to the tower, not toolchange retraction
This does not make sense, there is always an unretraction when the head arrives at the tower.
2021-05-31 21:23:03 +02:00
cfbffff651 Improvement related to 'separate z travel speed':
default to zero = use good old travel speed. This is to
ensure backwards compatibility with existing profiles
2021-05-31 21:21:53 +02:00
efd172d012 Added option to independently set z axis travel speed 2021-05-31 21:20:43 +02:00
1c4684abb4 Fixed some compiler warnings 2021-05-31 14:48:26 +02:00
37179e04dc Merge remote-tracking branch 'remotes/origin/master' into vb_print_regions 2021-05-31 14:05:53 +02:00
6aa54e04c3 Bugfix of PrintRegion refactoring: Correct invalidation of regions
on object transformation.
2021-05-31 14:04:45 +02:00
0689178ef5 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_sequential_limits 2021-05-31 12:55:03 +02:00
95c519fbf2 Fixed conflicts after merge with master + fixed rendering of hovered gizmo grabbers 2021-05-31 12:54:48 +02:00
8cf1e7b77b Slightly reworded 'missing layers' warning, to reflect that it is no longer considered an error 2021-05-31 11:16:28 +02:00
e90d131878 Added missing includes (GCC 11.1) 2021-05-29 19:55:20 +02:00
37c604568d Fixed that seed fill left all triangles split instead of merging them. 2021-05-28 17:42:28 +02:00
0ea67565d6 Cleaned up of 0a6490bab9 2021-05-28 17:36:56 +02:00