diff --git a/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp b/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp index aa104801e4..b4e85bd9d2 100644 --- a/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp +++ b/src/libslic3r/Feature/Interlocking/InterlockingGenerator.cpp @@ -243,7 +243,7 @@ std::vector> InterlockingGenerator::generateMicrostructu cell_area_per_mesh_per_layer.resize(2); cell_area_per_mesh_per_layer[0].resize(2); const coord_t beam_w_sum = beam_width + beam_width; - const coord_t middle = cell_size.x() * beam_width / beam_w_sum; + const coord_t middle = coord_t(int64_t(cell_size.x()) * int64_t(beam_width) / beam_w_sum); const coord_t width[2] = {middle, cell_size.x() - middle}; for (size_t mesh_idx : {0ul, 1ul}) { Point offset(mesh_idx ? middle : 0, 0);