diff options
author | Rich Felker <dalias@aerifal.cx> | 2022-10-08 03:39:58 +0300 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2022-11-02 16:36:57 +0300 |
commit | 9649cc9ce224ad9f882474fa6678bec0ce3bc947 (patch) | |
tree | e1d851e0f6b7cb429b6993f67e50369558b1af60 | |
parent | b920618fd5956aa123d9df1c44e5e57b5112d380 (diff) |
Fix vase mode with bottom_layers != initial_bottom_layers
Fixes https://github.com/Ultimaker/Cura/issues/13499
(cura bug 13499)
-rw-r--r-- | src/FffGcodeWriter.cpp | 4 | ||||
-rw-r--r-- | src/WallsComputation.cpp | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/FffGcodeWriter.cpp b/src/FffGcodeWriter.cpp index 1d430cf61..fc4dd83f4 100644 --- a/src/FffGcodeWriter.cpp +++ b/src/FffGcodeWriter.cpp @@ -2125,7 +2125,7 @@ void FffGcodeWriter::processSpiralizedWall(const SliceDataStorage& storage, Laye last_seam_vertex_idx = storage.spiralize_seam_vertex_indices[layer_nr - 1]; } } - const bool is_bottom_layer = (layer_nr == mesh.settings.get<LayerIndex>("bottom_layers")); + const bool is_bottom_layer = (layer_nr == mesh.settings.get<LayerIndex>("initial_bottom_layers")); const bool is_top_layer = ((size_t)layer_nr == (storage.spiralize_wall_outlines.size() - 1) || storage.spiralize_wall_outlines[layer_nr + 1] == nullptr); const int seam_vertex_idx = storage.spiralize_seam_vertex_indices[layer_nr]; // use pre-computed seam vertex index for current layer // output a wall slice that is interpolated between the last and current walls @@ -2981,7 +2981,7 @@ bool FffGcodeWriter::processSupportInfill(const SliceDataStorage& storage, Layer if ((! wall_toolpaths.empty() || ! support_polygons.empty() || ! support_lines.empty())) { int layer_nr = gcode_layer.getLayerNr(); - if (layer_nr > (int)infill_extruder.settings.get<size_t>("bottom_layers")) + if (layer_nr > (int)infill_extruder.settings.get<size_t>("initial_bottom_layers")) { // bit of subtlety here... support is being used on a spiralized model and to ensure the travel move from the end of the last spiral // to the start of the support does not go through the model we have to tell the slicer what the current location of the nozzle is diff --git a/src/WallsComputation.cpp b/src/WallsComputation.cpp index 2dbea8f18..5c106aadb 100644 --- a/src/WallsComputation.cpp +++ b/src/WallsComputation.cpp @@ -59,7 +59,7 @@ void WallsComputation::generateWalls(SliceLayerPart* part) settings.get<bool>("support_enable") && !settings.get<bool>("fill_outline_gaps"); generateSpiralInsets(part, line_width_0, wall_0_inset, recompute_outline_based_on_outer_wall); - if (layer_nr <= static_cast<LayerIndex>(settings.get<size_t>("bottom_layers"))) + if (layer_nr <= static_cast<LayerIndex>(settings.get<size_t>("initial_bottom_layers"))) { WallToolPaths wall_tool_paths(part->outline, line_width_0, line_width_x, wall_count, wall_0_inset, settings); part->wall_toolpaths = wall_tool_paths.getToolPaths(); |