diff --git a/src/libslic3r/Fill/Fill.cpp b/src/libslic3r/Fill/Fill.cpp index 4d015bcf6..5760073d8 100644 --- a/src/libslic3r/Fill/Fill.cpp +++ b/src/libslic3r/Fill/Fill.cpp @@ -161,9 +161,10 @@ std::vector group_fills(const Layer &layer) if (params.pattern == ipCrossZag){ params.infill_shift_step = scale_(region_config.infill_shift_step); params.symmetric_infill_y_axis = region_config.symmetric_infill_y_axis; + }else if (params.pattern == ipZigZag){ + params.infill_rotate_step = region_config.infill_rotate_step * M_PI / 360; + params.symmetric_infill_y_axis = region_config.symmetric_infill_y_axis; } - if (params.pattern == ipZigZag) - params.infill_rotate_step = region_config.infill_rotate_step * M_PI / 360; if (surface.is_solid()) { params.density = 100.f; @@ -601,7 +602,10 @@ void Layer::make_fills(FillAdaptive::Octree* adaptive_fill_octree, FillAdaptive: params.symmetric_infill_y_axis = surface_fill.params.symmetric_infill_y_axis; - } + } else if( surface_fill.params.pattern == ipZigZag ) { + params.symmetric_infill_y_axis = surface_fill.params.symmetric_infill_y_axis; + } + if (surface_fill.params.pattern == ipGrid || surface_fill.params.pattern == ipFloatingConcentric) params.can_reverse = false; LayerRegion* layerm = this->m_regions[surface_fill.region_id]; diff --git a/src/slic3r/GUI/ConfigManipulation.cpp b/src/slic3r/GUI/ConfigManipulation.cpp index e62bde792..95da4d29d 100644 --- a/src/slic3r/GUI/ConfigManipulation.cpp +++ b/src/slic3r/GUI/ConfigManipulation.cpp @@ -568,7 +568,9 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, in for (auto el : {"infill_shift_step", "symmetric_infill_y_axis"}) toggle_line(el, is_cross_zag); - toggle_line("infill_rotate_step", config->option>("sparse_infill_pattern")->value == InfillPattern::ipZigZag); + bool is_zig_zag = config->option>("sparse_infill_pattern")->value == InfillPattern::ipZigZag; + for (auto el : {"infill_rotate_step", "symmetric_infill_y_axis"}) + toggle_line(el, is_zig_zag); bool has_spiral_vase = config->opt_bool("spiral_mode"); toggle_line("spiral_mode_smooth", has_spiral_vase);