* Improvements in Inner Outer Inner wall ordering logic
* Updated to BFS algorithm, made ordering more robust and corrected edge cases
* Doc updates
* Refinements in perimeter sorting
* Removal of touch threshold and code debugging to improve sequencing
* Code cleanup
* Code refinements on perimeter distance thresholds
* Extend perimeter re-ordering to more than inset index 2, to reduce travel moves when printing neighbouring features
* Refinements to IOI perimeter re-ordering algorithm to improve travel scenarios where multiple external perimeters are contained in the same island.
* Documentation updates
* Removed unnecessary code
* Removed bespoke to_points function and replaced with ExtrusionLine member already present. Removed squaredDistance and replaced with Eigen library call.
* Refactor code to move distancing functions to the multipoint class. Renamed for more clarity on their purpose.
* Fix z hop performed after retraction in PA pattern calibration. Fix zhop config value not used
* Updated gathering of z hop value method for consistency
* Increase granularity of extrusion move splitting for small line segments ending in an overhang
* Parameter tweak
* Increase granularity of estimation for curled perimeters
* Adjust parameters following experimentation with overhang prints
* Updated overhang segmentation logic
* Cleanup code comments
* Adaptive Pressure advance options setup
* Dynamic PA - PCHIP interpolator code and tests
* Integrate dynamic PA with slicing code - emit new PA values per speed change
* Link adaptive PA to role change instead of speed change
* Adaptive PA - Alpha 2
Reduce the frequency of requested PA changes by introducing a "state" variable.
Implement user toggle for adapting PA for external walls for overhangs
* Hide adaptive PA for overhangs
* Convert Adaptive PA to use volumetric flow model and start preparing for converting to Gcode post processor
* Converted Dynamic PA to a post processing filter. Reverted changes in GCode cpp and created tagging mechanism to allow filter to apply PA changes.
* Removed adaptive PA for overhangs
* Foundations for two dimensional adaptive PA based on acceleration and volumetric flow speed
* Minor code cleanup and updating of tooltips
* Renaming files for better clarity and generate classes documentation
* Update src/libslic3r/PrintConfig.cpp
Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
* Update src/libslic3r/PrintConfig.cpp
Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
* Update src/libslic3r/PrintConfig.cpp
Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
* Introduce average mm3_mm over the length of a multipath for adaptive PA
* Updates for multipath handling part 2
* Introduce average mm3_mm over the length of a multipath for adaptive PA
* Trigger PA evaluation more frequently to catch edge cases where speed changes across islands of the same feature type.
* Updates for multipath handling part 2
* Adaptive PA: Implement average flow estimation on loops
* Code formatting
* Fix adaptive PA not adapting for small disconnected external wall line segments.
* Updated to take max print speed of upcoming feature to calculate new PA value.
This is to resolve issue of incorrect PA value used when starting a new feature at an overhang.
* Code clean up
* Performance tuning
* Further performance tuning by reducing use of regex commands in the nested loops and fix bug preventing gcode line output
* Further performance tuning and tweaks to stop searching for max speed after the first travel move.
* Reduce debug information
* Updated debug info
* Fix an issue on seams on specific models when wipe before external perimeter was enabled. Also cleanup documentation and add new to-do's
* Prepare for adaptive PA for overhangs, fix wipe bug & clean up code and comments
* Initial commit for adapting PA when extruding fully overhanging perimeters
* Ignore wipe command when identifying current print speed
* Option to evaluate adaptive PA on overhang regions in preparation for Klipper experimental option testing
* Update to issue PA changes for varying flow conditions within the same feature
* Fix bug where adaptive PA was enabled erroneously for role changes and ignoring user's preference.
* Refactored some code
* More refactoring
* Some bug fixes and enabled comments only when verbose g-code is enabled
* Introduced dedicated PA option for bridges
* Code refactoring to optimise initialisation of PA processor (making it faster). Fix a bug where PA was not always set after a toolchange. Improve general error handling and robustness.
* Updates to adaptive PA tooltips
* Bridging PA check with Epsilon instead of 0.
* Adaptive PA: addressing comments
---------
Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
* POC - Do not slow down external perimeters to meet minimum layer time
* POC - Do not slow down external perimeters to meet minimum layer time - rework
* Revert "POC - Do not slow down external perimeters to meet minimum layer time"
This reverts commit d84ff93f90.
* Dont slow down external perimeters to meet layer time target v2
* Reverted previous implementation
* UI fixes for dont slow down for layer cooling
* Update dont slow down outer walls naming convention
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Potential fix for other layers bed temperature not applied
* Merge branch 'main' into Potential-fix-for-other-layers-bed-temperature-not-applied
* Merge branch 'main' into Potential-fix-for-other-layers-bed-temperature-not-applied
* ENH: Enabled gap fill algorithm for all solid fill types
* Made gap fill an option & refactored code into its own method
* Code comment updates
* Converted gap fill to enum and control filter out gap fill in the UI
* Update label for consistency
* Spelling mistake
* #3603 - fix "Wipe before external loop" causing blobs on single wall perimeters
* Updated parameters to pass by const reference to avoid re-creation of object
* ENH: Improve internal bridge detection for sloped surfaces
* Moved lightning detection out of the parallel threads
* Naming conventions
* Revised approach - use reduced expansion multipliers
* Further reduce filtering, flagged option as experimental
* Corrected code comment
* Updated tool tip
* Introduced filtering drop down option
* Attempt to fix retraction issues with PA pattern calibration
* PA pattern test fix - retract and wipe on layer change
* Naming convention
* fix crash
* PR: Fix crash when printing by object after 1.8.2 code merge
* PR: Revert change in tool ordering - reorder_extruders_for_minimum_flush_volume to enable tool sequencing based on projected flush volumes
* Bumping up reordering to up to 12 different colors on same layer.
* Updated tool ordering to distinguish between bbl printers when reordering tools
* Update to code comment
* Updated population handling of is_bbl_printer variable
* Wipe retraction adjusted based on available wipe distance and retraction speed
* Wipe Improvements: Removed debug code, removed retract before wipe and made the respect retract speed an option.
* Wipe improvements: Spelling & grammar
* Revert "Wipe improvements: Spelling & grammar"
This reverts commit c8f8612b3f.
* Revert "Wipe Improvements: Removed debug code, removed retract before wipe and made the respect retract speed an option."
This reverts commit ba515ffb62.
* Wipe improvements: Using retraction before wipe parameter to judge when to do excess retraction
* Wipe Improvements: Floating point comparison check
* Wipe Improvements: Refactoring the code
* Wipe Improvements: Updated Wipe Distance tool tip
* Wipe Improvements: Removed redundant code
* Wipe Improvements: Use unscale_
* FIX: mistake in filament vendor
jira:[NEW]
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3af712e417379d8b98ae18feebffe465bfa1e72d
* NEW:set customized materials for the A1 P1 series
Change-Id: I9c34f62867c074bf9ebb315013e5e40526e0eac7
* FIX: the flow rate ratio crashes after load model
for third party printer
Jira: 5244
Change-Id: Idd829c9d99eeba9d180653ac8de4e51b9a0d6370
* FIX: The maximum value is not printed in PA line mode
Jira: 5046 4951
Change-Id: Ic81f9a75ce7f088fe950fdde283ff5c942cd6e83
* ENH:add preset check for sending files
Change-Id: Ia3313d281b5ce91e277b380498014ffdac5debd3
* FIX: locale loading user preset
Change-Id: I88521e4b10cb802d9253eb79a6b78b3286f15a33
Jira: STUDIO-5436
* FIX: sync user preset notify crash on exit
Change-Id: I88f5dbcbd487293ea847ea6092efb61744399541
Jira: STUDIO-5413
* ci: update build version to 01.08.01.56
Change-Id: Id7a9718d5f920da50d52fd2ef220acf5d3270d3c
* GUI/Field: Fix crash in color picker init (#2220)
wxButton->GetBitmap() may return an invalid wxBitmap.
Guard against this.
* FIX: custom filament preset display in cali history issue
jira: new
Change-Id: I4145450a231adff542ab1a7428b3479f4074e06a
* FIX: meshboolean transform result issue
jira: STUDIO-5425
Change-Id: If66fe909ce4458c1b3192e4fd8a3d758fe7c7eaa
* FIX: fix combobox and delete btn in filament setting enabled
Jira: XXXX
Change-Id: I8b659bd77ceb97c8cea9d3e5e931f4ea50822721
* ci: update build version to 01.08.01.57
Change-Id: I7a6f5439863ca81275ae8b80f1b5cf0bb36c4c0f
* Fix crashing of flow rate calibration post BS 1.8 merge
* Revert Staggered Inner Seam logic from Prusa slicer that was overwritten by the BS1.8 update
---------
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: mia <652892+mia-0@users.noreply.github.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
* Dev 1.9 - Regroup Advanced Quality Options
* Regroup Advanced Quality Options
* Regroup advanced quality options and flow rate labels
* Updates labels for consistency. Renamed Order of walls to Walls printing order. Updated walls printing order and print infill first tooltip
* Another option spelling mistake
* Another spelling mistake part 2
* Updated localisation files
* Updated de localisation file post upstream merge to resolve conflicts
* Fix merge error when transferring change to branch.
* update locale file for one more message
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Updated tool tip and removed min print speed disabling when slowdown for layer cooling is de-selected
* Updated tool tip to make it explicit when this setting is used.
* Overhang perimeter handling
Updated code to handle overhang perimeters as an overhang and not as a bridge.
* Preparing to add curled extrusions identification
* Porting curling calculations from Prusa Slier 2.6.1
* Prototype 1 - slowdown extended to detect curled edges and further reduce speed
First prototype of the code submitted.
* Working prototype - 2
Code is now finally working - external perimeters are slowed down as needed when there is likelyhood of curling up.
ToDo:
1. Reslicing the model causes the algorithm not to run - need to find where this fails to trigger the call for this.
2. Slowdown of internal perimeters not working yet.
* Updated to use overhang wall speed instead of bridging speed for this algorithm
* Fixed bug in speed calculation and tweaked parameters for high speed printer
Fixed bug in speed calculation and tweaked parameters for high speed printer
* Attempting to fix "set started" not being set
* Parameter tweak after print tests
* Fixed estimation not running when model is re-sliced.
* Removing debug printf statements and fixed threading flag.
* Fixed threading
* Parameter tweaks following print tests
* Made this as an option in the GUI
* Reintroduced handling of bridges as per original design
* UI line toggling when option makes sense to be visible.
* Fixed bug in field visibility & made it default to off
* Code optimisation
* Initial commit of code from Prusa Slicer 2.6.1
* Ported ExtrusionRole from Prusa Slicer 2.6.1
* fix compile errors
* Update GCode.hpp
* code changes to invoke pressure equalizer
* attempting to trigger pressure equalizer
(Not compiling)
* Update Fill.cpp
* Update Fill.cpp
* Pressure equaliser layer result update
* Further commits
* Merged PR https://github.com/prusa3d/PrusaSlicer/pull/9622
* First complete working version
* Update PressureEqualizer.cpp
* Implemented parameter in GUI
* Toggle fields according to compatibility
* Updated UI toggles between extrusion rate slope and arc fitting.
* Updated tooltip
* Introduced parameter smoothing segment length
This parameter influences the number of division a line will undergo in response to the requirement to adhere to the extrusion rate flow adjustment.
* Internal parameter and tool tip tweaking
* Parameter and tool tip tweaking
* Updated parameters and tooltip following testing.
* Sync PressureEq with latest PrusaSlicer
* Revert "Sync PressureEq with latest PrusaSlicer"
This reverts commit 131fb94c6b.
---------
Co-authored-by: MGunlogson <MGunlogson@users.noreply.github.com>
Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
* Overhang perimeter handling
Updated code to handle overhang perimeters as an overhang and not as a bridge.
* Preparing to add curled extrusions identification
* Porting curling calculations from Prusa Slier 2.6.1
* Prototype 1 - slowdown extended to detect curled edges and further reduce speed
First prototype of the code submitted.
* Working prototype - 2
Code is now finally working - external perimeters are slowed down as needed when there is likelyhood of curling up.
ToDo:
1. Reslicing the model causes the algorithm not to run - need to find where this fails to trigger the call for this.
2. Slowdown of internal perimeters not working yet.
* Updated to use overhang wall speed instead of bridging speed for this algorithm
* Fixed bug in speed calculation and tweaked parameters for high speed printer
Fixed bug in speed calculation and tweaked parameters for high speed printer
* Attempting to fix "set started" not being set
* Parameter tweak after print tests
* Fixed estimation not running when model is re-sliced.
* Removing debug printf statements and fixed threading flag.
* Fixed threading
* Parameter tweaks following print tests
* Made this as an option in the GUI
* Reintroduced handling of bridges as per original design
* UI line toggling when option makes sense to be visible.
* Fixed bug in field visibility & made it default to off
* Code optimisation
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Updated inner outer inner algorithm to cater for edge case where an internal island with multiple internal perimeters would cause the external island to fall back to outer-> inner wall ordering.
Updated inner outer inner algorithm to cater for edge case where an internal island with multiple internal perimeters would cause the external island to fall back to outer-> inner wall ordering.
* Reworked the inner outer inner algorithm to better work with more than 3 perimeters.
* Code comment updates. Removed error check code.
* Cleaned up code and comments
Cleaned up code and comments
* Disabled inner outer inner algorithm on first layer
Disabling inner outer inner algorithm and using inner to outer wall ordering to promote bed adhesion as having isolated perimeters on the bed has resulted on occasion to warping or incomplete adherence to the bed.
* Code optimisation