diff --git a/lib/Slic3r/GUI/Plater.pm b/lib/Slic3r/GUI/Plater.pm index 49dcd1ae..4c0943d4 100644 --- a/lib/Slic3r/GUI/Plater.pm +++ b/lib/Slic3r/GUI/Plater.pm @@ -447,7 +447,7 @@ sub changescale { return if !$scale || $scale == -1; $self->{list}->SetItem($obj_idx, 2, "$scale%"); - $object->scale($scale / 100); + $object->changescale($scale / 100); $self->arrange; } @@ -1109,6 +1109,18 @@ sub _trigger_model_object { } } +sub changescale { + my $self = shift; + my ($scale) = @_; + + my $variation = $scale / $self->scale; + foreach my $range (@{ $self->layer_height_ranges }) { + $range->[0] *= $variation; + $range->[1] *= $variation; + } + $self->scale($scale); +} + sub check_manifoldness { my $self = shift;