From 454363fe2c255af5744645d7f8f2058f890ae8a4 Mon Sep 17 00:00:00 2001 From: Filip Sykala - NTB T15p Date: Fri, 13 Jan 2023 13:27:01 +0100 Subject: [PATCH] Fix of filtering trinagles for reflected projection --- src/libslic3r/CutSurface.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/libslic3r/CutSurface.cpp b/src/libslic3r/CutSurface.cpp index 88e3bba75..c484bba22 100644 --- a/src/libslic3r/CutSurface.cpp +++ b/src/libslic3r/CutSurface.cpp @@ -768,6 +768,15 @@ void priv::set_skip_for_out_of_aoi(std::vector &skip_indicies, point_normals[i] = {p1, normal}; } + + // check that projection is not left handed + // Fix for reflected projection + if (is_out_of(point_normals[2].first, point_normals[0])) { + // projection is reflected so normals are reflected + for (auto &pn : point_normals) + pn.second *= -1; + } + // same meaning as point normal IsOnSides is_on_sides(its.vertices.size(), {false,false,false,false});