FIX: spiral vase not support timelapse for i3 structure

Jira: XXXX
Change-Id: I2dd5c285c4d687d72a2dfcf94d0ff75a4d5dd498
This commit is contained in:
zhimin.zeng 2023-09-11 18:24:53 +08:00 committed by Lane.Wei
parent af241d4c5a
commit ee1ea1c1b9
4 changed files with 9 additions and 4 deletions

View file

@ -289,7 +289,6 @@ static constexpr const char* TIMELAPSE_TYPE_ATTR = "timelapse_type";
static constexpr const char* OUTSIDE_ATTR = "outside"; static constexpr const char* OUTSIDE_ATTR = "outside";
static constexpr const char* SUPPORT_USED_ATTR = "support_used"; static constexpr const char* SUPPORT_USED_ATTR = "support_used";
static constexpr const char* LABEL_OBJECT_ENABLED_ATTR = "label_object_enabled"; static constexpr const char* LABEL_OBJECT_ENABLED_ATTR = "label_object_enabled";
static constexpr const char* TIMELAPSE_TYPE_ATTR = "timelapse_type";
static constexpr const char* SKIPPED_ATTR = "skipped"; static constexpr const char* SKIPPED_ATTR = "skipped";
static constexpr const char* OBJECT_TYPE = "object"; static constexpr const char* OBJECT_TYPE = "object";

View file

@ -2859,7 +2859,7 @@ GCode::LayerResult GCode::process_layer(
PrinterStructure printer_structure = m_config.printer_structure.value; PrinterStructure printer_structure = m_config.printer_structure.value;
bool need_insert_timelapse_gcode_for_traditional = false; bool need_insert_timelapse_gcode_for_traditional = false;
if (printer_structure == PrinterStructure::psI3 && (!m_wipe_tower || !m_wipe_tower->enable_timelapse_print())) { if (printer_structure == PrinterStructure::psI3 && !m_spiral_vase && (!m_wipe_tower || !m_wipe_tower->enable_timelapse_print())) {
need_insert_timelapse_gcode_for_traditional = true; need_insert_timelapse_gcode_for_traditional = true;
} }
bool has_insert_timelapse_gcode = false; bool has_insert_timelapse_gcode = false;
@ -2881,7 +2881,7 @@ GCode::LayerResult GCode::process_layer(
gcode += this->change_layer(print_z); // this will increase m_layer_index gcode += this->change_layer(print_z); // this will increase m_layer_index
m_layer = &layer; m_layer = &layer;
m_object_layer_over_raft = false; m_object_layer_over_raft = false;
if (printer_structure == PrinterStructure::psI3 && !need_insert_timelapse_gcode_for_traditional) { if (printer_structure == PrinterStructure::psI3 && !need_insert_timelapse_gcode_for_traditional && !m_spiral_vase) {
std::string timepals_gcode = insert_timelapse_gcode(); std::string timepals_gcode = insert_timelapse_gcode();
gcode += timepals_gcode; gcode += timepals_gcode;
m_writer.set_current_position_clear(false); m_writer.set_current_position_clear(false);

View file

@ -282,6 +282,12 @@ void ConfigManipulation::update_print_fff_config(DynamicPrintConfig* config, con
config->opt_enum<TimelapseType>("timelapse_type") == TimelapseType::tlTraditional)) config->opt_enum<TimelapseType>("timelapse_type") == TimelapseType::tlTraditional))
{ {
wxString msg_text = _(L("Spiral mode only works when wall loops is 1, support is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional.")); wxString msg_text = _(L("Spiral mode only works when wall loops is 1, support is disabled, top shell layers is 0, sparse infill density is 0 and timelapse type is traditional."));
auto printer_structure_opt = wxGetApp().preset_bundle->printers.get_edited_preset().config.option<ConfigOptionEnum<PrinterStructure>>("printer_structure");
if (printer_structure_opt && printer_structure_opt->value == PrinterStructure::psI3) {
msg_text += _(L(" But machines with I3 structure will not generate timelapse videos."));
}
if (is_global_config) if (is_global_config)
msg_text += "\n\n" + _(L("Change these settings automatically? \n" msg_text += "\n\n" + _(L("Change these settings automatically? \n"
"Yes - Change these settings and enable spiral mode automatically\n" "Yes - Change these settings and enable spiral mode automatically\n"

View file

@ -2840,7 +2840,7 @@ wxString Plater::get_slice_warning_string(GCodeProcessorResult::SliceWarning& wa
} else if (warning.msg == NOZZLE_HRC_CHECKER) { } else if (warning.msg == NOZZLE_HRC_CHECKER) {
return _L("The nozzle hardness required by the filament is higher than the default nozzle hardness of the printer. Please replace the hardened nozzle or filament, otherwise, the nozzle will be attrited or damaged."); return _L("The nozzle hardness required by the filament is higher than the default nozzle hardness of the printer. Please replace the hardened nozzle or filament, otherwise, the nozzle will be attrited or damaged.");
} else if (warning.msg == NOT_SUPPORT_TRADITIONAL_TIMELAPSE) { } else if (warning.msg == NOT_SUPPORT_TRADITIONAL_TIMELAPSE) {
return _L("Enable traditional timelapse will cause artifacts on this model."); return _L("Enabling traditional timelapse photography may cause surface imperfections. It is recommended to change to smooth mode.");
} else { } else {
return wxString(warning.msg); return wxString(warning.msg);
} }