mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-08-05 04:54:08 -06:00
Refactoring: moved some low-level G-code generation methods to the new Slic3r::GCode::Base class
This commit is contained in:
parent
d0a81dca28
commit
e521475b7e
10 changed files with 315 additions and 192 deletions
|
@ -773,8 +773,8 @@ sub write_gcode {
|
|||
placeholder_parser => $self->placeholder_parser,
|
||||
layer_count => $layer_count,
|
||||
);
|
||||
$gcodegen->config->apply_print_config($self->config);
|
||||
$gcodegen->set_extruders($self->extruders, $self->config);
|
||||
$gcodegen->apply_print_config($self->config);
|
||||
$gcodegen->set_extruders($self->extruders);
|
||||
|
||||
print $fh "G21 ; set units to millimeters\n" if $self->config->gcode_flavor ne 'makerware';
|
||||
print $fh $gcodegen->set_fan(0, 1) if $self->config->cooling && $self->config->disable_fan_first_layers;
|
||||
|
@ -935,14 +935,13 @@ sub write_gcode {
|
|||
}
|
||||
|
||||
# write end commands to file
|
||||
print $fh $gcodegen->retract if $gcodegen->extruder; # empty prints don't even set an extruder
|
||||
print $fh $gcodegen->retract;
|
||||
print $fh $gcodegen->set_fan(0);
|
||||
printf $fh "%s\n", $gcodegen->placeholder_parser->process($self->config->end_gcode);
|
||||
|
||||
$self->total_used_filament(0);
|
||||
$self->total_extruded_volume(0);
|
||||
foreach my $extruder_id (@{$self->extruders}) {
|
||||
my $extruder = $gcodegen->extruders->{$extruder_id};
|
||||
foreach my $extruder (@{$gcodegen->extruders}) {
|
||||
# the final retraction doesn't really count as "used filament"
|
||||
my $used_filament = $extruder->absolute_E + $extruder->retract_length;
|
||||
my $extruded_volume = $extruder->extruded_volume($used_filament);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue