From 5df27130107b1d70fee09664372afdd2d84e883e Mon Sep 17 00:00:00 2001 From: enricoturri1966 Date: Mon, 7 Nov 2022 14:46:21 +0100 Subject: [PATCH] Measuring - Fixed transformation of distance_xyz --- src/libslic3r/Measure.cpp | 4 ++-- src/libslic3r/Measure.hpp | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libslic3r/Measure.cpp b/src/libslic3r/Measure.cpp index f15be5bea6..fc27f0383e 100644 --- a/src/libslic3r/Measure.cpp +++ b/src/libslic3r/Measure.cpp @@ -723,8 +723,8 @@ MeasurementResult get_measurement(const SurfaceFeature& a, const SurfaceFeature& if (f2.get_type() == SurfaceFeatureType::Point) { Vec3d diff = (f2.get_point() - f1.get_point()); result.distance_strict = std::make_optional(DistAndPoints{diff.norm(), f1.get_point(), f2.get_point()}); - result.distance_xyz = diff; - + result.distance_xyz = diff.cwiseAbs(); + /////////////////////////////////////////////////////////////////////////// } else if (f2.get_type() == SurfaceFeatureType::Edge) { const auto [s,e] = f2.get_edge(); diff --git a/src/libslic3r/Measure.hpp b/src/libslic3r/Measure.hpp index 6d6dca14fe..ede8c634ee 100644 --- a/src/libslic3r/Measure.hpp +++ b/src/libslic3r/Measure.hpp @@ -156,10 +156,10 @@ struct MeasurementResult { angle->transform(trafo); if (distance_infinite.has_value()) distance_infinite->transform(trafo); - if (distance_strict.has_value()) + if (distance_strict.has_value()) { distance_strict->transform(trafo); - if (distance_xyz.has_value()) - distance_xyz = trafo * *distance_xyz; + distance_xyz = (distance_strict->to - distance_strict->from).cwiseAbs(); + } } };