In the safe position calculation for time-lapse photography in traditional mode of piece-by-piece printing, for parts not currently being printed, the maximum expansion radius is used for parts higher than the current layer, and half of the expansion radius is used for parts lower than the current layer height; half of the expansion radius is used for the parts themselves. This reduces unnecessary avoidance.
jira: STUDIO-13194
Change-Id: Id6ce03af29c9ebba974ea57ec41cca757067027a
(cherry picked from commit 68c7f41900049e64d37d792503653ce5302759d8)
In gcode processor, the result check, increased the tolerance of printable area detection to 2mm, to adaption to the requirement of command line slicing.
jira: none
Change-Id: I5be4d6396989c35ae394339376c1133c8862c075
(cherry picked from commit 2f09c98caa9d2afc3e33a0bf17c6a6bb39992e0c)
0-sized extrusion path are now excluded from the heated bed range check to avoid false positive detection.
jira: none
Change-Id: Ia4bfff77880d107ce6b9542ef770050201ff0d90
(cherry picked from commit 00d9aedabed7e6b25767ddfe9871488f629c0dde)
erCustom extrusions are now excluded from the heated bed range check to avoid initial routing issues.
jira: STUDIO-13885
Change-Id: I706a85113fe7b6f5e1a3b67f5bc16d674ad85577
(cherry picked from commit c8b4f3c778a3c1a023693b9b4961da261507ae8f)
Added a check for Gcode traces outside the printable area after the backend slicer, allowing command-line slicers to detect abnormal results. The GCodeProcessor's m_result.gcode_check_result.error_code now includes not only dual-head print range checks, but also checks for the machine's plate print range, wrapping detection area, and height violations.
jira: none
Change-Id: I44072ece3b4b525c77328cec2f76e205eb559cc4
(cherry picked from commit 054f936243968687f536170374a233ec912e8e42)
1. Sometimes the first layer is too small and does not have enough space to extrude.That will make first layer extruders empty
jira: STUDIO-13030
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I69b99ab74101c772f4c91e955060e403988bb91c
(cherry picked from commit 9699397858c6d52d027e79e91041a9dac7280bba)
* Enhance GCode handling for Z-axis movements
- Updated `travel_to_z` method to include a `force` parameter, allowing forced Z movements.
- Modified GCode generation logic to ensure Z position is restored after unknown last positions.
- Enforce z restoreation after tool changer
* Improve filament_multitool_ramming logic
* fix indent
/run/build/BambuStudio/src/libslic3r/GCode/ToolOrderUtils.hpp:14:26: error: ‘numeric_limits’ is not a member of ‘std’
14 | const int INF = std::numeric_limits<int>::max();
| ^~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/GCode/ToolOrderUtils.cpp:545:66: error: ‘unordered_set’ in namespace ‘std’ does not name a template type
545 | static std::vector<T> collect_filaments_in_groups(const std::unordered_set<unsigned int>& group, const std::vector<unsigned int>& filament_list) {
| ^~~~~~~~~~~~~
(cherry picked from commit 059e18aa38ccc715a6c1f2dc1ceb9af1940c7a17)
/run/build/BambuStudio/src/libslic3r/GCode/WipeTower.cpp:3327:26: error: ‘offset’ was not declared in this scope; did you mean ‘off_t’?
3327 | outer_wall = offset(outer_wall, scaled(spacing)).front();
| ^~~~~~
| off_t
(cherry picked from commit c77afa7096c48c2b3e2559b39252bafca3f87b28)
/run/build/BambuStudio/src/libslic3r/GCode/WipeTower.hpp:31:12: error: ‘TriangleMesh’ does not name a type
31 | static TriangleMesh its_make_rib_tower(float width, float depth, float height, float rib_length, float rib_width, bool fillet_wall);
| ^~~~~~~~~~~~
<snip>
/run/build/BambuStudio/src/libslic3r/GCode/WipeTower.hpp:33:12: error: ‘Polygon’ does not name a type
33 | static Polygon rib_section(float width, float depth, float rib_length, float rib_width, bool fillet_wall);
| ^~~~~~~
<snip>
/run/build/BambuStudio/src/libslic3r/GCode/WipeTower.hpp:200:21: error: ‘Polylines’ was not declared in this scope
200 | std::map<float, Polylines> get_outer_wall() const
| ^~~~~~~~~
<snip>
(cherry picked from commit ea2c021427dddcddb8a4e9e41c0f649dd727fdf9)
1. set wipe tower real height
2. fix wipe tower small arc error
3. add rib_width constraint to ensure that the rib wall of the wipetower are attached to the infill.
jira: STUDIO-10540
Change-Id: Idfdc809f0236121d98587ac2a09a2ebbf5caf945
(cherry picked from commit 3a7dcfd23249571224a4d538c55907a0a5c6154d)