diff --git a/src/libslic3r/Fill/Fill.cpp b/src/libslic3r/Fill/Fill.cpp index addea9b9e1..d206d41c13 100644 --- a/src/libslic3r/Fill/Fill.cpp +++ b/src/libslic3r/Fill/Fill.cpp @@ -608,7 +608,7 @@ void Layer::make_ironing() ironing_params.line_spacing = config.ironing_spacing; ironing_params.height = default_layer_height * 0.01 * config.ironing_flow; ironing_params.speed = config.ironing_speed; - ironing_params.angle = config.ironing_direction * M_PI / 180.; + ironing_params.angle = (int(config.ironing_direction.value+layerm->region().config().infill_direction.value)%180) * M_PI / 180.; ironing_params.pattern = config.ironing_pattern; ironing_params.layerm = layerm; by_extruder.emplace_back(ironing_params); @@ -701,7 +701,7 @@ void Layer::make_ironing() // Create the filler object. f->spacing = ironing_params.line_spacing; - f->angle = float(ironing_params.angle + 0.25 * M_PI); + f->angle = float(ironing_params.angle); f->link_max_length = (coord_t) scale_(3. * f->spacing); double extrusion_height = ironing_params.height * f->spacing / nozzle_dmr; float extrusion_width = Flow::rounded_rectangle_extrusion_width_from_spacing(float(nozzle_dmr), float(extrusion_height)); diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index 9f01bd7f52..77f46a4819 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -1932,7 +1932,7 @@ void PrintConfigDef::init_fff_params() def = this->add("ironing_direction", coFloat); def->label = L("ironing direction"); def->category = L("Quality"); - def->tooltip = L("Angle for ironing, which controls the angle of the nozzle when ironing"); + def->tooltip = L("Angle for ironing, which controls the relative angle between the top surface and ironing"); def->sidetext = L("°"); def->min = 0; def->max = 360;