mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-08 23:46:24 -06:00
Prevent extra wall generation when sparse infill is zero (#3775)
Co-authored-by: SoftFever <softfeverever@gmail.com>
This commit is contained in:
parent
fba490969d
commit
3ae8cca5cf
1 changed files with 6 additions and 4 deletions
|
@ -1506,7 +1506,8 @@ void PerimeterGenerator::process_classic()
|
||||||
const Surface &surface = this->slices->surfaces[surface_order[order_idx]];
|
const Surface &surface = this->slices->surfaces[surface_order[order_idx]];
|
||||||
// detect how many perimeters must be generated for this island
|
// detect how many perimeters must be generated for this island
|
||||||
int loop_number = this->config->wall_loops + surface.extra_perimeters - 1; // 0-indexed loops
|
int loop_number = this->config->wall_loops + surface.extra_perimeters - 1; // 0-indexed loops
|
||||||
if (this->config->alternate_extra_wall && this->layer_id % 2 == 1 && !m_spiral_vase) // add alternating extra wall
|
int sparse_infill_density = this->config->sparse_infill_density.value;
|
||||||
|
if (this->config->alternate_extra_wall && this->layer_id % 2 == 1 && !m_spiral_vase && sparse_infill_density > 0) // add alternating extra wall
|
||||||
loop_number++;
|
loop_number++;
|
||||||
if (this->layer_id == 0 && this->config->only_one_wall_first_layer)
|
if (this->layer_id == 0 && this->config->only_one_wall_first_layer)
|
||||||
loop_number = 0;
|
loop_number = 0;
|
||||||
|
@ -1940,7 +1941,8 @@ void PerimeterGenerator::process_arachne()
|
||||||
coord_t bead_width_0 = ext_perimeter_spacing;
|
coord_t bead_width_0 = ext_perimeter_spacing;
|
||||||
// detect how many perimeters must be generated for this island
|
// detect how many perimeters must be generated for this island
|
||||||
int loop_number = this->config->wall_loops + surface.extra_perimeters - 1; // 0-indexed loops
|
int loop_number = this->config->wall_loops + surface.extra_perimeters - 1; // 0-indexed loops
|
||||||
if (this->config->alternate_extra_wall && this->layer_id % 2 == 1 && !m_spiral_vase) // add alternating extra wall
|
int sparse_infill_density = this->config->sparse_infill_density.value;
|
||||||
|
if (this->config->alternate_extra_wall && this->layer_id % 2 == 1 && !m_spiral_vase && sparse_infill_density > 0) // add alternating extra wall
|
||||||
loop_number++;
|
loop_number++;
|
||||||
|
|
||||||
// Set the bottommost layer to be one wall
|
// Set the bottommost layer to be one wall
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue