EBGeometry
Compact, header-only C++ library for fast evaluation of signed distance functions
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
EBGeometry::Fused::MollifyOp< T > Struct Template Reference

Mollification: the operand convolved with a bump kernel sampled on a grid (CSGOps::mollify()). More...

#include <EBGeometry_Fused.hpp>

Public Member Functions

template<class O >
T evaluate (const O &a_operands, const Vec3T< T > &a_point) const noexcept
 The value.
 
template<class O >
BoundingVolumes::AABBT< T > box (const O &a_operands) const
 The box: the operand's, grown by sqrt(3) r (the operand's own if there is nothing to average).
 

Static Public Member Functions

template<class C >
static constexpr DistanceQuality quality () noexcept
 Distance quality: a bound, unless the operand is not a distance.
 

Public Attributes

CSGOps::MollifyGrid< T > m_grid
 The tap grid.
 
bool m_identity
 Whether there is nothing to average over (one sample per axis, or a zero distance).
 

Detailed Description

template<class T>
struct EBGeometry::Fused::MollifyOp< T >

Mollification: the operand convolved with a bump kernel sampled on a grid (CSGOps::mollify()).

With one sample per axis, or a zero distance, the value is the operand's, as Mollify() in the expression builder returns the operand itself.

Template Parameters
TFloating-point precision.

Member Function Documentation

◆ box()

template<class T >
template<class O >
BoundingVolumes::AABBT< T > EBGeometry::Fused::MollifyOp< T >::box ( const O &  a_operands) const
inline

The box: the operand's, grown by sqrt(3) r (the operand's own if there is nothing to average).

Template Parameters
OOperands type.
Parameters
[in]a_operandsOperands.
Returns
The box.

◆ evaluate()

template<class T >
template<class O >
T EBGeometry::Fused::MollifyOp< T >::evaluate ( const O &  a_operands,
const Vec3T< T > &  a_point 
) const
inlinenoexcept

The value.

Template Parameters
OOperands type.
Parameters
[in]a_operandsOperands.
[in]a_pointPoint.
Returns
The value.

◆ quality()

template<class T >
template<class C >
static constexpr DistanceQuality EBGeometry::Fused::MollifyOp< T >::quality ( )
inlinestaticconstexprnoexcept

Distance quality: a bound, unless the operand is not a distance.

Template Parameters
COperand type.
Returns
The quality.

The documentation for this struct was generated from the following file: