From b905a8f41a36d1b8b852fd58216cba2db8b0b675 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mael=20Rouxel-Labb=C3=A9?= Date: Mon, 26 Feb 2024 17:54:17 +0100 Subject: [PATCH] Add missing function in IsosurfacingDomain_3 concept --- .../Concepts/IsosurfacingDomain_3.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/Isosurfacing_3/doc/Isosurfacing_3/Concepts/IsosurfacingDomain_3.h b/Isosurfacing_3/doc/Isosurfacing_3/Concepts/IsosurfacingDomain_3.h index daa315e1845..2660e013ed9 100644 --- a/Isosurfacing_3/doc/Isosurfacing_3/Concepts/IsosurfacingDomain_3.h +++ b/Isosurfacing_3/doc/Isosurfacing_3/Concepts/IsosurfacingDomain_3.h @@ -165,5 +165,22 @@ public: template void for_each_cell(Functor& f) const; + /*! + Constructs the intersection - if it exists - between an edge and an isosurface. + + \param p_0 the geometric position of the first vertex of the edge + \param p_1 the geometric position of the second vertex of the edge + \param val_0 the value at the first vertex of the edge + \param val_1 the value at the second vertex of the edge + \param isovalue the isovalue defining the isosurfacing with which we seek an intersection + \param p the intersection point, if it exists + + \returns `true` if the intersection point exists, `false` otherwise + */ + bool construct_intersection(const Point_3& p_0, const Point_3& p_1, + const FT val_0, const FT val_1, + const FT isovalue, + Point_3& p) const; + /// @} };