575 Commits

Author SHA1 Message Date
PavelMikus
105b67c9a7 presorting seams before alignemnt
mesh decimation for speed up
2022-04-25 12:42:51 +02:00
PavelMikus
f018160e72 implemented polynomial alignment,
however, initital seam placement is not ideal
- hard to balance visual cues and angle information
2022-04-25 12:42:51 +02:00
PavelMikus
ffc7452d9e improved visibility calculation - it now considers normals and
accordingly counts only hits which have similar normal
2022-04-25 12:42:51 +02:00
PavelMikus
38a9d870c0 implemented seam alignment using exponential smoothing 2022-04-25 12:42:51 +02:00
PavelMikus
596bd68f18 refactoring, created perimters struct to store info,
removed alignment iterations, created dynamic ray count estimation
2022-04-25 12:42:51 +02:00
PavelMikus
53ff4a69e0 implemented debug files export 2022-04-25 12:42:51 +02:00
PavelMikus
3029053d43 fixed some problems according to code review
simplified blockers and enforcers
Pre-Refactoring version
2022-04-25 12:42:51 +02:00
PavelMikus
5a03f60c31 fixed bug: wrong estimation of angles inside holes 2022-04-25 12:42:51 +02:00
PavelMikus
356ed93ad7 Raft layers cause SeamPlacer crash - fix 2022-04-25 12:42:51 +02:00
PavelMikus
132f4bb590 bugfix: usage of undeclared M_PIf32 instead of PI 2022-04-25 12:42:51 +02:00
PavelMikus
4b3db29d32 refactoring into floats, fixed problems with float/double mixing,
returned to fixed ray count, yields better results
2022-04-25 12:42:51 +02:00
PavelMikus
8226061da4 so far best version 2022-04-25 12:42:51 +02:00
PavelMikus
36a4906536 refactored init method - split into several parts,
added blur filter to seam placement distribution
2022-04-25 12:42:51 +02:00
PavelMikus
1a25058456 workable version, some parameter tweaking probably still needed 2022-04-25 12:42:51 +02:00
PavelMikus
e8f740dabb implemented overhang calculation and alignemnt iterations for seams
now only external perimeters are considered which  reduced time complexity
2022-04-25 12:42:51 +02:00
PavelMikus
53e9bb3ebf integration of enforcers and blockers 2022-04-25 12:42:51 +02:00
PavelMikus
38a6e231f2 minor changes, more transparent parameters settings 2022-04-25 12:42:51 +02:00
PavelMikus
45b49ad545 initial demo
fixed KD tree neighbour search, finished refactoring of raycasts,
substantially improved performance of seam placement - seams
are now precomputed and their indexes stored such that place_seam does almost nothing.
2022-04-25 12:42:51 +02:00
PavelMikus
55e0f2dd83 refactoring raycaster, gathering only hitpoints and their normals. 2022-04-25 12:42:51 +02:00
PavelMikus
fea247f261 Fixed bug - the rays had opposite directions, so all of them flown away from the object; also fixed compilation bug - missing import of timer.h 2022-04-25 12:42:51 +02:00
PavelMikus
fdfe19ef49 init version of occlusion estimation, raycasting implemented but for some reason only parts of model are estimated 2022-04-25 12:42:51 +02:00
enricoturri1966
3ce2d3a700 #8176 - Tech ENABLE_USED_FILAMENT_POST_PROCESS - Fixes used filament data exported to gcode file not taking in account custom gcode 2022-04-13 15:27:46 +02:00
Lukas Matena
684733af52 Enforce first layer on experimental wipe tower (#7090) 2022-03-30 09:25:31 +02:00
enricoturri1966
6ee4457b31 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into et_lines_g2_g3 2022-03-21 08:54:04 +01:00
enricoturri1966
93d703518d Tech ENABLE_PROCESS_G2_G3_LINES - Improved detection of layer zs for gcode produced by other slicers 2022-03-21 08:53:55 +01:00
enricoturri1966
0bd3112b7a Reworked custom gcode toolpaths generation 2022-03-18 15:45:42 +01:00
enricoturri1966
82fe599cae Fixed warnings and build on MAC OS 2022-03-18 14:12:29 +01:00
enricoturri1966
21e6dccc12 Fixed conflicts after merge with master 2022-03-18 13:36:32 +01:00
enricoturri1966
8c8e908325 Tech ENABLE_PROCESS_G2_G3_LINES - Processing of gcode G2 and G3 lines 2022-03-18 13:34:53 +01:00
enricoturri1966
a7d466dc7c Tech ENABLE_Z_OFFSET_CORRECTION set as default 2022-03-18 08:32:35 +01:00
enricoturri1966
fb22612d0d Tech ENABLE_SPIRAL_VASE_LAYERS set as default 2022-03-17 15:12:03 +01:00
enricoturri1966
0a2001ed1c #8032 - GCodeProcessor - Fixed parsing of LAYER_CHANGE tag for spiral vase mode 2022-03-14 15:21:00 +01:00
Lukáš Hejl
6c51e5148c Fix of #7994 (Travel very close to the inner holes, could cross external perimeter when the avoid crossing perimeters was enabled.) 2022-03-07 10:48:17 +01:00
enricoturri1966
1d0af50a94 GCodeProcessor - Added processing of gcode line M220 2022-02-10 10:41:38 +01:00
Vojtech Bubnik
7989b72298 Fixing Perl unit tests: Fixed crash in calc_max_layer_height() 2022-02-07 11:11:29 +01:00
Vojtech Bubnik
6ed037ab7b Merge remote-tracking branch 'origin/stable' 2022-02-04 17:01:18 +01:00
enricoturri1966
f6b4cbdc32 Follow-up of 030f4601149704fb3213ef44ca9c9910a1548ed0 - compress_thumbnail_jpg() implemented using embedded libjpeg 2022-02-04 08:16:48 +01:00
enricoturri1966
030f460114 Follow-up of 87cff55856ae14096cd57f8e2542f1f1caef7167 - Implementation of compress_thumbnail_jpg() 2022-02-03 13:24:30 +01:00
Lukáš Hejl
bd65eb55b0 Added a missing include (GCC11.1 without PCH). 2022-02-03 08:36:24 +01:00
Vojtech Bubnik
086662b6a1 Fixed typo in thumbnail_QOI tag. 2022-02-02 17:43:39 +01:00
Vojtech Bubnik
87cff55856 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-02-02 17:37:46 +01:00
enricoturri1966
1fb41a8e22 #4881 - #5073 - #6336 - GCodeProcessor::AxisCoords using doubles in place of floats 2022-02-02 11:22:45 +01:00
enricoturri1966
0c0250750b #7843 - Added processing of gcode lines G60 and G61 for Marlin firmwares 2022-02-01 08:07:53 +01:00
enricoturri1966
8d94841fa3 Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev 2022-01-29 09:17:30 +01:00
Vojtech Bubnik
7da4bebe7a WIP GCode substitutions: Changed the format of gcode_substitutions by
adding an empty comment as a fourth parameter to each substitution.
In the future, we will provide a UI to show / edit the comment.
2022-01-27 17:02:16 +01:00
enricoturri1966
703aefa75c Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer into dev 2022-01-27 12:04:47 +01:00
Vojtech Bubnik
9828abb443 GCode find/replace: Another try to make a sensible "default" behavior
with the boost::regex implementation:
With no "single line", don't accept new lines with a dot '.'.
2022-01-26 13:57:30 +01:00
Vojtech Bubnik
a7520f47a6 GCodeFindReplace: Implemented perl's "match single line" option
to the back-end.
2022-01-25 16:28:18 +01:00
Lukas Matena
ed508d49d6 Changed the inner seam replacement threshold to 3*nozzle_diameter 2022-01-25 15:40:28 +01:00
Lukas Matena
b86effada0 Fixed one possible crash and a warning 2022-01-25 15:40:28 +01:00