mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-05-19 19:33:47 +00:00
FIX: remove duplicated filament change
1.Remove duplicated filament change after machine start GCode 2.Add missing filament change after machine start gcode jira:NONE Signed-off-by: xun.zhang <xun.zhang@bambulab.com> Change-Id: I97e1a3e8dc1ad39c95f763469086c2e360807288 (cherry picked from commit d61d0c7231df949515dce6238ba1e94e01386d03)
This commit is contained in:
@@ -2666,8 +2666,18 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||||||
//BBS: gcode writer doesn't know where the real position of extruder is after inserting custom gcode
|
//BBS: gcode writer doesn't know where the real position of extruder is after inserting custom gcode
|
||||||
m_writer.set_current_position_clear(false);
|
m_writer.set_current_position_clear(false);
|
||||||
m_start_gcode_filament = GCodeProcessor::get_gcode_last_filament(machine_start_gcode);
|
m_start_gcode_filament = GCodeProcessor::get_gcode_last_filament(machine_start_gcode);
|
||||||
// mark the first filament used in print
|
|
||||||
file.write_format(";VT%d\n",initial_extruder_id);
|
m_writer.init_extruder(initial_non_support_extruder_id);
|
||||||
|
// add the missing filament start gcode in machine start gcode
|
||||||
|
{
|
||||||
|
DynamicConfig config;
|
||||||
|
config.set_key_value("filament_extruder_id", new ConfigOptionInt((int)(initial_non_support_extruder_id)));
|
||||||
|
config.set_key_value("layer_num", new ConfigOptionInt(m_layer_index));
|
||||||
|
std::string filament_start_gcode = this->placeholder_parser_process("filament_start_gcode", print.config().filament_start_gcode.values.at(initial_non_support_extruder_id), initial_non_support_extruder_id);
|
||||||
|
file.writeln(filament_start_gcode);
|
||||||
|
// mark the first filament used in print
|
||||||
|
file.write_format(";VT%d\n", initial_extruder_id);
|
||||||
|
}
|
||||||
|
|
||||||
//flush FanMover buffer to avoid modifying the start gcode if it's manual.
|
//flush FanMover buffer to avoid modifying the start gcode if it's manual.
|
||||||
if (!machine_start_gcode.empty() && this->m_fan_mover.get() != nullptr)
|
if (!machine_start_gcode.empty() && this->m_fan_mover.get() != nullptr)
|
||||||
|
|||||||
Reference in New Issue
Block a user