Commit Graph

4800 Commits

Author SHA1 Message Date
Lukáš Hejl
f60b88ba3e Fix of #8597 - Assert on Windows about decrementing of std::vector::begin() in a specific case. 2022-08-12 09:48:34 +02:00
Lukáš Hejl
e838acdcd1 Added a lot of debugging outputs (SVG) into SkeletalTrapezoidation. 2022-08-12 09:48:34 +02:00
Lukas Matena
661bb522cf Fixed compiler warnings 2022-08-12 09:40:19 +02:00
Lukas Matena
ea0a68a073 Merge branch lm_tm_step_sq into master_250 2022-08-11 16:51:32 +02:00
Lukas Matena
41f5bd006a STEP: Improved error reporting on Linux 2022-08-11 16:49:13 +02:00
Lukas Matena
620b89d1c6 Add STEP into menu label, enable drag and drop 2022-08-11 16:49:13 +02:00
tamasmeszaros
aff337067b Switch to statically linked OCCTWrapper on Apple.
Due to dmg notarization issues
2022-08-11 16:49:13 +02:00
tamasmeszaros
3f8979c95f Use prusa-slicer executable dir to search for occt shared lib 2022-08-11 16:49:13 +02:00
tamasmeszaros
1fd4659f0e Use resources dir for occt shared lib 2022-08-11 16:49:13 +02:00
Prusa Research a.s
7d3f0b4b32 Fixes on MacOS 2022-08-11 16:49:13 +02:00
tamasmeszaros
88ba89dbbc STEP: Implementation ported from BambuStudio:
CMake handling is different

STEP: Removed preprocessing stage

STEP: Small refactoring

STEP: Bigger refactoring

STEP: Changed naming on loaded object and volumes:
If the STEP contains exactly one named volume, the object and its first
volume will both have that name. Otherwise, filename w/o suffix is used
as object name and volumes are named using names from the STEP (if there
is none, untranslated "PartN" string is used).

STEP: Load the libraries dynamically on Win

wip
2022-08-11 16:49:13 +02:00
PavelMikus
d39d35cc83 better curling fix, removed resamping, fixed the feature disable from previous commit 2022-08-11 15:30:51 +02:00
PavelMikus
8812036c25 slowly decreasing angle seam placement feature disabled 2022-08-11 15:30:51 +02:00
PavelMikus
0479387b20 reduce wavy seams for all layer heights, improve painting 2022-08-11 15:30:51 +02:00
PavelMikus
06084b0bc5 lower segment count on smooth parts 2022-08-11 15:30:51 +02:00
PavelMikus
3f36187101 increase segments count for smooth long strings 2022-08-11 15:30:51 +02:00
PavelMikus
52b9325f7c improving dynamic segmentation, simplifications in snapping angle logic 2022-08-11 15:30:51 +02:00
PavelMikus
44a388d560 prefer enforcers over blockers, lower the threshold distance,
dynamic modification of segments count in alignment based on smoothnes
2022-08-11 15:30:51 +02:00
PavelMikus
a41435d044 fixed overhang estimation correclty 2022-08-11 15:30:51 +02:00
PavelMikus
af95b6ecbd fix issue with enforced patches
refactor end_index to mark index after the last point
hackfix issue with overhang seem placement
2022-08-11 15:30:51 +02:00
PavelMikus
cb3678e1e2 fix bug in seam string weight - use seam string length as quality score 2022-08-11 15:30:51 +02:00
Lukáš Hejl
7dac30714b Follow-up to 394494b3ac: Fixed deceleration/acceleration issue also for gap-fill. Also, deceleration before bridge infill is now working. 2022-08-09 13:59:56 +02:00
YuSanka
2ac3861b2a Merge remote-tracking branch 'PRIVATE/master' into ys_cut 2022-08-08 10:57:38 +02:00
Lukáš Hejl
c9ddf7315e Replaced parameters wall_add_middle_threshold and wall_split_middle_threshold with automatic computation based on extrusion width.
That allows computed better values in cases when the extrusion width of the first layer or for the infill differs from the extrusion width for perimeters.

