diff options
author | supermerill <merill@fr.fr> | 2020-08-22 15:17:39 +0300 |
---|---|---|
committer | supermerill <merill@fr.fr> | 2020-08-22 15:17:39 +0300 |
commit | 89f6995e74f9c4b9342f378e2368a432e5a4a454 (patch) | |
tree | dd35568dd85e0fcc3329df4852faf0b34616ff56 | |
parent | d078b632f29106fb33459e16fe722c7e31a865e0 (diff) |
#418 Cutting corners fixes2.2.53.0
- inverted angle selection
- forgot to scale_() the distance
-rw-r--r-- | src/libslic3r/GCode.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index ee56c22f1..18496ce51 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -3905,7 +3905,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, const std::string &descri else angle = PI - angle; int idx_angle = int(180 * angle / PI); // the coeff is below 0.01 i the angle is higher than 125, so it's not useful - if (idx_angle < 60) { + if (idx_angle > 60) { //don't compensate if the angle is under 35, as it's already a 50% compensation, it's enough! if (idx_angle > 144) angle = 144; //surface extruded in path.width is path.width * path.width @@ -3928,7 +3928,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, const std::string &descri double mult2 = 1 - coeff; double sum = 0; //Create a point - Point inter_point1 = line.point_at(length1); + Point inter_point1 = line.point_at(scale_(length1)); //extrude very reduced gcode += m_writer.extrude_to_xy( this->point_to_gcode(inter_point1), @@ -3937,7 +3937,7 @@ std::string GCode::_extrude(const ExtrusionPath &path, const std::string &descri sum += e_per_mm * (length1) * mult1; if (line_length - length1 > length2) { - Point inter_point2 = line.point_at(length2); + Point inter_point2 = line.point_at(scale_(length2)); //extrude reduced gcode += m_writer.extrude_to_xy( this->point_to_gcode(inter_point2), |