|
| 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 |
| Full constructor. Computes the smooth CSG difference.
|
|
| 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 |
| Full constructor. Computes the CSG difference between A and the union of the B's.
|
|
virtual | ~SmoothDifferenceIF ()=default |
| Destructor (does nothing)
|
|
T | value (const Vec3T< T > &a_point) const noexcept override |
| Value function.
|
|
| 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.
|
|
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.
|
|
template<
class T>
class SmoothDifferenceIF< T >
CSG difference between two implicit functions.