Parameters min_feature_size and wall_transition_length now can be set in percentages, and then they will be calculated based on nozzle size. Old profiles with default values are forced to replace old default values with new default values in percentages.
2022-08-08 10:21:55 +02:00
Vojtech Bubnik
b0af552455 WIP TreeSupports: Little optimization - don't use std::function,
don't make unnecessary copies of Polygons
2022-08-03 09:40:30 +02:00
Vojtech Bubnik
fd0c84319e WIP Tree Supports: Fixed one integer overflow. 2022-08-02 14:09:44 +02:00
Vojtech Bubnik
167125a813 Fixed disabling of TBB parallelization on newer TBB 2022-08-02 13:39:20 +02:00
Vojtech Bubnik
f971c392fe WIP TreeSupports: Some fixes, some clang specific workarounds,
some debugging code.
2022-08-02 13:36:05 +02:00
Vojtech Bubnik
6bf335409f FillBase: Use logging instead of printf 2022-08-02 13:23:30 +02:00
Lukáš Hejl
1b934518b3 Modified text drawing methods in debugging visualization (SVG) to support changing font size. 2022-08-02 13:21:39 +02:00
Lukáš Hejl
caf3e258b8 Fixed compiler warnings. 2022-08-02 13:21:39 +02:00
Lukáš Hejl
0161a59a93 Fix of #8472: The middle perimeter was missing for some specific configurations due to numeric rounding errors. 2022-08-02 13:21:39 +02:00
Lukáš Hejl
756eaeeb6d Updated the comment about the missing twin edge in the post-processed Voronoi diagram. 2022-08-02 13:21:39 +02:00
Lukáš Hejl
7060f3d1b3 Fixed an issue that when wall_transition_filter_deviation contained a non-percent value, then it contained the wrong value. 2022-08-02 13:21:39 +02:00
Lukáš Hejl
2317e9c2b9 Added information that the concentric infill is also affected by the selected perimeter generator. 2022-08-02 13:21:39 +02:00
Vojtech Bubnik
5868028a7e WIP Tree supports: It compiles and it produced first trees. 2022-07-29 13:15:01 +02:00
tamasmeszaros
b45bb84fa6 Another fix to find_merge_pt 2022-07-29 13:05:39 +02:00
tamasmeszaros
a55be29568 Fix failing tests for merge point search
Improvements and comments to find_merge_pt
2022-07-29 13:05:39 +02:00
tamasmeszaros
f3d4a90721 Fixes to compile on MSVC 2022-07-29 13:05:39 +02:00
tamasmeszaros
bf1303b9cf Fix double parallelization 2022-07-29 13:05:39 +02:00
tamasmeszaros
064e9935d1 Fix dangling pinheads 2022-07-29 13:05:39 +02:00
tamasmeszaros
2cb74013be Remove junk 2022-07-29 13:05:39 +02:00
tamasmeszaros
de3cbd483d Try to increase query size with each failed attempt
TODO: check performance gain
2022-07-29 13:05:39 +02:00
tamasmeszaros
e6d49b75de Make branching tree algorithm cancellable 2022-07-29 13:05:39 +02:00
tamasmeszaros
725f5c05e3 Change build_tree return value to void as its not used anywhere 2022-07-29 13:05:39 +02:00
tamasmeszaros
36ec731adf Replace KDTreeIndirect with boost::rtree for queries of PointCloud
- rtree can be populated with junction points gradually
- Use repeated queries of 5 nearest reachable points in branching tree alg
2022-07-29 13:05:39 +02:00
tamasmeszaros
d7c5243300 Further increase widening scale 2022-07-29 13:05:39 +02:00
tamasmeszaros
1a8cf3b029 Change UNQUEUED to Unqueued to keep convensions 2022-07-29 13:05:39 +02:00
tamasmeszaros
63a58ce1ad Require higher values for widening factor to have the same effect 2022-07-29 13:05:39 +02:00
tamasmeszaros
95374f9ed4 Fix some crashes
Fix minor bugs
2022-07-29 13:05:39 +02:00
tamasmeszaros
688c9c644f Prevent merging with node being lower than closest point 2022-07-29 13:05:39 +02:00
tamasmeszaros
91c0741f61 Minor performance optimization 2022-07-29 13:05:39 +02:00
tamasmeszaros
8a78428d10 Add tests to find_merge_pt and make them pass 2022-07-29 13:05:39 +02:00
tamasmeszaros
371da354a0 Adjust configuration layer to better reflect tree strategies. 2022-07-29 13:05:39 +02:00
tamasmeszaros
6523bfdf99 Enable ground facing only option for branching tree
Essentially discards mesh nodes
2022-07-29 13:05:39 +02:00
tamasmeszaros
5d6d1f5234 Apply branch length setting from UI for branching tree 2022-07-29 13:05:39 +02:00
tamasmeszaros
4c3ba3f6bf Fix tree struts piercing model body
Free path between the anchor and the last bridge was not verified
2022-07-29 13:05:39 +02:00
tamasmeszaros
7705ecd5aa Fix indexing of heads after duplicate removal 2022-07-29 13:05:39 +02:00
tamasmeszaros
792779f2de Fix creation of unchecked diffbridge in branching tree 2022-07-29 13:05:39 +02:00
tamasmeszaros
0a3b17f940 Fix failing sla tree tests
Try to increase number of rays in Beam to prevent colisions


Put back threshold for intersections with model in sla tree tests 


Increase safety distance for branching tree instead of increasing rays
2022-07-29 13:05:39 +02:00
tamasmeszaros
fd8fd77077 Improvements to widening strategy and branch length limitations
Also some refactoring
2022-07-29 13:05:39 +02:00
tamasmeszaros
ae23adff10 Fix crash on windows
Fix crash on windows - 2nd try
2022-07-29 13:05:39 +02:00
tamasmeszaros
8723e421b3 Add new branching tree algorithm 2022-07-29 13:05:39 +02:00
tamasmeszaros
b1317be78a Selectable support tree type 2022-07-29 13:05:39 +02:00
Lukáš Hejl
394494b3ac Fix of #8530: Pressure equalizer unintentionally decelerates before ironing.
This is the follow-up to: 39404be75a
2022-07-28 11:42:57 +02:00
Lukáš Hejl
9168b60463 Prevented the pressure equalizer from emitting G-code settings feed rate when there are no G-code lines that will be affected (empty block of G-code lines with set feed rate). 2022-07-28 11:42:53 +02:00
enricoturri1966
0388132acd Tech ENABLE_SHOW_NON_MANIFOLD_EDGES set as default 2022-07-28 08:55:53 +02:00
enricoturri1966
0063734e78 Tech ENABLE_COPY_CUSTOM_BED_MODEL_AND_TEXTURE set as default 2022-07-28 08:33:46 +02:00
Merill
72aba9a5be
Little fix: back() isn't front() 2022-07-28 03:02:29 +02:00
enricoturri1966
5cf71bb094 Tech ENABLE_SHOW_TOOLPATHS_COG set as default 2022-07-27 15:52:40 +02:00
YuSanka
05c22604fb Cut WIP: Suppress use connectors for SLA mode 2022-07-27 15:21:37 +02:00
enricoturri1966
828dd5ddf8 Fixed toolpaths generation for gcode line G2 and G3 2022-07-27 15:16:20 +02:00
enricoturri1966
7fbaa3e8fd GCodeViewer - Added processing of gcode files produced by BambuStudio 2022-07-27 13:10:45 +02:00
YuSanka
e990254d52 Cut WIP: set attributes for each connector separately.
+ Allow select/deselect several connectors and apply size/depth for selected group of connectors
2022-07-27 11:32:38 +02:00
Vojtech Bubnik
9e6871e5b8 WIP Tree supports: It compiles, but unfinished, missing pieces. 2022-07-27 10:41:11 +02:00
Vojtech Bubnik
665d1a94b4 WIP Tree Supports: Major changes, it does not compile yet. 2022-07-27 08:54:26 +02:00
Vojtech Bubnik
8a1e8f97a9 Minor refactoring of BoundingBox: change Eigen point accessor from
indices to .x(), .y(), .z()
Added Polyline vector accessors.
Polished Point hash code.
2022-07-27 08:53:48 +02:00
Vojtech Bubnik
075bf675fa WIP Tree Supports: Refactored the classic FDM support generator
for modularity, so that the rasterization of support layers
is accessible from tree supports.
2022-07-27 08:50:59 +02:00
Lukáš Hejl
77f5973c25 Fix of #8446: Non-planar Voronoi diagram.
This is the follow-up to 63c66f4f18. Detection of non-planar (degenerated) Voronoi diagrams was rewritten to check if all neighboring edges of the Voronoi vertex are CCW ordered.
2022-07-26 13:47:40 +02:00
tamasmeszaros
0681f92130 Fix segfault caused by unchecked mesh precondition
CGALProc::does_bound_a_volume(mesh) can throw if CGAL::is_closed(mesh) is not met

