Account for travel moves in elapsed_time

This commit is contained in:
Chow Loong Jin 2016-04-13 00:04:49 +08:00
parent a94402a8a2
commit 4c622c504f

View File

@ -629,9 +629,17 @@ GCode::travel_to(const Point &point, ExtrusionRole role, std::string comment)
// use G1 because we rely on paths being straight (G0 may make round paths)
Lines lines = travel.lines();
for (Lines::const_iterator line = lines.begin(); line != lines.end(); ++line)
gcode += this->writer.travel_to_xy(this->point_to_gcode(line->b), comment);
double path_length = 0;
for (Lines::const_iterator line = lines.begin(); line != lines.end(); ++line) {
const double line_length = line->length() * SCALING_FACTOR;
path_length += line_length;
gcode += this->writer.travel_to_xy(this->point_to_gcode(line->b), comment);
}
if (this->config.cooling)
this->elapsed_time += path_length / this->config.get_abs_value("travel_speed");
return gcode;
}