12#ifndef EBGeometry_ImplicitFunction
13#define EBGeometry_ImplicitFunction
76#include "EBGeometry_NamespaceFooter.hpp"
78#include "EBGeometry_ImplicitFunctionImplem.hpp"
Declaration of a various bounding volumes used for bounding volume hierarchy.
Declaration of 2D and 3D point/vector classes with templated precision. Used with DCEL tools.
Abstract representation of an implicit function function (not necessarily signed distance).
Definition EBGeometry_ImplicitFunction.hpp:27
virtual T value(const Vec3T< T > &a_point) const noexcept=0
Value function. Points are outside the object if value > 0.0 and inside if value < 0....
virtual ~ImplicitFunction()=default
Destructor (does nothing)
T operator()(const Vec3T< T > &a_point) const noexcept
Alternative signature for the value function.
BV approximateBoundingVolumeOctree(const Vec3T< T > &a_initialLowCorner, const Vec3T< T > &a_initialHighCorner, const unsigned int a_maxTreeDepth, const T &a_safety=0.0) const noexcept
Compute an approximation to the bounding volume for the implicit surface, using octrees.
ImplicitFunction()=default
Disallowed, use the full constructor.
Three-dimensional vector class with arithmetic operators.
Definition EBGeometry_Vec.hpp:218