affects #8521
2022-07-25 14:07:01 +02:00
YuSanka
0fd29dfec7 Cut WIP: Suppress un-universal scaling for cut objects
Added editing of the tolerance
2022-07-22 16:38:28 +02:00
Lukáš Hejl
dd6096bf0b Fix of #8457 and #8461: Made pressure equalizer to modify only GCode lines that are inside the block tags _EXTRUDE_SET_SPEED and _EXTRUDE_END.
The previous approach could modify all GCode lines, even custom GCode or tool change GCode, which was unintentional.
2022-07-22 11:32:37 +02:00
Lukáš Hejl
decfa80bfd Test case for issue when Arachne produce closed ExtrusionLine that have different the first and the last point. 2022-07-22 08:33:27 +02:00
Lukáš Hejl
e14da6224a Fixed an issue when an open perimeter containing part of an overhang perimeter was split into two parts and wasn't extruded as continuous extrusion. 2022-07-22 08:33:27 +02:00
Lukáš Hejl
2a865919a0 Prevented gap fill and Arachne from creating tiny gaps in extrusions in specific cases. 2022-07-22 08:33:27 +02:00
enricoturri1966
bb36f0df0c Tech ENABLE_OPENGL_ES - 1st installment 2022-07-21 15:43:11 +02:00
enricoturri1966
5922966eb0 Merge branch 'master' of https://github.com/Prusa-Development/PrusaSlicerPrivate into et_raycast_picking_rebase 2022-07-21 10:56:38 +02:00
enricoturri1966
182a4e06dc Merge branch 'master' of https://github.com/Prusa-Development/PrusaSlicerPrivate into et_opengl_es_rebase 2022-07-21 10:10:22 +02:00
enricoturri1966
ca34518bcc Fixed conflicts after merge with master 2022-07-21 08:55:52 +02:00
Lukáš Hejl
63c66f4f18 Fix of #8474 and #8514: Voronoi generator sometimes produced a non-planar Voronoi diagram.
We introduced detecting for those degeneration cases. When degenerated Voronoi diagram is detected, then the input polygons are rotated, and the Voronoi diagram is recomputed. Usually, rotation of input data solves issues like this.
2022-07-21 08:47:48 +02:00
enricoturri1966
a3aab02f56 Fixed warning 2022-07-21 08:47:29 +02:00
enricoturri1966
520261925f Fixed conflicts after merge with master 2022-07-21 08:14:44 +02:00
Vojtech Bubnik
23099c83dc WIP Tree Supports: Extracted Cura configs into a structure,
replaced Cura AABB with BoundingBox,
headers should be compilable now.
2022-07-20 11:21:53 +02:00
Vojtech Bubnik
6e1e4fcca2 WIP Tree Supports: Ported parallelization from cura homebrew parallel_for
to thread building blocks tbb::parallel_for.
2022-07-19 17:14:07 +02:00
YuSanka
cd8e0d002b Cut WIP: Added "Place o cut" 2022-07-19 16:58:27 +02:00
Vojtech Bubnik
f6ae93366a WIP TreeSupports: Replaced cura namespace with Slic3r,
removed Cura includes.
2022-07-19 11:10:17 +02:00
Vojtech Bubnik
4c41311df3 WIP Tree Supports: Updated copyright 2022-07-19 10:59:10 +02:00
Vojtech Bubnik
b74fde237d WIP Porting tree supports by Thomas Rahm, losely based on Cura tree supports.
https://github.com/ThomasRahm/CuraEngine
2022-07-19 10:55:43 +02:00
enricoturri1966
8db552ce26 Tech ENABLE_GL_CORE_PROFILE - Command line option '--opengl-core=M.m' renamed as '--opengl-version=M.m'
use case 1 - the option is not added to the command line - PrusaSlicer defaults to the highest available core profile OpenGL version

use case 2 - the option specify an OpenGL version which supports core profile - PrusaSlicer select the required OpenGL version, if available

use case 3 - the option specify an OpenGL version which does not support core profile - PrusaSlicer defaults to the highest available compatibility profile OpenGL version

