EBGeometry
1.0
|
Signed distance field for an axis-aligned box. More...
#include <EBGeometry_AnalyticDistanceFunctions.hpp>
Public Member Functions | |
BoxSDF ()=delete | |
Disallowed default constructor. | |
BoxSDF (const Vec3T< T > &a_loCorner, const Vec3T< T > &a_hiCorner) noexcept | |
Full constructor. Sets the low and high corner. More... | |
virtual | ~BoxSDF () noexcept |
Destructor (does nothing). | |
const Vec3T< T > & | getLowCorner () const noexcept |
Get lower-left corner. More... | |
Vec3T< T > & | getLowCorner () noexcept |
Get lower-left corner. More... | |
const Vec3T< T > & | getHighCorner () const noexcept |
Get upper-right corner. More... | |
Vec3T< T > & | getHighCorner () noexcept |
Get upper-right corner. More... | |
virtual T | signedDistance (const Vec3T< T > &a_point) const noexcept override |
Signed distance function for sphere. More... | |
Public Member Functions inherited from SignedDistanceFunction< T > | |
SignedDistanceFunction ()=default | |
Disallowed, use the full constructor. | |
virtual | ~SignedDistanceFunction ()=default |
Destructor (does nothing) | |
virtual T | value (const Vec3T< T > &a_point) const noexcept override final |
Implementation of ImplicitFunction::value. More... | |
virtual Vec3T< T > | normal (const Vec3T< T > &a_point, const T &a_delta) const noexcept |
Signed distance normal vector. More... | |
Public Member Functions inherited from ImplicitFunction< T > | |
ImplicitFunction ()=default | |
Disallowed, use the full constructor. | |
virtual | ~ImplicitFunction ()=default |
Destructor (does nothing) | |
T | operator() (const Vec3T< T > &a_point) const noexcept |
Alternative signature for the value function. More... | |
template<class BV > | |
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. More... | |
Protected Attributes | |
Vec3T< T > | m_loCorner |
Low box corner. | |
Vec3T< T > | m_hiCorner |
High box corner. | |
Signed distance field for an axis-aligned box.
|
inlinenoexcept |
Full constructor. Sets the low and high corner.
[in] | a_loCorner | Lower left corner |
[in] | a_hiCorner | Upper right corner |
Get upper-right corner.
Get upper-right corner.
Get lower-left corner.
Get lower-left corner.
|
inlineoverridevirtualnoexcept |
Signed distance function for sphere.
[in] | a_point | Position. |
Implements SignedDistanceFunction< T >.