EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches
EBGeometry_DistanceQuality.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 Robert Marskar <robert.marskar@sintef.no>
2//
3// SPDX-License-Identifier: GPL-3.0-or-later
4
12#ifndef EBGEOMETRY_DISTANCEQUALITY_HPP
13#define EBGEOMETRY_DISTANCEQUALITY_HPP
14
15// Std includes
16#include <type_traits>
17
18namespace EBGeometry {
19
25{
29 Exact,
30
35 Bound,
36
42};
43
53template <class P, class = void>
61
66template <class P>
67struct DistanceQualityOf<P, std::void_t<decltype(P::distanceQuality)>>
68{
72 static constexpr DistanceQuality value = P::distanceQuality;
73};
74
79template <class P>
81
82} // namespace EBGeometry
83
84#endif
Namespace containing all of EBGeometry's functionality.
Definition EBGeometry_Affine.hpp:26
constexpr DistanceQuality distanceQualityOf
Shorthand for the value of DistanceQualityOf.
Definition EBGeometry_DistanceQuality.hpp:80
DistanceQuality
How far the value of a signed distance function can be trusted, from strongest to weakest.
Definition EBGeometry_DistanceQuality.hpp:25
@ Exact
The value's magnitude is the Euclidean distance to the surface.
@ Bound
The value's magnitude never exceeds the distance to the surface: it may underestimate,...
@ NotADistance
Only the sign is meaningful, so the function describes a surface (its zero level set) but says nothin...
The distance quality of a type: its static distanceQuality member if it has one, and DistanceQuality:...
Definition EBGeometry_DistanceQuality.hpp:55
static constexpr DistanceQuality value
The type's distance quality.
Definition EBGeometry_DistanceQuality.hpp:59