use case 4 - the option contains invalid OpenGL version - PrusaSlicer defaults to the highest available core profile OpenGL version
2022-07-18 15:33:24 +02:00
Lukas Matena
fbdf777898 Merge branch 'master_250' 2022-07-15 15:04:10 +02:00
Pavel Mikus
70677858a1 Use resampling only with smooth surfaces generated by Arachne 2022-07-14 18:00:59 +02:00
Pavel Mikus
2e437d1761 curling improvements 2022-07-14 11:47:29 +02:00
Pavel Mikus
d5d1633e2b Bugfix: seam enforcers and blockers not respected on different nozzle widths -
now flow width is used instead of fixed distance param
2022-07-14 10:15:05 +02:00
Pavel Mikus
f5efb0d0aa remove global angle computation, wrong results 2022-07-14 10:15:05 +02:00
Pavel Mikus
4a9f9aa89b oversample smooth surfaces, which reduces curling on those surfaces, because the shortest path down is better defined 2022-07-14 10:15:05 +02:00
Pavel Mikus
40408c2178 increase snapping angle 2022-07-14 10:15:05 +02:00
PavelMikus
768bfd5c7f reduce curling 2022-07-14 10:15:05 +02:00
PavelMikus
c65e22e6bb refactored find_seam_string func 2022-07-14 10:15:05 +02:00
PavelMikus
4d8e8afb10 Count seam string weight and try mutiple strings; choose highest weight 2022-07-14 10:15:05 +02:00
Pavel Mikus
f31865a627 increase weight of central seam enforcers 2022-07-14 10:15:05 +02:00
Pavel Mikus
232517fe77 choose seam string with lower variance weighted by visibility 2022-07-14 10:15:05 +02:00
Pavel Mikus
feeb9b2b1b bug fixes in the linear regression 2022-07-14 10:15:05 +02:00
PavelMikus
fec3afa490 cubic spline segment size based on the length of string 2022-07-14 10:15:05 +02:00
PavelMikus
1e05d09324 search points based on updated linear regression model (line), make search raidus dynamic based on layer thickenss 2022-07-14 10:15:05 +02:00
Lukáš Hejl
39404be75a Fix of #8471 - Pressure equalizer caused unintentional deceleration before ironing and acceleration after ironing. 2022-07-14 09:30:37 +02:00
Lukáš Hejl
b4ff9b72a9 Fix of #8455 - Incorrect scale in ExtrusionLine::simplify() prevented removing vertices between collinear and nearly collinear lines. 2022-07-14 09:10:25 +02:00
Lukáš Hejl
e2e1272003 Fix of #8455 - Fixed the incorrect computation of the threshold for grouping ExtrusionPaths with the same extrusion width in thick_polyline_to_extrusion_paths() that was affecting Arachne and gap fill.
The previous behavior didn't merge two ExtrusionPaths with the same extrusion width, and it also could merge two ExtrusionPaths with different widths, which was unintentional, and it could also possibly create visible artifacts in some cases.
Because simplification of ExtrusionLoop in GCode::extrude_loop is working on ExtrusionPath and not on whole ExtrusionLoop, so previous incorrect behavior was preventing simplification and removing small extrusions like in #8455.
2022-07-14 09:10:22 +02:00
enricoturri1966
b9caacfdd9 Merge branch 'et_opengl_3_rebase' of https://github.com/Prusa-Development/PrusaSlicerPrivate into et_raycast_picking_rebase 2022-07-13 13:50:34 +02:00
enricoturri1966
e0c8ffc524 Tech ENABLE_OPENGL_DEBUG_OPTION - Let option opengl-debug be always available to avoid error unknown option at startup 2022-07-13 10:06:57 +02:00
Lukáš Hejl
22255822a2 Fix of #8488 - Infinite loop in the lightning infill. 2022-07-12 18:59:48 +02:00
Lukáš Hejl
7860cf8811 Follow-up to e86463a369: Forgot to remove useless asserts. 2022-07-12 13:52:02 +02:00
Lukáš Hejl
e86463a369 Fix of #8463 - Crash in SkeletalTrapezoidation::computePointCellRange() when a cell point didn't fit into Vec2i64 because it was too far away. 2022-07-12 13:36:26 +02:00
Lukas Matena
f41d72d656 Fixed empty 'G1' lines generated by the wipe tower:
They are not nice and trigger assertions in CoolingBuffer
2022-07-12 10:59:24 +02:00
enricoturri1966
c7d44d3576 #8467 - GCodeProcessor - Added processing of parameter 'T' for gcode lines M104 2022-07-11 12:24:42 +02:00
enricoturri1966
850b590c31 #8467 - GCodeViewer - Fixed detection of extruder changes for gcode produced by other slicers, by adding missing default values 2022-07-11 11:52:58 +02:00
Lukáš Hejl
d02a0ec1b2 Fix of #8447 - Zero spacing when Clipper Z-coordinate (line width) equaled zero because the resulting path after clipping had vertices from a clipping polygon (which has Z-coordinate equal to zero). 2022-07-11 11:31:59 +02:00
Lukáš Hejl
38ca763c36 Fix of #8437 - Very tiny unprintable polygons caused InfillFailedException in the lightning infill. 2022-07-11 10:50:01 +02:00
tamasmeszaros
e58a15bdf8 Prepare arrange for variable bed distance 2022-07-07 15:51:41 +02:00
tamasmeszaros
f025c9cd6f Adding overload for string conversion to float directly 2022-07-07 15:43:32 +02:00
enricoturri1966
38683ee221 Tech ENABLE_OPENGL_DEBUG_OPTION - Add new command line option '--opengl-debug' to allow users to force PrusaSlicer to output to console OpenGL related errors on graphics cards supporting it. 2022-06-30 09:49:29 +02:00
Lukáš Hejl
5d557ed32f Fix of #8436 - Crash in the lightning infill when some region has zero infill density. 2022-06-30 09:44:00 +02:00
Lukáš Hejl
f91fed7938 Added missing includes (GCC 11.2 without PCH). 2022-06-30 00:29:26 +02:00
Lukáš Hejl
7783915a34 Fix of #8435 - Division by zero in lightning infill when automatic extrusion width was used. 2022-06-29 18:33:57 +02:00
Lukas Matena
6c0db58628 Fixing conflicts part 4:
See previous commit. This one applies changes from master_250
to the files mentioned
2022-06-29 16:43:29 +02:00
Lukas Matena
d662bf2a18 Fixing conflicts part 3:
Some files have whitespace changes that make resolving conflicts difficult.
Take the version from master first, next commit will apply changes from master_250
2022-06-29 16:43:29 +02:00
Lukas Matena
e6d341f9f2 Fixing conflicts part 2:
SeamPlacer.cpp/.hpp files from master_250 were used, there should be no changes
in master that will be overwritten, the feature was backported from master and
only developed in master_250 from then on
2022-06-29 16:43:29 +02:00
Lukas Matena
62e59a4526 Fixing conflicts part 1:
fixed simple conflicts
2022-06-29 16:43:29 +02:00
Lukas Matena
b61714bb3e Merge branch 'master_250' (NO CONFLICTS FIXED):
CONFLICT (content): Merge conflict in resources/profiles/PrusaResearch.idx
CONFLICT (content): Merge conflict in resources/profiles/PrusaResearch.ini
CONFLICT (content): Merge conflict in src/libslic3r/CMakeLists.txt
CONFLICT (content): Merge conflict in src/libslic3r/Fill/Fill.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode.hpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/GCodeProcessor.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/GCodeProcessor.hpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/SeamPlacer.cpp
CONFLICT (content): Merge conflict in src/libslic3r/GCode/SeamPlacer.hpp
CONFLICT (add/add): Merge conflict in src/libslic3r/Geometry/Curves.hpp
CONFLICT (content): Merge conflict in src/libslic3r/PerimeterGenerator.cpp
CONFLICT (content): Merge conflict in src/libslic3r/Point.hpp
CONFLICT (content): Merge conflict in src/libslic3r/PrintConfig.hpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/ConfigWizard.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GCodeViewer.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GLCanvas3D.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/GUI_App.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/Gizmos/GLGizmoHollow.cpp
CONFLICT (content): Merge conflict in src/slic3r/GUI/Gizmos/GLGizmoSlaSupports.cpp
CONFLICT (content): Merge conflict in src/slic3r/Utils/FixModelByWin10.cpp
CONFLICT (modify/delete): t/perimeters.t deleted in HEAD and modified in master_250.  Version master_250 of t/perimeters.t left in tree.
CONFLICT (content): Merge conflict in tests/fff_print/CMakeLists.txt
CONFLICT (content): Merge conflict in tests/fff_print/test_fill.cpp
CONFLICT (content): Merge conflict in version.inc
CONFLICT (modify/delete): xs/xsp/PerimeterGenerator.xsp deleted in HEAD and modified in master_250.  Version master_250 of xs/xsp/PerimeterGenerator.xsp left in tree.
2022-06-29 14:37:14 +02:00
YuSanka
89a7f6bdb1 Merge remote-tracking branch 'origin/ys_wx317_master' into ys_cut 2022-06-29 11:44:11 +02:00
tamasmeszaros
621ec86dbe Equip boost adapter with extensive 3D bounding box support 2022-06-29 10:55:04 +02:00
tamasmeszaros
a7e50b7a98 Generalize BoostAdapter for all Vec<> types and move out of SLA 2022-06-29 10:54:04 +02:00
tamasmeszaros
f90d62c771 Fix crash with a single support point 2022-06-29 10:52:48 +02:00
tamasmeszaros
d23f9d7674 Refactoring and performance optimization for support trees in SLA 2022-06-29 10:43:46 +02:00
enricoturri1966
ae76468f7c Tech ENABLE_RAYCAST_PICKING - Partial revert of 89ac932628 - Restored rectangle selection using encoded colors rendering 2022-06-28 14:12:57 +02:00
Vojtech Bubnik
1d41ffdd7d When placing seam, never produce segments shorter than 1.5um. 2022-06-28 10:30:04 +02:00
Vojtech Bubnik
f0886b46fb Follow-up to c6bcaedba9 2022-06-27 10:42:42 +02:00
Vojtech Bubnik
c6bcaedba9 Follow-up to d01f6099c3
Fixing unit tests.
2022-06-24 17:46:26 +02:00
Vojtech Bubnik
d01f6099c3 Fixing Polyline::split_at() to handle correctly splitting
at the first / last point.
2022-06-24 17:28:09 +02:00
Vojtech Bubnik
0c99a14b63 Follow-up to f1d52cb412
Fixes of cooling buffer logic:
    Fixed division by zero on zero length extrusions.
