Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsupermerill <merill@free.fr>2021-12-15 21:02:39 +0300
committersupermerill <merill@free.fr>2021-12-15 21:51:09 +0300
commit773e059c39b386e04bfcf96fc2c71046aa087eae (patch)
treedb82aae8bd0c1f43133c63065f866596fef865a9 /src
parentb9e384519d12e1cb0e26f14b85cd7ef762b8e124 (diff)
perimeter_round_corners: keep clipper::mitter for first perimeter
supermerill/superslicer#2046
Diffstat (limited to 'src')
-rw-r--r--src/libslic3r/PerimeterGenerator.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/libslic3r/PerimeterGenerator.cpp b/src/libslic3r/PerimeterGenerator.cpp
index 6ba0c0815..3aeed59da 100644
--- a/src/libslic3r/PerimeterGenerator.cpp
+++ b/src/libslic3r/PerimeterGenerator.cpp
@@ -492,15 +492,15 @@ void PerimeterGenerator::process()
next_onion = offset_ex(
last,
-(float)(ext_perimeter_width / 2),
- (round_peri ? ClipperLib::JoinType::jtRound : ClipperLib::JoinType::jtMiter),
- (round_peri ? min_round_spacing : 3));
+ ClipperLib::JoinType::jtMiter,
+ 3);
else
next_onion = offset2_ex(
last,
-(float)(ext_perimeter_width / 2 + ext_min_spacing / 2 - 1),
+(float)(ext_min_spacing / 2 - 1),
- (round_peri ? ClipperLib::JoinType::jtRound : ClipperLib::JoinType::jtMiter),
- (round_peri ? min_round_spacing : 3));
+ ClipperLib::JoinType::jtMiter,
+ 3);
// look for thin walls
if (this->config->thin_walls) {
@@ -569,20 +569,20 @@ void PerimeterGenerator::process()
}
}
// use perimeters to extrude area that can't be printed by thin walls
- // it's a bit like re-add thin area in to perimeter area.
+ // it's a bit like re-add thin area into perimeter area.
// it can over-extrude a bit, but it's for a better good.
{
if (thin_perimeter)
next_onion = union_ex(next_onion, offset_ex(diff_ex(last, thins, true),
-(float)(ext_perimeter_width / 2),
- (round_peri ? ClipperLib::JoinType::jtRound : ClipperLib::JoinType::jtMiter),
- (round_peri ? min_round_spacing : 3)));
+ ClipperLib::JoinType::jtMiter,
+ 3));
else
next_onion = union_ex(next_onion, offset2_ex(diff_ex(last, thins, true),
-(float)((ext_perimeter_width / 2) + (ext_min_spacing / 4)),
(float)(ext_min_spacing / 4),
- (round_peri ? ClipperLib::JoinType::jtRound : ClipperLib::JoinType::jtMiter),
- (round_peri ? min_round_spacing : 3)));
+ ClipperLib::JoinType::jtMiter,
+ 3));
next_onion = intersection_ex(next_onion, last);
}