Bugfix: objects were floating in STL export after rotation and flip. #2512

This commit is contained in:
Alessandro Ranellucci 2015-01-09 00:47:40 +01:00
parent 9f4f711017
commit 64c9e3af4b
5 changed files with 13 additions and 4 deletions

View file

@ -659,6 +659,9 @@ sub rotate {
$_->set_rotation(0) for @{ $model_object->instances };
}
$model_object->rotate(deg2rad($angle), $axis);
# realign object to Z = 0
$model_object->center_around_origin;
$self->make_thumbnail($obj_idx);
}
@ -688,6 +691,9 @@ sub flip {
$model_object->flip($axis);
$model_object->update_bounding_box;
# realign object to Z = 0
$model_object->center_around_origin;
$self->make_thumbnail($obj_idx);
# update print and start background processing
@ -725,6 +731,7 @@ sub changescale {
my $versor = [1,1,1];
$versor->[$axis] = $scale/100;
$model_object->scale_xyz(Slic3r::Pointf3->new(@$versor));
# object was already aligned to Z = 0, so no need to realign it
$self->make_thumbnail($obj_idx);
} else {
# max scale factor should be above 2540 to allow importing files exported in inches

View file

@ -351,8 +351,6 @@ sub set_bed_shape {
sub load_object {
my ($self, $object, $all_instances) = @_;
my $z_min = $object->raw_bounding_box->z_min;
# color mesh(es) by material
my @materials = ();
@ -381,7 +379,6 @@ sub load_object {
instance_idx => $instance_idx,
mesh => $mesh,
color => $color,
origin => Slic3r::Pointf3->new(0,0,-$z_min),
);
push @volumes_idx, $#{$self->volumes};