2022-06-24 16:46:49 +02:00
Vojtech Bubnik
f1d52cb412 Fixes of cooling buffer logic:
Fixed division by zero on zero length extrusions.
Added bunch of asserts to check for divisions by zero.
2022-06-24 15:08:35 +02:00
YuSanka
4c65e468de Localization: New POT and updated dictionaries for CZ, PL, IT and ES
+ Fix for minor issue https://github.com/prusa3d/PrusaSlicer/issues/5672#issuecomment-1160245417
+ Fix for #7858 - Small formatting error in dutch language
+ Community PO-files are extended by new phrases
2022-06-23 13:34:29 +02:00
Lukáš Hejl
3b53a27d5e Unified Arachne parameters and their description with our terminology. 2022-06-23 13:34:29 +02:00
YuSanka
e6f95515c7 Localization: Some phrases are fixed 2022-06-23 13:34:28 +02:00
PavelMikus
79cfefa2fe potential size_t overflow tiny bug fix 2022-06-23 13:34:24 +02:00
Lukáš Hejl
9aca685dd4 Fixed a compiler warning. 2022-06-21 14:23:05 +02:00
Lukáš Hejl
c1af26e3fd Modified the pressure equalizer to silently ignores most of the invalid GCode lines. 2022-06-21 13:57:41 +02:00
YuSanka
c3bf861b17 Fix for fff_print_tests 2022-06-21 12:48:54 +02:00
Lukáš Hejl
d65aaa1db9 Disabled ignoring the pressure equalizer parameters when 3MF is loaded. 2022-06-21 12:35:57 +02:00
Lukáš Hejl
a09cf52798 Fixed that fuzzy skin hadn't connected endpoints of extrusion when Arachne was used. 2022-06-21 12:35:56 +02:00
PavelMikus
f3d0e3c399 fix compile time warning (truncating double to float) 2022-06-21 11:11:10 +02:00
enricoturri1966
89ac932628 Tech ENABLE_NEW_RECTANGLE_SELECTION set as default 2022-06-21 11:10:57 +02:00
enricoturri1966
6d97de14d9 Tech ENABLE_RAYCAST_PICKING - Removal of all remaining code related to old OpenGL based picking 2022-06-21 09:16:36 +02:00
PavelMikus
732586de7c SeamPlacer: Removed skipping mechanics in alignment
improved snapping to sharp angles
reduced curling on smooth surfaces
Rear is now aligned
2022-06-20 17:41:05 +02:00
YuSanka
2688a29b08 SplashScreen: New image
+ PressureEqualizer" fixed warning
2022-06-17 17:14:14 +02:00
Lukas Matena
32e70e5f57 Fixed compiler warnings 2022-06-17 16:27:49 +02:00
YuSanka
311ac96e45 Fixed default values for filament_cooling_initial_speed and filament_cooling_final_speed.
Don't use float value for double type parameter
2022-06-17 15:35:38 +02:00
Lukas Matena
570b43941e Fixed title label when run as G-Code Viewer:
Builds that were not tagged and contained number of commits since last tag
showed "-UNKNOWN" in the title bar, even when they went through the build server
2022-06-17 12:58:24 +02:00
Lukáš Hejl
3a792738cb Added a limit on how many GCode lines pressure equalizer is processing. It reduces pressure equalizer processing time a lot.
Also, the maximum segment length to split was decreased to make the transition between different flow rates smoother.
2022-06-17 11:09:04 +02:00
Lukas Matena
4079eac29a Fixed a failing assert in BuildVolume.cpp 2022-06-16 16:35:06 +02:00
Lukáš Hejl
1622208249 Fixed infill polygons filtering. 2022-06-16 14:01:56 +02:00
PavelMikus
e70aea8b30 SeamPLacer: for extrusion loops, check all paths for ExternalPerimeter role
small parameter tuning
2022-06-16 10:12:44 +02:00
Lukáš Hejl
f34c1f14da Fixed the orientation of ExtrusionLoops when Arachne is used. 2022-06-15 23:28:11 +02:00
enricoturri1966
f45711e7e5 Removed tech ENABLE_RENDER_PICKING_PASS 2022-06-15 14:29:29 +02:00
Lukas Matena
c3edafcc33 Arachne parameter names: unified case with the rest 2022-06-14 12:48:54 +02:00
enricoturri1966
040a8467bd #8401 - Show error message when trying to import invalid 3mf 2022-06-14 12:17:15 +02:00
PavelMikus
20a42e3e2f Fix crash on painted seams - painting blocker close to enforced could cause
points to be recognized as enforced and then marked as blocked, which could
brake the middle enforced point selection
2022-06-13 13:01:23 +02:00
PavelMikus
745c5ecd9b SeamPlacer - fix search radius estimation for visibility computation (use exp distribution)
slightly tune parameters
2022-06-13 10:05:35 +02:00
enricoturri1966
36ec839767 Tech ENABLE_GIZMO_GRABBER_REFACTOR set as default 2022-06-10 15:46:28 +02:00
Lukáš Hejl
bd4b63e67d Fixed an issue when the Lightning infill stuck in an infinite loop on some models.
Cased by two sampled points closer than chosen spacing.
2022-06-10 15:31:02 +02:00
Lukáš Hejl
dba1179708 Fixed an issue when the Lightning infill stuck in an infinite loop on some models.
Cased by two sampled points closer than chosen spacing.
2022-06-10 15:25:04 +02:00
enricoturri1966
6c6713c4ad Tech ENABLE_RAYCAST_PICKING - Raytraced picking of volumes 2022-06-10 14:56:15 +02:00
enricoturri1966
cfc3988b9f Tech ENABLE_RAYCAST_PICKING - 1st installment - Raytraced picking of printbed 2022-06-10 13:20:52 +02:00
Lukáš Hejl
3fba411d17 Follow-up of 18124b07a2 - Forgot to remove code for debugging. 2022-06-10 12:12:26 +02:00
Lukáš Hejl
18124b07a2 Fixed a crash when Arachne returns extrusion with zero-length (just two same endpoints). 2022-06-10 11:46:46 +02:00
Lukáš Hejl
9c07218d82 Reworked pressure equalizer and GCode processing pipeline to make pressure equalizer always returns one whole layer at once.
Now pressure equalizer is returning one layer back (the previous layer).

