561 Commits

Author SHA1 Message Date
Vojtech Bubnik
f1952b9591 Fix of SPE-1933
Fixing crash with pressure equalizer enabled.
This crash was introduced with ArcWelder integration.
2023-10-04 11:30:41 +02:00
Vojtech Bubnik
a0441dac14 ArcWelder:
Reducing the chance of creating segments shorter than G-code quantization
distance.
Improving fitting by non-linear least squares.
2023-10-02 09:59:06 +02:00
Lukas Matena
f599ddca8f Label objects: use non-convex projection if it only contains one (Ex)Polygon, remove unused code, tidy includes 2023-09-26 11:24:19 +02:00
Lukas Matena
501cfb64f9 Label objects: integrating the recently merged PR:
- code from @jschuh's functions moved into respective functions in LabelObjects class
- name no longer contains object_id, instance_id is newly 1-based
- replacing banned characters using std::replace_if
2023-09-26 11:24:19 +02:00
Justin Schuh
e659e96b04 Support Klipper exclude_objects feature (PR #10618):
comment by @lukasmatena: The functions are not called anywhere because of how I resolved conflicts. I will integrate the functions into current PrusaSlicer in the next commit.
2023-09-26 11:24:19 +02:00
Lukas Matena
fe3cf27394 Label objects: refactoring + fix of object/instance indexing when instances are rotated/out-of-bed 2023-09-26 11:24:19 +02:00
Lukas Matena
37dc3378ec Label objects: List of objects moved before custom start gcode, quotes added for M486 A on RRF 2023-09-26 11:24:18 +02:00
Lukas Matena
ef31e4f487 LabelObjects: differentiate based on firmware flavor, change M486 N to M486 A 2023-09-26 11:24:18 +02:00
Lukas Matena
395a5639cc Label objects: rename Marlin -> Firmware-specific, updated tooltip 2023-09-26 11:24:18 +02:00
Lukas Matena
5d50a91c30 Label objects refactoring (enum->enum class, initial header export separated in a dedicated function) 2023-09-26 11:24:18 +02:00
Lukas Matena
6d41a76af7 M486 cancel object implementation:
- gcode_label_objects changed from coBool to coEnum
- the start-end pairs are emitted at the start for all objects
2023-09-26 11:24:18 +02:00
Vojtech Bubnik
9824d0e4cc ArcWelder: Hot fix for producing extremely short arches, that get
quantized to zero length by the G-code export.
2023-09-19 13:56:53 +02:00
Oleksandra Yushchenko
c6ce4a662e
Merge pull request #50 from Prusa-Development/ys_thumbnails_refact
Thumbnails refactoring
2023-09-13 15:29:20 +02:00
YuSanka
cfc520c97a Thumbnails refactoring: Next round
* Check errors state on all places of its using (throw exceptions or show a warnings message)
+ To backward compatibility, save "thumbnails_format" value to the config
+ deep_diff() function is extended for the case of "thumbnails" comparison
+ Added unit tests to:
  * check a load of configuration for "thumbnails" and "thumbnails_format" options
  * check return values for make_and_check_thumbnail_list() function
2023-09-13 15:24:40 +02:00
Lukas Matena
d389ce91f6 Custom GCode editor: Updated tooltips, fixed end_filament_gcode, fixed type of filament_preset 2023-09-13 10:14:11 +02:00
YuSanka
b8bb7f2716 Edit custom G-codes: Improvements
* Prepared ConfigDefs for placeholders used in EditGCodeDialog.
* Removed unused code and files
* DEBUG mode only: Added check of placeholder's existence in custom_gcode_specific_placeholders and custom_gcode_specific_config_def during the custom G-code parsing.
2023-09-13 10:14:11 +02:00
Lukas Matena
c8263d1da1 Fixed ooze prevention when 'other layers' temp is set to zero (#11194, SPE-1856) 2023-09-06 09:17:41 +02:00
enricoturri1966
53adc68717 Tech ENABLE_BINARIZED_GCODE set as default 2023-09-05 12:17:47 +02:00
Vojtech Bubnik
8dad25efc4 Merge branch 'master' into master_262 2023-09-04 14:44:32 +02:00
ps_copyright
f32859c302 final copyright headers 2023-09-01 14:49:07 +02:00
Vojtech Bubnik
d86e4169de Fix of previous commit. 2023-09-01 13:18:46 +02:00
Vojtech Bubnik
4580e69d86 ArcWelder: Fixed NaN when exporting arches with nearly zero radii. 2023-09-01 13:05:22 +02:00
Vojtech Bubnik
c01c863d8b Merge branch 'master' into master_262 2023-08-31 17:16:20 +02:00
Lukas Matena
1f510bcc00 Fixed access violation when using multimaterial priming with multi-extruder printer (#11174, #11197, SPE-1849) 2023-08-31 12:43:10 +02:00
Vojtech Bubnik
529f1fb395 Merge branch 'et_spe1784_binary_gcode' into master_262 2023-08-30 18:52:55 +02:00
Vojtech Bubnik
014953c864 Merge branch 'et_spe_1784_binary_gcode' into master_262 2023-08-30 12:52:02 +02:00
Vojtech Bubnik
015a24133a Fixed some compilation warnings. 2023-08-30 12:51:35 +02:00
YuSanka
55d5921d53 Editing of Custom G-code: Partially automation to get a list of placeholders for custom gcodes
+ Added missed resources
2023-08-29 11:47:44 +02:00
Vojtech Bubnik
212bf21b2d Fix of SPE-1849, GH #11174: Access violation error when slicing
Fixed access of an undefined extruder at the start of G-code export
from wipe tower generator.
2023-08-29 10:56:54 +02:00
YuSanka
a6dea25243 WIP: Thumbnails improvements: Merge "thumbnails" and "thumbnails_format" options into just one "thumbnails" option with coString type 2023-08-29 09:20:49 +02:00
Vojtech Bubnik
1c26f0bf60 Merge branch 'master_262' into et_spe1784_binary_gcode 2023-08-28 18:53:30 +02:00
enricoturri1966
81b137eb06 Merge branch 'master' of https://github.com/Prusa-Development/PrusaSlicerPrivate into et_spe1784_binary_gcode 2023-08-22 08:37:47 +02:00
enricoturri1966
bfbe4dacae Few small refactorings 2023-08-21 14:26:03 +02:00
Lukas Matena
4f66559b1e Polishing the multiextruder ramming 2023-08-21 12:24:50 +02:00
enricoturri1966
6b1dc90075 Added new printer metadata for binary gcode files 2023-08-10 10:30:28 +02:00
enricoturri1966
5deb4470c7 Changes required by updated library libbgcode 2023-08-04 14:44:45 +02:00
enricoturri1966
28346f78dd Fixed naming of metadata exported to gcode file in binary format 2023-08-04 08:33:28 +02:00
enricoturri1966
ec16420f11 Integrated library libbgcode 2023-08-03 12:57:55 +02:00
Vojtech Bubnik
e0baccd654 ArcWelder: Disabled for pressure equalizer.
Fixed some compiler warnings
2023-07-27 10:04:21 +02:00
Vojtech Bubnik
fa0986c0c5 Rebased pm_arcwelder_overhangs_port to vb_arc_welder 2023-07-27 09:17:35 +02:00
enricoturri1966
f02e8e3438 Renamed namespace 2023-07-27 09:04:44 +02:00
Pavel
bf6a8dc0b0 updating the gcode extrude to support new overhang attributes 2023-07-26 11:43:01 +02:00
Vojtech Bubnik
98c011d59b ArcWelder: Improved resolution of arc discretization in G-code preview 2023-07-26 11:24:32 +02:00
enricoturri1966
a11009c3e0 SPE-1784: New compressed (binary) gcode format integration
Populated printer metadata block

Small optimization for print metadata
2023-07-21 08:29:13 +02:00
enricoturri1966
3f5de75bae SPE-1784: New compressed (binary) gcode format integration
Added GCode Block save/load with no encoding

Changed blocks order to: File metadata|Printer metadata|Thumbnails[]|Print metadata|Slicer metadata|GCode[]
2023-07-20 14:20:00 +02:00
enricoturri1966
ecb1a23edd SPE-1784: New compressed (binary) gcode format integration
1st installment as part of tech ENABLE_BINARIZED_GCODE

Still missing GCode Block save/load
2023-07-19 13:18:04 +02:00
Vojtech Bubnik
bde6fb2528 ArcWelder: Smooth interpolation of skirt & brim
Lower resolution (higher decimation rate) for
sparse infill: 3x
support: 4x
skirt+brim: 4x
2023-07-18 11:31:23 +02:00
Vojtech Bubnik
594e36c70a ArcWelder bugfixes 2023-07-17 14:18:56 +02:00
Vojtech Bubnik
7551b4ffd3 ArcWelder: Bugfixes & switchable G2/3 R vs. IJ 2023-07-14 16:22:03 +02:00
Vojtech Bubnik
19062b4d5f ArcWelder path interpolation based on the work by Brad Hochgesang @FormerLurker.
WIP GCode/SmoothPath.cpp,hpp cache for interpolating extrusion path with arches.
Removed Perl test t/geometry.t, replaced with C++ tests.
Refactored ExtrusionEntity and derived classes to hold extrusion attributes in new ExtrusionFlow/ExtrusionAttributes classes.
Reworked path ordering in G-code export to never copy polylines, but to work with a new "flipped" attribute.
Reworked G-code export to interpolate extrusion paths with smooth paths and to extrude those smooth paths.
New parameters: arc_fitting, arc_fitting_tolerance
Renamed GCode class to GCodeGenerator
Moved GCodeWriter.cpp/hpp to GCode/
Moved Wipe from from GCode.cpp,hpp to GCode/Wipe.cpp,hpp
Moved WipeTowerIntegration from GCode.cpp,hpp to GCode/WipeTowerIntegration.cpp,hpp
New variant of douglas_peucker() to simplify range of iterators in place.
Refactored wipe in general and wipe on perimeters / hiding seams.

WIP: Convert estimate_speed_from_extrusion_quality() and its application to smooth paths.
WIP: Cooling buffer to process G2G3, disable arc fitting for filters that cannot process it.
2023-07-13 11:54:42 +02:00