Commit Graph

17036 Commits

Author SHA1 Message Date
Vojtech Bubnik
96b88f5b29 Fixed crash with zero support base spacing.
Zero support base spacing is newly allowed, switching from
the "support base" infill pattern to rectilinar infill pattern.
Why someone would want to use a solid infill for support base eludes me,
but it is simpler to support it instead of working out some rules on
minimum support base density.

Fixes Support patern spacing set to zero causing crash #6989
2021-09-22 10:50:12 +02:00
Lukáš Hejl
30d13c99b7 Added a missing include (GCC 11.1). 2021-09-21 22:41:55 +02:00
YuSanka
238e65e455 Improvements for statistics information:
+ Show 2 groups of errors: "Auto-repared" and "Remaning".
 + Use different icons for volumes with/without remaining errors
 + Fixed update of the ObjectList warnings icons after switch the color mode of a PrusaSlicer
 + Some code refactoring: Use same code for tooltips for "exclamation"-icon from an ObjectList and from a Sidebar->ObjectInfo
2021-09-21 17:20:12 +02:00
Vojtech Bubnik
a5a7f64db0 Mesh statistics for imported STLs: Added backwards_edges to open_edges,
so that a mesh with incorrectly oriented faces will not be considered
a manifold.

Added assert for 3D convex hulls constructed by QHull. They shall be
manifold (however sometimes they are not).
2021-09-21 16:04:04 +02:00
Justin Schuh
306b54bc0a
Fix float accuracy issue when thick_bridges is off (#6957) 2021-09-21 15:50:04 +02:00
Vojtech Bubnik
ac7674b85a Fixed visualization of G-code lines in G-code viewer (3D view).
Improved speed of parsing external G-code.
2021-09-21 15:30:37 +02:00
Vojtech Bubnik
116fd0526b Enabling PrusaLink in physcal printers dialog for MINI. 2021-09-21 12:49:25 +02:00
tamasmeszaros
63647f594e Add dedicated subclass NotificationProgressIndicator
to replace ProgressStatusBar and revert changes from b9dab754, keep UI jobs untouched
2021-09-21 12:34:40 +02:00
Vojtech Bubnik
7e3306c68f Fixed triangulation of meshes split by the cut tool. 2021-09-21 11:07:40 +02:00
Lukáš Hejl
40e4116d9a Added a missing include (GCC 11.1). 2021-09-21 10:45:57 +02:00
Vojtech Bubnik
8a2a9dba2f Eradicated admesh from TriangleMesh:
TriangleMesh newly only holds indexed_triangle_set and
TriangleMeshStats. TriangleMeshStats contains an excerpt of stl_stats.
TriangleMeshStats are updated when initializing with indexed_triangle_set.

Admesh triangle mesh fixing is newly only used when loading an STL.
AMF / 3MF / OBJ file formats are already indexed triangle sets, thus
they are no more converted to admesh stl_file format, nor fixed
through admesh repair machinery. When importing AMF / 3MF / OBJ files,
volume is calculated and if negative, all faces are flipped. Also
a bounding box and number of open edges is calculated.

Implemented its_number_of_patches(), its_num_open_edges()
Optimized its_split(), its_is_splittable() using a visitor pattern.

Reworked QHull integration into TriangleMesh:
    1) Face normals were not right.
    2) Indexed triangle set is newly emitted instead of duplicating
       vertices for each face.