GCode produced by pressure equalizer now has the same number of decimal places as non-processed GCode.

Pressure equalizer was disabled for external perimeters and gap-fill.
2022-06-10 10:54:35 +02:00
Lukáš Hejl
a497769558 Modified the description of pressure equalizer parameters and moved it to the separate section. 2022-06-09 21:07:48 +02:00
Lukáš Hejl
0463518dc3 Attempted to reenable the old pressure equalizer and fix its issues. 2022-06-09 21:07:41 +02:00
Lukáš Hejl
9be524b01b Fixed an unintentional transformation of ExPolygon to a single vector containing all points from contour and all holes in the Lightning infill.
This was causing most of the issues with randomly generated infill hanging in the air without any support.
2022-06-09 14:51:16 +02:00
Lukáš Hejl
5d82c1601b Fixed an unintentional transformation of ExPolygon to a single vector containing all points from contour and all holes in the Lightning infill.
This was causing most of the issues with randomly generated infill hanging in the air without any support.
2022-06-09 14:49:45 +02:00
Lukáš Hejl
3d9b13a5e3 Added fuzzy skin for Arachne. 2022-06-09 11:23:41 +02:00
Lukáš Hejl
357dbb4686 Fixed the flow of bridging perimeters for Arachne. 2022-06-09 11:23:41 +02:00
Lukáš Hejl
dc2789a0e8 Added computation of bridging perimeters for Arachne. 2022-06-09 11:23:41 +02:00
Vojtech Bubnik
0b6c65ee60 G-code thumbnails in other than PNG format: Fixing Perl unit tests. 2022-06-09 09:58:13 +02:00
enricoturri1966
9bd0a3c6b1 Follow-up of 030f460114 - compress_thumbnail_jpg() implemented using embedded libjpeg 2022-06-08 21:12:00 +02:00
enricoturri1966
9bb5874d50 Follow-up of 87cff55856 - Implementation of compress_thumbnail_jpg() 2022-06-08 21:12:00 +02:00
Lukáš Hejl
36bd65d810 Added a missing include (GCC11.1 without PCH). 2022-06-08 21:12:00 +02:00
Vojtech Bubnik
e2405b51da Fixed typo in thumbnail_QOI tag. 2022-06-08 21:12:00 +02:00
Vojtech Bubnik
8ed6d1b466 WIP: Implemented support for QOI G-code thumbnail format as requested
by the RepRapFirmware team due to their low RAM budget for decompression.
Bundled the QOI image compression library.
2022-06-08 21:12:00 +02:00
Lukas Matena
5792190515 Fix of incorrect MMU filament estimate 2022-06-08 21:09:39 +02:00
PavelMikus
27a7ddccb6 improve visibility estimation via distance to plane weighting.
increase angle importance, improve alignment
2022-06-08 10:28:21 +02:00
enricoturri1966
8f40270f93 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_opengl_3_rebase 2022-06-08 09:06:12 +02:00
tamasmeszaros
86ebe946d9 Make AStar use InvalidQueueID constant 2022-06-07 16:08:09 +02:00
tamasmeszaros
4f8535d0d5 Move out invalid_id constant from MutablePriotityQueue template class
Enclose it into Slic3r namespace
2022-06-07 16:05:16 +02:00
PavelMikus
c09781d61d optimize embedding computation
fix seed of random generators
set high angle importance for nearest mode
2022-06-07 11:12:48 +02:00
PavelMikus
13ac7a24d8 Refactoring of the short edge collpase, should greatly improve performance
integration of NormalsUitls from SDF branch
2022-06-07 11:12:48 +02:00
PavelMikus
9b761d3a6f fix random generator in short edge collpase, so that results are deterministic 2022-06-07 11:12:48 +02:00
PavelMikus
d5bf6794aa comment out debug info 2022-06-07 11:12:48 +02:00
PavelMikus
835aca60e6 add comments to the short edge collapse algorithm 2022-06-07 11:12:48 +02:00
PavelMikus
1e7b4a6720 Implementation of ShortEdgeCollapse
Replaced QEC by edge collapse in occlusion computation
2022-06-07 11:12:48 +02:00
PavelMikus
b5b39195f4 Added throw_if_canceled callback to all slower sections 2022-06-07 11:12:48 +02:00
PavelMikus
c23d1488c9 Performance improvements 2022-06-07 11:12:48 +02:00
PavelMikus
a4201321e8 Hopefully improved the seam placer performance a lot 2022-06-07 11:12:48 +02:00
PavelMikus
6da220062c Mac OS pre 10.13 does not fully support std::optional (method .value() is not allowed)
This commit replaces usage of .value() calls with .operator*()
2022-06-07 11:12:48 +02:00
PavelMikus
d59d8eebde Full occlusion guided seam placer backport 2022-06-07 11:12:48 +02:00
enricoturri1966
cd6155293b Fixed conflicts after merge with master 2022-06-07 11:10:19 +02:00
enricoturri1966
904e3a874e Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_trafo_matrix_rebase 2022-06-06 14:57:09 +02:00
enricoturri1966
c99e93c357 Fixed differences after rebase with master 2022-06-06 14:55:38 +02:00
enricoturri1966
00878fb330 Tech ENABLE_TRANSFORMATIONS_BY_MATRICES merged into ENABLE_WORLD_COORDINATE
Fixed conflicts during rebase with master
2022-06-06 13:36:29 +02:00
enricoturri1966
f591535d20 Removed tech ENABLE_WORLD_COORDINATE_VOLUMES_LOCAL_OFFSET 2022-06-06 12:44:01 +02:00
enricoturri1966
e3d648c802 Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - Reoworked calculation of volume matrix for newly added modifiers and parts
Fixed conflicts during rebase with master
2022-06-06 12:16:17 +02:00
enricoturri1966
e4fb142afc Tech ENABLE_WORLD_COORDINATE_SCALE_REVISITED merged into tech ENABLE_WORLD_COORDINATE
Fixed conflicts during rebase with master
2022-06-06 12:01:44 +02:00
enricoturri1966
ebb9a4aadb Tech ENABLE_WORLD_COORDINATE_SHOW_AXES merged into tech ENABLE_WORLD_COORDINATE
Fixed conflicts during rebase with master
2022-06-06 11:39:15 +02:00
enricoturri1966
7c86cf84a3 Tech ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX merged into tech ENABLE_WORLD_COORDINATE
Fixed conflicts during rebase with master
2022-06-06 10:53:26 +02:00
enricoturri1966
19712749c3 Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - Added reset button to remove skew, when detected, in object manipulator panel
Fixed conflicts during rebase with master
2022-06-06 10:00:28 +02:00
enricoturri1966
88ce6ccdef Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - Reworked method void Selection::scale(const Vec3d& scale, TransformationType transformation_type) to use matrix multiplication
Fixed conflicts during rebase with master
2022-06-06 09:54:19 +02:00
enricoturri1966
9f503b95e8 Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - Reworked method void Selection::rotate(const Vec3d& rotation, TransformationType transformation_type) to use matrix multiplication
Fixed conflicts during rebase with master
2022-06-03 15:44:45 +02:00
enricoturri1966
2f6f73e10f Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - Reworked method void Selection::translate(const Vec3d& displacement, ECoordinatesType type) to use matrix multiplication
Fixed conflicts during rebase with master
2022-06-03 14:56:07 +02:00
enricoturri1966
7e72963293 Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - 1st installment. Geometry::Transformation modified to store data in a single matrix, without store the matrix components
Fixed conflicts during rebase with master
2022-06-03 13:58:36 +02:00
Lukas Matena
75a6f54f0b Fixed compiler warnings 2022-06-03 12:45:06 +02:00
enricoturri1966
622796e9e3 Tech ENABLE_WORLD_COORDINATE_SCALE_REVISITED - Alternate implementation of manipulating scale for instances and volumes using gizmo scale and sidebar object manipulator fields - 1st installment
Fixed conflicts during rebase with master
2022-06-03 12:17:12 +02:00
enricoturri1966
558bccec48 Tech ENABLE_WORLD_COORDINATE_SHOW_AXES - Show axes of the current reference system when sidebar hints are active for non-world reference systems
Fixed conflicts during rebase with master
2022-06-03 11:45:22 +02:00
enricoturri1966
912d781446 Tech ENABLE_COORDINATE_DEPENDENT_SELECTION_BOX - Render the selection bounding box in the current reference system
Fixed conflicts during rebase with master
2022-06-03 11:05:49 +02:00
tamasmeszaros
1d3c8ac5b4 Further refactor
Reduce code size for astar
2022-06-03 10:17:05 +02:00
tamasmeszaros
d9ed45be56 Apply remarks from code review with additional cosmethics 2022-06-03 10:08:11 +02:00
enricoturri1966
90e54e5821 Tech ENABLE_INSTANCE_COORDINATES_FOR_VOLUMES merged into tech ENABLE_WORLD_COORDINATE
Fixed conflicts during rebase with master
2022-06-03 09:57:07 +02:00
tamasmeszaros
f9fb7f947d Revamped A* algorithm
with extended test suite
2022-06-02 17:44:51 +02:00
enricoturri1966
79bdcefbde Tech ENABLE_INSTANCE_COORDINATES_FOR_VOLUMES - 1st installment: introduction of instance reference system in part manipulation
Fixed conflicts during rebase with master
2022-06-02 14:58:44 +02:00
Lukáš Hejl
792caae0ca Follow-up of a47446574e - Disable tbb::task_scheduler_observer in TBBLocalesSetter destructor.
The base class wasn't disabling observing when tbb::task_scheduler_observer was destructed, which leads to undefined behavior.
2022-06-02 12:36:19 +02:00
Lukáš Hejl
6bdaf0eaec Follow-up of a47446574e - Disable tbb::task_scheduler_observer in TBBLocalesSetter destructor.
The base class wasn't disabling observing when tbb::task_scheduler_observer was destructed, which leads to undefined behavior.
2022-06-02 12:13:45 +02:00
enricoturri1966
6433d3af91 Tech ENABLE_WORLD_COORDINATE - Fixed volumes rotation in world coordinate
Added sub-tech ENABLE_WORLD_COORDINATE_VOLUMES_LOCAL_OFFSET which enable showing world coordinates of volumes' offset relative to the instance containing them

