Wipe tower - removed the obsolete material_type enum

no longer necessary because the speed overrides that the enum controlled were recently removed
the comment in gcode is now just about appending the config string
This commit is contained in:
Lukas Matena 2019-06-14 14:31:53 +02:00
parent 678d0e18a7
commit 0eecfc6604
3 changed files with 13 additions and 80 deletions

View File

@ -398,13 +398,6 @@ public:
return *this;
}
Writer& comment_material(WipeTowerPrusaMM::material_type material)
{
m_gcode += "; material : ";
m_gcode += WipeTowerPrusaMM::to_string(material) + "\n";
return *this;
};
Writer& append(const char *text) { m_gcode += text; return *this; }
private:
@ -470,50 +463,6 @@ private:
}; // namespace PrusaMultiMaterial
WipeTowerPrusaMM::material_type WipeTowerPrusaMM::parse_material(const char *name)
{
if (strcasecmp(name, "PLA") == 0)
return PLA;
if (strcasecmp(name, "ABS") == 0)
return ABS;
if (strcasecmp(name, "PET") == 0)
return PET;
if (strcasecmp(name, "HIPS") == 0)
return HIPS;
if (strcasecmp(name, "FLEX") == 0)
return FLEX;
if (strcasecmp(name, "SCAFF") == 0)
return SCAFF;
if (strcasecmp(name, "EDGE") == 0)
return EDGE;
if (strcasecmp(name, "NGEN") == 0)
return NGEN;
if (strcasecmp(name, "PVA") == 0)
return PVA;
if (strcasecmp(name, "PC") == 0)
return PC;
return INVALID;
}
std::string WipeTowerPrusaMM::to_string(material_type material)
{
switch (material) {
case PLA: return "PLA";
case ABS: return "ABS";
case PET: return "PET";
case HIPS: return "HIPS";
case FLEX: return "FLEX";
case SCAFF: return "SCAFF";
case EDGE: return "EDGE";
case NGEN: return "NGEN";
case PVA: return "PVA";
case PC: return "PC";
case INVALID:
default: return "INVALID";
}
}
// Returns gcode to prime the nozzles at the front edge of the print bed.
std::vector<WipeTower::ToolChangeResult> WipeTowerPrusaMM::prime(
// print_z of the first layer.
@ -665,9 +614,12 @@ WipeTower::ToolChangeResult WipeTowerPrusaMM::tool_change(unsigned int tool, boo
.set_y_shift(m_y_shift + (tool!=(unsigned int)(-1) && (m_current_shape == SHAPE_REVERSED && !m_peters_wipe_tower) ? m_layer_info->depth - m_layer_info->toolchanges_depth(): 0.f))
.append(";--------------------\n"
"; CP TOOLCHANGE START\n")
.comment_with_value(" toolchange #", m_num_tool_changes + 1) // the number is zero-based
.comment_material(m_filpar[m_current_tool].material)
.append(";--------------------\n");
.comment_with_value(" toolchange #", m_num_tool_changes + 1); // the number is zero-based
if (tool != (unsigned)(-1))
writer.append(std::string("; material : " + (m_current_tool < m_filpar.size() ? m_filpar[m_current_tool].material : "(NONE)") + " -> " + m_filpar[tool].material + "\n").c_str())
.append(";--------------------\n");
writer.speed_override_backup();
writer.speed_override(100);
@ -796,7 +748,7 @@ WipeTower::ToolChangeResult WipeTowerPrusaMM::toolchange_Brim(bool sideOnly, flo
void WipeTowerPrusaMM::toolchange_Unload(
PrusaMultiMaterial::Writer &writer,
const box_coordinates &cleaning_box,
const material_type current_material,
const std::string& current_material,
const int new_temperature)
{
float xl = cleaning_box.ld.x + 1.f * m_perimeter_width;
@ -945,7 +897,7 @@ void WipeTowerPrusaMM::toolchange_Unload(
void WipeTowerPrusaMM::toolchange_Change(
PrusaMultiMaterial::Writer &writer,
const unsigned int new_tool,
material_type new_material)
const std::string& new_material)
{
// Ask the writer about how much of the old filament we consumed:
if (m_current_tool < m_used_filament_length.size())

View File

@ -23,25 +23,6 @@ namespace PrusaMultiMaterial {
class WipeTowerPrusaMM : public WipeTower
{
public:
enum material_type
{
INVALID = -1,
PLA = 0, // E:210C B:55C
ABS = 1, // E:255C B:100C
PET = 2, // E:240C B:90C
HIPS = 3, // E:220C B:100C
FLEX = 4, // E:245C B:80C
SCAFF = 5, // E:215C B:55C
EDGE = 6, // E:240C B:80C
NGEN = 7, // E:230C B:80C
PVA = 8, // E:210C B:80C
PC = 9
};
// Parse material name into material_type.
static material_type parse_material(const char *name);
static std::string to_string(material_type material);
// x -- x coordinates of wipe tower in mm ( left bottom corner )
// y -- y coordinates of wipe tower in mm ( left bottom corner )
// width -- width of wipe tower in mm ( default 60 mm - leave as it is )
@ -77,7 +58,7 @@ public:
// Set the extruder properties.
void set_extruder(size_t idx, material_type material, int temp, int first_layer_temp, float loading_speed, float loading_speed_start,
void set_extruder(size_t idx, std::string material, int temp, int first_layer_temp, float loading_speed, float loading_speed_start,
float unloading_speed, float unloading_speed_start, float delay, int cooling_moves,
float cooling_initial_speed, float cooling_final_speed, std::string ramming_parameters, float max_volumetric_speed, float nozzle_diameter)
{
@ -198,7 +179,7 @@ public:
virtual int get_number_of_toolchanges() const override { return m_num_tool_changes; }
struct FilamentParameters {
material_type material = PLA;
std::string material = "PLA";
int temperature = 0;
int first_layer_temperature = 0;
float loading_speed = 0.f;
@ -370,13 +351,13 @@ private:
void toolchange_Unload(
PrusaMultiMaterial::Writer &writer,
const box_coordinates &cleaning_box,
const material_type current_material,
const std::string& current_material,
const int new_temperature);
void toolchange_Change(
PrusaMultiMaterial::Writer &writer,
const unsigned int new_tool,
material_type new_material);
const std::string& new_material);
void toolchange_Load(
PrusaMultiMaterial::Writer &writer,

View File

@ -1809,7 +1809,7 @@ void Print::_make_wipe_tower()
wipe_tower.set_extruder(
i,
WipeTowerPrusaMM::parse_material(m_config.filament_type.get_at(i).c_str()),
m_config.filament_type.get_at(i),
m_config.temperature.get_at(i),
m_config.first_layer_temperature.get_at(i),
m_config.filament_loading_speed.get_at(i),