mirror of
https://github.com/FULU-Foundation/OrcaSlicer-bambulab.git
synced 2026-06-25 16:10:11 +02:00
64 lines
1.5 KiB
C++
64 lines
1.5 KiB
C++
#include "Extruder.hpp"
|
|
|
|
namespace Slic3r {
|
|
|
|
Extruder::Extruder(int id, bool use_relative_e_distances,
|
|
const Point *extruder_offset,
|
|
double nozzle_diameter,
|
|
double filament_diameter,
|
|
double extrusion_multiplier,
|
|
int temperature,
|
|
int first_layer_temperature,
|
|
double retract_length,
|
|
double retract_lift,
|
|
int retract_speed,
|
|
double retract_restart_extra,
|
|
double retract_before_travel,
|
|
bool retract_layer_change,
|
|
double retract_length_toolchange,
|
|
double retract_restart_extra_toolchange,
|
|
double wipe)
|
|
: id(id),
|
|
use_relative_e_distances(use_relative_e_distances),
|
|
extruder_offset(*extruder_offset),
|
|
nozzle_diameter(nozzle_diameter),
|
|
filament_diameter(filament_diameter),
|
|
extrusion_multiplier(extrusion_multiplier),
|
|
temperature(temperature),
|
|
first_layer_temperature(first_layer_temperature),
|
|
retract_length(retract_length),
|
|
retract_lift(retract_lift),
|
|
retract_speed(retract_speed),
|
|
retract_restart_extra(retract_restart_extra),
|
|
retract_before_travel(retract_before_travel),
|
|
retract_layer_change(retract_layer_change),
|
|
retract_length_toolchange(retract_length_toolchange),
|
|
retract_restart_extra_toolchange(retract_restart_extra_toolchange),
|
|
wipe(wipe)
|
|
{
|
|
reset();
|
|
}
|
|
|
|
void
|
|
Extruder::reset()
|
|
{
|
|
this->E = 0;
|
|
this->absolute_E = 0;
|
|
this->retracted = 0;
|
|
this->restart_extra = 0;
|
|
}
|
|
|
|
double
|
|
Extruder::extrude(double dE)
|
|
{
|
|
if (use_relative_e_distances) {
|
|
this->E = 0;
|
|
}
|
|
|
|
this->E += dE;
|
|
this->absolute_E += dE;
|
|
return this->E;
|
|
}
|
|
|
|
}
|