Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
isoSurfaceParams Class Reference

Preferences for controlling iso-surface algorithms. More...

Inheritance diagram for isoSurfaceParams:
Inheritance graph
[legend]
Collaboration diagram for isoSurfaceParams:
Collaboration graph
[legend]

Public Types

enum  algorithmType : uint8_t { ALGO_DEFAULT = 0, ALGO_TOPO, ALGO_CELL, ALGO_POINT }
 
enum  filterType : uint8_t {
  NONE = 0, CELL, DIAGCELL, NONMANIFOLD,
  PARTIAL = CELL, FULL = DIAGCELL, CLEAN = NONMANIFOLD
}
 

Public Member Functions

 isoSurfaceParams (const algorithmType algo=algorithmType::ALGO_DEFAULT, const filterType filter=filterType::DIAGCELL) noexcept
 
 isoSurfaceParams (const dictionary &dict, const isoSurfaceParams &params=isoSurfaceParams())
 
 isoSurfaceParams (const dictionary &dict, const algorithmType algo, const filterType filter=filterType::DIAGCELL)
 
algorithmType algorithm () const noexcept
 
void algorithm (algorithmType algo) noexcept
 
filterType filter () const noexcept
 
void filter (filterType fltr) noexcept
 
bool snap () const noexcept
 
void snap (bool on) noexcept
 
scalar mergeTol () const noexcept
 
void mergeTol (const scalar relTol) noexcept
 
const boundBoxgetClipBounds () const noexcept
 
boundBoxgetClipBounds () noexcept
 
void setClipBounds (const boundBox &bb)
 
void print (Ostream &os) const
 

Static Public Member Functions

static algorithmType getAlgorithmType (const dictionary &dict, const algorithmType deflt)
 
static filterType getFilterType (const dictionary &dict, const filterType deflt)
 

Static Public Attributes

static const Enum< algorithmTypealgorithmNames
 
static const Enum< filterTypefilterNames
 

Detailed Description

Preferences for controlling iso-surface algorithms.

Some common dictionary properties:

Property Description Required Default
isoMethod Algorithm (cell/topo/point/default) no default
regularise Face simplification (enum or bool) no true
mergeTol Point merge tolerance (cell/point) no 1e-6
snap Point snapping (topo) no true
bounds Optional clip bounds no inverted

The default algorithm denotes the use of the current standard algorithm.

Filtering types (for topological iso-surface)

Source files

Definition at line 103 of file isoSurfaceParams.H.

Member Enumeration Documentation

◆ algorithmType

enum algorithmType : uint8_t
Enumerator
ALGO_DEFAULT 

Use current 'standard' algorithm.

ALGO_TOPO 
ALGO_CELL 
ALGO_POINT 

Definition at line 110 of file isoSurfaceParams.H.

◆ filterType

enum filterType : uint8_t
strong
Enumerator
NONE 

No filtering.

CELL 

Remove pyramid edge points.

DIAGCELL 

Remove pyramid edge points, face-diagonals.

NONMANIFOLD 

Remove pyramid edge points, face-diagonals and non-manifold faces

PARTIAL 

Same as CELL.

FULL 

Same as DIAGCELL.

CLEAN 

Same as NONMANIFOLD.

Definition at line 119 of file isoSurfaceParams.H.

Constructor & Destructor Documentation

◆ isoSurfaceParams() [1/3]

isoSurfaceParams ( const algorithmType  algo = algorithmType::ALGO_DEFAULT,
const filterType  filter = filterType::DIAGCELL 
)
explicitnoexcept

Definition at line 128 of file isoSurfaceParams.C.

◆ isoSurfaceParams() [2/3]

isoSurfaceParams ( const dictionary dict,
const isoSurfaceParams params = isoSurfaceParams() 
)
explicit

Definition at line 142 of file isoSurfaceParams.C.

References dict.

◆ isoSurfaceParams() [3/3]

isoSurfaceParams ( const dictionary dict,
const algorithmType  algo,
const filterType  filter = filterType::DIAGCELL 
)
explicit

Definition at line 158 of file isoSurfaceParams.C.

Member Function Documentation

◆ getAlgorithmType()

Foam::isoSurfaceParams::algorithmType getAlgorithmType ( const dictionary dict,
const algorithmType  deflt 
)
static

Definition at line 61 of file isoSurfaceParams.C.

References dict.

◆ getFilterType()

Foam::isoSurfaceParams::filterType getFilterType ( const dictionary dict,
const filterType  deflt 
)
static

Definition at line 93 of file isoSurfaceParams.C.

References dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Foam::ListOps::find(), Switch::good(), and Foam::nl.

Here is the call graph for this function:

◆ algorithm() [1/2]

algorithmType algorithm ( ) const
inlinenoexcept

Definition at line 209 of file isoSurfaceParams.H.

Referenced by distanceSurface::createGeometry(), isoSurfaceBase::New(), and sampledIsoSurface::sampledIsoSurface().

Here is the caller graph for this function:

◆ algorithm() [2/2]

void algorithm ( algorithmType  algo)
inlinenoexcept

Definition at line 215 of file isoSurfaceParams.H.

◆ filter() [1/2]

filterType filter ( ) const
inlinenoexcept

Definition at line 221 of file isoSurfaceParams.H.

Referenced by isoSurfaceCell::isoSurfaceCell(), isoSurfacePoint::isoSurfacePoint(), and isoSurfaceTopo::isoSurfaceTopo().

Here is the caller graph for this function:

◆ filter() [2/2]

void filter ( filterType  fltr)
inlinenoexcept

Definition at line 227 of file isoSurfaceParams.H.

◆ snap() [1/2]

bool snap ( ) const
inlinenoexcept

Definition at line 233 of file isoSurfaceParams.H.

◆ snap() [2/2]

void snap ( bool  on)
inlinenoexcept

Definition at line 239 of file isoSurfaceParams.H.

◆ mergeTol() [1/2]

scalar mergeTol ( ) const
inlinenoexcept

Definition at line 245 of file isoSurfaceParams.H.

Referenced by isoSurfaceCell::isoSurfaceCell(), and isoSurfacePoint::isoSurfacePoint().

Here is the caller graph for this function:

◆ mergeTol() [2/2]

void mergeTol ( const scalar  relTol)
inlinenoexcept

Definition at line 251 of file isoSurfaceParams.H.

◆ getClipBounds() [1/2]

const boundBox& getClipBounds ( ) const
inlinenoexcept

Definition at line 257 of file isoSurfaceParams.H.

Referenced by isoSurfaceTopo::isoSurfaceTopo().

Here is the caller graph for this function:

◆ getClipBounds() [2/2]

boundBox& getClipBounds ( )
inlinenoexcept

Definition at line 263 of file isoSurfaceParams.H.

◆ setClipBounds()

void setClipBounds ( const boundBox bb)

Definition at line 170 of file isoSurfaceParams.C.

◆ print()

void print ( Ostream os) const

Definition at line 176 of file isoSurfaceParams.C.

References os().

Here is the call graph for this function:

Member Data Documentation

◆ algorithmNames

const Foam::Enum< Foam::isoSurfaceParams::algorithmType > algorithmNames
static

Definition at line 158 of file isoSurfaceParams.H.

◆ filterNames

const Foam::Enum< Foam::isoSurfaceParams::filterType > filterNames
static

Definition at line 161 of file isoSurfaceParams.H.

Referenced by isoSurfaceTopo::isoSurfaceTopo().


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