Commit Graph

582 Commits

Author SHA1 Message Date
Lukáš Hejl
8c0db761c1 Fix #8716, #8717, and #8718: The pressure equalizer was producing a malformed GCode that caused underextrusion. 2022-08-19 15:07:11 +02:00
PavelMikus
be9cae74a0 Random seam fix - pseudorandom generator instead of rand() 2022-08-18 17:19:58 +02:00
PavelMikus
d746ece41a fix performance problem in seam placer - do not generate merged islands for each layer; use lslices insted
affects also overhang estiamtion and thus other params
2022-08-18 17:19:58 +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
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
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
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
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
Vojtech Bubnik
1d41ffdd7d When placing seam, never produce segments shorter than 1.5um. 2022-06-28 10:30:04 +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
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
PavelMikus
f3d0e3c399 fix compile time warning (truncating double to float) 2022-06-21 11:11:10 +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
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
PavelMikus
e70aea8b30 SeamPLacer: for extrusion loops, check all paths for ExternalPerimeter role
small parameter tuning
2022-06-16 10:12:44 +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
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
0463518dc3 Attempted to reenable the old pressure equalizer and fix its issues. 2022-06-09 21:07:41 +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