brim ears rounder & cleaner

This commit is contained in:
supermerill 2019-01-09 20:49:58 +01:00
parent 1999974f7a
commit 121fef582d
2 changed files with 7 additions and 27 deletions

View File

@ -1741,30 +1741,10 @@ void Print::_make_brim_ears() {
//create ear pattern
coord_t size_ear = (scale_(m_config.brim_width.value) - flow.scaled_spacing());
Polygon point_round;
point_round.points.push_back(Point(size_ear * 1, 0 * size_ear));
point_round.points.push_back(Point(size_ear*0.966, 0.26*size_ear));
point_round.points.push_back(Point(size_ear*0.87, 0.5*size_ear));
point_round.points.push_back(Point(size_ear*0.7, 0.7*size_ear));
point_round.points.push_back(Point(size_ear*0.5, 0.87*size_ear));
point_round.points.push_back(Point(size_ear*0.26, 0.966*size_ear));
point_round.points.push_back(Point(size_ear * 0, 1 * size_ear));
point_round.points.push_back(Point(size_ear*-0.26, 0.966*size_ear));
point_round.points.push_back(Point(size_ear*-0.5, 0.87*size_ear));
point_round.points.push_back(Point(size_ear*-0.7, 0.7*size_ear));
point_round.points.push_back(Point(size_ear*-0.87, 0.5*size_ear));
point_round.points.push_back(Point(size_ear*-0.966, 0.26*size_ear));
point_round.points.push_back(Point(size_ear*-1, 0 * size_ear));
point_round.points.push_back(Point(size_ear*-0.966, -0.26*size_ear));
point_round.points.push_back(Point(size_ear*-0.87, -0.5*size_ear));
point_round.points.push_back(Point(size_ear*-0.7, -0.7*size_ear));
point_round.points.push_back(Point(size_ear*-0.5, -0.87*size_ear));
point_round.points.push_back(Point(size_ear*-0.26, -0.966*size_ear));
point_round.points.push_back(Point(size_ear * 0, -1 * size_ear));
point_round.points.push_back(Point(size_ear*0.26, -0.966*size_ear));
point_round.points.push_back(Point(size_ear*0.5, -0.87*size_ear));
point_round.points.push_back(Point(size_ear*0.7, -0.7*size_ear));
point_round.points.push_back(Point(size_ear*0.87, -0.5*size_ear));
point_round.points.push_back(Point(size_ear*0.966, -0.26*size_ear));
for (size_t i = 0; i < POLY_SIDES; i++) {
double angle = (2.0 * PI * i) / POLY_SIDES;
point_round.points.emplace_back(size_ear * cos(angle), size_ear * sin(angle));
}
//create ears
Polygons mouse_ears;
@ -1840,8 +1820,6 @@ void Print::_make_brim_ears() {
//update last position
previous = &lines_sorted.back();
} else {
previous == NULL;
}
}

View File

@ -35,6 +35,8 @@ typedef double coordf_t;
// RESOLUTION, SCALED_RESOLUTION: Used as an error threshold for a Douglas-Peucker polyline simplification algorithm.
#define RESOLUTION 0.0125
#define SCALED_RESOLUTION (RESOLUTION / SCALING_FACTOR)
//for creating circles (for brim_ear)
#define POLY_SIDES 24
#define PI 3.141592653589793238
// When extruding a closed loop, the loop is interrupted and shortened a bit to reduce the seam.
#define LOOP_CLIPPING_LENGTH_OVER_NOZZLE_DIAMETER 0.15