Fixed cut_mesh(): Orient the triangulated faces correctly.
2021-09-20 17:12:22 +02:00
Vojtech Bubnik
f484953a5a Fix of Print setting changes not applied to all copies if one copy rotated #6971 2021-09-20 14:41:19 +02:00
David Kocik
7dabcf0646 Slicing progress notification cancel button hides notification if process is idle. 2021-09-20 11:22:00 +02:00
enricoturri1966
9d7549e661 Use std::optional to replace dirty flags for bounding boxes in Selection 2021-09-17 13:24:37 +02:00
Lukas Matena
82b4a4fe11 Place on face improvement: respect different z-rotation of instances 2021-09-17 09:38:53 +02:00
enricoturri1966
0b1e716e22 Tech ENABLE_RETRACT_ACCELERATION set as default 2021-09-17 08:21:25 +02:00
Lukas Matena
129212a020 Fixed build on Linux (GCC 9.4.0) 2021-09-16 13:14:08 +02:00
Lukas Matena
e8418b509e Fixed switching of settings access radio buttons in Preferences,
the middle button only worked when _MSW_DARK_MODE.
Broken since fd07142.
2021-09-16 12:40:20 +02:00
enricoturri1966
94f92dee84 Use std::optional to replace dirty flags for bounding boxes in GLVolume 2021-09-16 10:46:56 +02:00
YuSanka
03a692cfd1 Implemented possibility to fix several objects at once 2021-09-16 10:07:00 +02:00
Lukas Matena
fe94a3c8c5 LocalesUtils: fixed BSD and improved performance of decimal point formatting functions 2021-09-15 19:52:32 +02:00
Lukas Matena
aef90bc735 Fixed build on Win and one more warning 2021-09-15 18:39:55 +02:00
Lukas Matena
71ba15b6f0 Fixed comparison of layer height profiles when printing with wipe tower:
while the layer height profile vector may not contain all print z
values, the only real case with two eqiuvalent layer height profiles is
when one was created as a copy of another, so the vectors should in fact be equal.
2021-09-15 16:37:41 +02:00
Lukas Matena
677cb58000 Fix several warnings 2021-09-15 16:36:59 +02:00
enricoturri1966
40877b12f7 Vertical alignment of labels in imgui dialog for GLGizmoMmuSegmentation 2021-09-15 14:32:43 +02:00
enricoturri1966
57749d6f09 Small refactoring into ClippingPlane to ensure that the normal is always a unit vector 2021-09-15 13:36:44 +02:00
enricoturri1966
554aa70edc Follow-up of 9abebe5fbe - Modified shader gouraud_light_instanced.vs to be more Intel's cards friendly 2021-09-15 12:32:43 +02:00
enricoturri1966
08487835a9 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer 2021-09-15 11:37:07 +02:00
enricoturri1966
9d5a3a00ef Hotfix for missing wipe tower after adding an object for an MMU printer 2021-09-15 11:36:58 +02:00
rtyr
0df83d91fc
Sync with PrusaSlicer-settings 2021-09-15 10:52:25 +02:00
enricoturri1966
2e9b07202a Fixed build when tech ENABLE_SEAMS_USING_BATCHED_MODELS is disabled 2021-09-15 10:52:16 +02:00
enricoturri1966
b22b7c2bf4 Follow-up of 60b5e0d0d5 - Apply the change only on Windows 2021-09-15 08:30:09 +02:00
Lukas Matena
5dd905fc8c Added a forward declaration needed on GCC 9.4.0 2021-09-14 22:56:29 +02:00
Li Jiang
50b7a1df9f fix file import/open bug 2021-09-14 22:12:35 +02:00
enricoturri1966
f132ca9c3c Tech ENABLE_SINKING_CONTOURS set as default 2021-09-14 15:45:21 +02:00
enricoturri1966
bf21abfbfa Follow-up of d52ee52098 - Removed forgotten tech key 2021-09-14 15:17:24 +02:00
enricoturri1966
d52ee52098 Tech ENABLE_FIX_IMPORTING_COLOR_PRINT_VIEW_INTO_GCODEVIEWER set as default 2021-09-14 15:05:33 +02:00
Vojtech Bubnik
9d29eddf16 WIP: admesh eradication
follow-up to 58d8ab3dea
2021-09-14 14:51:40 +02:00
enricoturri1966
30d2c3787f Tech ENABLE_DELAYED_TRANSPARENT_VOLUMES_RENDERING set as default 2021-09-14 14:34:21 +02:00
Vojtech Bubnik
d749baf6bc Fix of 58d8ab3dea 2021-09-14 13:11:21 +02:00
Vojtech Bubnik
58d8ab3dea Removed the PRUS format parser. WIP: admesh eradication:
stl_stats are newly only accessed by TriangleMesh::stats(),
most of the direct access to TriangleMesh::stl is gone with the exception
of parsing input files (3MF, AMF, obj).
2021-09-14 11:58:14 +02:00
Lukáš Hejl
1c6ecd9c1a Replaced atof and atoi inside 3MF attribute parsing with fast_float::from_chars and boost::spirit that are faster. 2021-09-14 11:09:43 +02:00
enricoturri1966
680a0665de Merge remote-tracking branch 'origin/et_reload_from_disk_changes' 2021-09-14 10:05:54 +02:00
enricoturri1966
a74f3e3fc0 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_reload_from_disk_changes 2021-09-14 10:05:18 +02:00
Vojtech Bubnik
ec976cbe05 Fixed unit tests after cab71073a1 2021-09-13 15:45:33 +02:00
Vojtech Bubnik
0a51afa3e6 Fix of Can't convert polyline with more than two points to a line (#6933)
Sometimes Clipper produces a polyline with more than 2 points when
clipping a line with a polygon or a set of polygons. We hope the intermediate
points are collinear with the line, so we may just ignore them.
2021-09-13 15:40:56 +02:00
Vojtech Bubnik
cab71073a1 Some reduction of unnecessary conversions when calling ClipperUtils. 2021-09-13 15:13:10 +02:00
enricoturri1966
60b5e0d0d5 Fixed wrong layout of preview's combos popup windows the first time they are open 2021-09-13 13:34:49 +02:00
Vojtech Bubnik
f9a5ee725d Follow-up to ae7d6db1d9
Exporting G-code on a worker thread did not work correctly as the worker
threads were using user's locale, not "C" locale.
The "C" locale is newly enforced to TBB worker threads by
name_tbb_thread_pool_threads_set_locale()
2021-09-13 13:04:12 +02:00
Vojtech Bubnik
e78d647cc2 Follow-up to e7591e6aa6
GCodeFormatter default copy constructor / copy operators were not safe
and they were used in debug mode.
2021-09-13 12:51:50 +02:00