|
|
| SmoothDifferenceIF ()=delete |
| | Disallowed, use the full constructor.
|
| |
| | SmoothDifferenceIF (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunctionA, const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunctionB, const T a_smoothLen, const std::function< T(const T &a, const T &b, const T &s)> &a_smoothMax=SmoothMax< T >) noexcept |
| | Constructs the smooth difference A \ B from two implicit functions.
|
| |
| | SmoothDifferenceIF (const std::shared_ptr< ImplicitFunction< T > > &a_implicitFunctionA, const std::vector< std::shared_ptr< ImplicitFunction< T > > > &a_implicitFunctionsB, const T a_smoothLen, const std::function< T(const T &a, const T &b, const T &s)> &a_smoothMax=SmoothMax< T >) noexcept |
| | Constructs the smooth difference A \ union(Bs) from A and a list of subtrahends.
|
| |
|
| ~SmoothDifferenceIF () override=default |
| | Destructor.
|
| |
| T | value (const Vec3T< T > &a_point) const noexcept override |
| | Evaluates the smoothly blended signed distance at a_point.
|
| |
|
| ImplicitFunction ()=default |
| | Default constructor.
|
| |
|
virtual | ~ImplicitFunction ()=default |
| | Default destructor.
|
| |
| T | operator() (const Vec3T< T > &a_point) const noexcept |
| | Call operator — alternative signature for the value function.
|
| |
| 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 |
| | Compute an approximation to the bounding volume for the implicit surface using octree subdivision.
|
| |
template<
class T>
class EBGeometry::SmoothDifferenceIF< T >
Implicit function representing a smoothly blended set difference A \ B.
Implemented as a smooth intersection of A with the complement of B. A point is near-inside if it is inside A and outside (or near-outside) B; the interface is smoothed over a region of width m_smoothLen.
- Template Parameters
-
| T | Floating-point precision. |