Show 'Drop to bed' button in sidebar whenever the selected instance or volume is not laying on the printbed

Fixed conflicts during rebase with master
2022-06-02 12:07:00 +02:00
enricoturri1966
ca5742c401 Tech ENABLE_WORLD_COORDINATE - Gizmo rotate oriented in dependence of the selected coordinate system
Fixed conflicts during rebase with master
2022-06-02 10:16:07 +02:00
YuSanka
906f8914a6 SLA estimation time:
* A calculation of the estimation of a print time is ported from the FW
  (See https://gitlab.com/prusa3d/sl1/sla-fw/-/blob/1.7/slafw/project/project.py#L485)
* Some missed parameters are added to the Printer Presets
2022-06-02 09:29:11 +02:00
Lukáš Hejl
2b87601239 Sets locales before any thread start participating in the GCode processing pipeline.
Locales should be set once per any participating threads in tbb::parallel_pipeline.
It should fix the issue with appearing comma instead of the decimal point in generated Gcode.
2022-06-02 09:28:09 +02:00
Lukáš Hejl
81d43a2fd4 Added detection for corrupted PrusaSlicer.ini and fixed showing instructions on how to recover from it (#8217).
Previously when PrusaSlicer.ini was just partly corrupted, it could happen that PrusaSlicer.ini wasn't detected as corrupted, and it could cause that instruction on how to recover from this state wasn't shown, and PrusaSlicer crashed because wrong data from PrusaSlicer.ini was read.
2022-06-02 09:28:09 +02:00
Lukas Matena
70fa8ef29d Enforce first layer on experimental wipe tower (#7090) 2022-06-02 09:28:09 +02:00
tamasmeszaros
99c9e4a61d Fix collision after arrange when 'complete Individual objects' is ON
fixes #8335
2022-06-02 09:28:09 +02:00
Lukáš Hejl
04f9c4b5e0 Fixed a memory leak in the move assignment operator in ExtrusionEntityCollection. 2022-06-02 09:28:09 +02:00
tamasmeszaros
6d349dd3a7 Backport hollowing optimization into stable 2022-06-02 09:04:36 +02:00
tamasmeszaros
b3f7f64ee0 Avoid error on osx for tbb parallel for
Add comment to previous change
2022-06-02 09:04:35 +02:00
tamasmeszaros
e2007e41ba Try to fix linking of expat 2022-06-02 09:03:52 +02:00