mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-05-19 11:23:42 +00:00
Fix logic for precise_outer_wall condition in PerimeterGenerator to only apply when wall_sequence is set to InnerOuter.
This commit is contained in:
@@ -1129,7 +1129,7 @@ void PerimeterGenerator::process_classic()
|
|||||||
coord_t ext_perimeter_spacing = this->ext_perimeter_flow.scaled_spacing();
|
coord_t ext_perimeter_spacing = this->ext_perimeter_flow.scaled_spacing();
|
||||||
coord_t ext_perimeter_spacing2;
|
coord_t ext_perimeter_spacing2;
|
||||||
// Orca: ignore precise_outer_wall if wall_sequence is not InnerOuter
|
// Orca: ignore precise_outer_wall if wall_sequence is not InnerOuter
|
||||||
if(config->precise_outer_wall && config->wall_sequence != WallSequence::InnerOuter)
|
if(config->precise_outer_wall && config->wall_sequence == WallSequence::InnerOuter)
|
||||||
ext_perimeter_spacing2 = scaled<coord_t>(0.5f * (this->ext_perimeter_flow.width() + this->perimeter_flow.width()));
|
ext_perimeter_spacing2 = scaled<coord_t>(0.5f * (this->ext_perimeter_flow.width() + this->perimeter_flow.width()));
|
||||||
else
|
else
|
||||||
ext_perimeter_spacing2 = scaled<coord_t>(0.5f * (this->ext_perimeter_flow.spacing() + this->perimeter_flow.spacing()));
|
ext_perimeter_spacing2 = scaled<coord_t>(0.5f * (this->ext_perimeter_flow.spacing() + this->perimeter_flow.spacing()));
|
||||||
@@ -2124,7 +2124,7 @@ void PerimeterGenerator::process_arachne()
|
|||||||
if (is_topmost_layer && loop_number > 0 && config->only_one_wall_top)
|
if (is_topmost_layer && loop_number > 0 && config->only_one_wall_top)
|
||||||
loop_number = 0;
|
loop_number = 0;
|
||||||
|
|
||||||
auto apply_precise_outer_wall = config->precise_outer_wall && config->wall_sequence != WallSequence::InnerOuter;
|
auto apply_precise_outer_wall = config->precise_outer_wall && config->wall_sequence == WallSequence::InnerOuter;
|
||||||
// Orca: properly adjust offset for the outer wall if precise_outer_wall is enabled.
|
// Orca: properly adjust offset for the outer wall if precise_outer_wall is enabled.
|
||||||
ExPolygons last = offset_ex(surface.expolygon.simplify_p(surface_simplify_resolution),
|
ExPolygons last = offset_ex(surface.expolygon.simplify_p(surface_simplify_resolution),
|
||||||
apply_precise_outer_wall? -float(ext_perimeter_width - ext_perimeter_spacing )
|
apply_precise_outer_wall? -float(ext_perimeter_width - ext_perimeter_spacing )
|
||||||
|
|||||||
Reference in New Issue
Block a user