QUAOAR STUDIO // Mobius API
mobius::poly_BaseDistanceField Class Referenceabstract

#include <poly_BaseDistanceField.h>

Inheritance diagram for mobius::poly_BaseDistanceField:
Collaboration diagram for mobius::poly_BaseDistanceField:

Public Member Functions

virtual bool Build (const double minCellSize, const double maxCellSize, const t_ptr< poly_RealFunc > &func)=0
 
virtual poly_SVOGetRoot ()=0
 
- Public Member Functions inherited from mobius::poly_RealFunc
 poly_RealFunc ()
 Default ctor.
 
 poly_RealFunc (const t_xyz &domainMin, const t_xyz &domainMax)
 
const t_xyzGetDomainMin () const
 
const t_xyzGetDomainMax () const
 
- Public Member Functions inherited from mobius::core_TrivariateFunc
virtual double Eval (const double x, const double y, const double z) const =0
 
- Public Member Functions inherited from mobius::core_OBJECT
mobiusCore_EXPORT void IncRef ()
 
mobiusCore_EXPORT void DecRef ()
 
mobiusCore_EXPORT int NbRefs () const
 
virtual mobiusCore_EXPORT void Dump (std::ostream *out) const
 
const mobiusCore_EXPORT std::string & GetName () const
 
mobiusCore_EXPORT void SetName (const std::string &name)
 
mobiusCore_EXPORT bool HasName () const
 

Static Public Member Functions

static mobiusPoly_EXPORT bool IsIn (poly_SVO *pNode)
 
static mobiusPoly_EXPORT bool IsOut (poly_SVO *pNode)
 
static mobiusPoly_EXPORT bool IsZeroCrossing (poly_SVO *pNode)
 

Additional Inherited Members

- Protected Attributes inherited from mobius::poly_RealFunc
t_xyz m_domainMin
 Min bound of the three-dimensional domain.
 
t_xyz m_domainMax
 Max bound of the three-dimensional domain.
 

Detailed Description

Base class for voxel-based distance fields.

Member Function Documentation

◆ IsIn()

static mobiusPoly_EXPORT bool mobius::poly_BaseDistanceField::IsIn ( poly_SVO pNode)
static

Checks if the passed SVO node is completely inside of the initial shape.

Parameters
[in]pNodeSVO node to check.
Returns
true/false.

◆ IsOut()

static mobiusPoly_EXPORT bool mobius::poly_BaseDistanceField::IsOut ( poly_SVO pNode)
static

Checks if the passed SVO node is completely outside of the initial shape.

Parameters
[in]pNodeSVO node to check.
Returns
true/false.

◆ IsZeroCrossing()

static mobiusPoly_EXPORT bool mobius::poly_BaseDistanceField::IsZeroCrossing ( poly_SVO pNode)
static

Checks if the passed SVO node crosses zero isosurface level, i.e., it captures the boundary of the initial shape.

Parameters
[in]pNodeSVO node to check.
Returns
true/false.

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