Print first layer at Z = 1 * layer_height instead of zero like it was until now. #17

This commit is contained in:
Alessandro Ranellucci 2011-11-07 16:04:27 +01:00
parent b4e268efad
commit 0b42139e54
3 changed files with 10 additions and 3 deletions

View File

@ -76,11 +76,18 @@ has 'fills' => (
default => sub { [] }, default => sub { [] },
); );
sub z { # Z used for slicing
sub slice_z {
my $self = shift; my $self = shift;
return ($self->id * $Slic3r::layer_height + $Slic3r::layer_height/2) / $Slic3r::resolution; return ($self->id * $Slic3r::layer_height + $Slic3r::layer_height/2) / $Slic3r::resolution;
} }
# Z used for printing
sub print_z {
my $self = shift;
return ($self->id + 1) * $Slic3r::layer_height / $Slic3r::resolution;
}
sub add_surface { sub add_surface {
my $self = shift; my $self = shift;
my (@vertices) = @_; my (@vertices) = @_;

View File

@ -431,7 +431,7 @@ sub export_gcode {
# write gcode commands layer by layer # write gcode commands layer by layer
foreach my $layer (@{ $self->layers }) { foreach my $layer (@{ $self->layers }) {
# go to layer # go to layer
printf $fh $extruder->move_z($Slic3r::z_offset + $layer->z * $Slic3r::resolution); printf $fh $extruder->move_z($Slic3r::z_offset + $layer->print_z * $Slic3r::resolution);
# extrude skirts # extrude skirts
printf $fh $extruder->extrude_loop($_, 'skirt') for @{ $layer->skirts }; printf $fh $extruder->extrude_loop($_, 'skirt') for @{ $layer->skirts };

View File

@ -127,7 +127,7 @@ sub _facet {
for (my $layer_id = $min_layer; $layer_id <= $max_layer; $layer_id++) { for (my $layer_id = $min_layer; $layer_id <= $max_layer; $layer_id++) {
my $layer = $print->layer($layer_id); my $layer = $print->layer($layer_id);
$layer->add_line($_) for $self->intersect_facet(\@vertices, $layer->z); $layer->add_line($_) for $self->intersect_facet(\@vertices, $layer->slice_z);
} }
} }