|
@@ -813,9 +813,7 @@ bool GCodeProcessor::contains_reserved_tags(const std::string& gcode, unsigned i
|
|
}
|
|
}
|
|
|
|
|
|
GCodeProcessor::GCodeProcessor()
|
|
GCodeProcessor::GCodeProcessor()
|
|
-#if ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
: m_options_z_corrector(m_result)
|
|
: m_options_z_corrector(m_result)
|
|
-#endif // ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
{
|
|
{
|
|
reset();
|
|
reset();
|
|
m_time_processor.machines[static_cast<size_t>(PrintEstimatedStatistics::ETimeMode::Normal)].line_m73_main_mask = "M73 P%s R%s\n";
|
|
m_time_processor.machines[static_cast<size_t>(PrintEstimatedStatistics::ETimeMode::Normal)].line_m73_main_mask = "M73 P%s R%s\n";
|
|
@@ -1179,9 +1177,7 @@ void GCodeProcessor::reset()
|
|
m_use_volumetric_e = false;
|
|
m_use_volumetric_e = false;
|
|
m_last_default_color_id = 0;
|
|
m_last_default_color_id = 0;
|
|
|
|
|
|
-#if ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
m_options_z_corrector.reset();
|
|
m_options_z_corrector.reset();
|
|
-#endif // ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
|
|
|
|
#if ENABLE_GCODE_VIEWER_DATA_CHECKING
|
|
#if ENABLE_GCODE_VIEWER_DATA_CHECKING
|
|
m_mm3_per_mm_compare.reset();
|
|
m_mm3_per_mm_compare.reset();
|
|
@@ -1845,9 +1841,7 @@ void GCodeProcessor::process_tags(const std::string_view comment, bool producers
|
|
store_move_vertex(EMoveType::Color_change);
|
|
store_move_vertex(EMoveType::Color_change);
|
|
CustomGCode::Item item = { static_cast<double>(m_end_position[2]), CustomGCode::ColorChange, extruder_id + 1, color, "" };
|
|
CustomGCode::Item item = { static_cast<double>(m_end_position[2]), CustomGCode::ColorChange, extruder_id + 1, color, "" };
|
|
m_result.custom_gcode_per_print_z.emplace_back(item);
|
|
m_result.custom_gcode_per_print_z.emplace_back(item);
|
|
-#if ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
m_options_z_corrector.set();
|
|
m_options_z_corrector.set();
|
|
-#endif // ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
process_custom_gcode_time(CustomGCode::ColorChange);
|
|
process_custom_gcode_time(CustomGCode::ColorChange);
|
|
process_filaments(CustomGCode::ColorChange);
|
|
process_filaments(CustomGCode::ColorChange);
|
|
}
|
|
}
|
|
@@ -1860,9 +1854,7 @@ void GCodeProcessor::process_tags(const std::string_view comment, bool producers
|
|
store_move_vertex(EMoveType::Pause_Print);
|
|
store_move_vertex(EMoveType::Pause_Print);
|
|
CustomGCode::Item item = { static_cast<double>(m_end_position[2]), CustomGCode::PausePrint, m_extruder_id + 1, "", "" };
|
|
CustomGCode::Item item = { static_cast<double>(m_end_position[2]), CustomGCode::PausePrint, m_extruder_id + 1, "", "" };
|
|
m_result.custom_gcode_per_print_z.emplace_back(item);
|
|
m_result.custom_gcode_per_print_z.emplace_back(item);
|
|
-#if ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
m_options_z_corrector.set();
|
|
m_options_z_corrector.set();
|
|
-#endif // ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
process_custom_gcode_time(CustomGCode::PausePrint);
|
|
process_custom_gcode_time(CustomGCode::PausePrint);
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
@@ -1872,9 +1864,7 @@ void GCodeProcessor::process_tags(const std::string_view comment, bool producers
|
|
store_move_vertex(EMoveType::Custom_GCode);
|
|
store_move_vertex(EMoveType::Custom_GCode);
|
|
CustomGCode::Item item = { static_cast<double>(m_end_position[2]), CustomGCode::Custom, m_extruder_id + 1, "", "" };
|
|
CustomGCode::Item item = { static_cast<double>(m_end_position[2]), CustomGCode::Custom, m_extruder_id + 1, "", "" };
|
|
m_result.custom_gcode_per_print_z.emplace_back(item);
|
|
m_result.custom_gcode_per_print_z.emplace_back(item);
|
|
-#if ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
m_options_z_corrector.set();
|
|
m_options_z_corrector.set();
|
|
-#endif // ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -2455,12 +2445,8 @@ void GCodeProcessor::process_G1(const GCodeReader::GCodeLine& line)
|
|
if (m_forced_height > 0.0f)
|
|
if (m_forced_height > 0.0f)
|
|
m_height = m_forced_height;
|
|
m_height = m_forced_height;
|
|
else {
|
|
else {
|
|
- if (m_end_position[Z] > m_extruded_last_z + EPSILON) {
|
|
|
|
|
|
+ if (m_end_position[Z] > m_extruded_last_z + EPSILON)
|
|
m_height = m_end_position[Z] - m_extruded_last_z;
|
|
m_height = m_end_position[Z] - m_extruded_last_z;
|
|
-#if !ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
- m_extruded_last_z = m_end_position[Z];
|
|
|
|
-#endif // !ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
|
|
|
|
if (m_height == 0.0f)
|
|
if (m_height == 0.0f)
|
|
@@ -2469,10 +2455,8 @@ void GCodeProcessor::process_G1(const GCodeReader::GCodeLine& line)
|
|
if (m_end_position[Z] == 0.0f)
|
|
if (m_end_position[Z] == 0.0f)
|
|
m_end_position[Z] = m_height;
|
|
m_end_position[Z] = m_height;
|
|
|
|
|
|
-#if ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
m_extruded_last_z = m_end_position[Z];
|
|
m_extruded_last_z = m_end_position[Z];
|
|
m_options_z_corrector.update(m_height);
|
|
m_options_z_corrector.update(m_height);
|
|
-#endif // ENABLE_FIX_PREVIEW_OPTIONS_Z
|
|
|
|
|
|
|
|
#if ENABLE_GCODE_VIEWER_DATA_CHECKING
|
|
#if ENABLE_GCODE_VIEWER_DATA_CHECKING
|
|
m_height_compare.update(m_height, m_extrusion_role);
|
|
m_height_compare.update(m_height, m_extrusion_role);
|