isoSurfaceParams Class Reference

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

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

Public Types

enum  algorithmType : uint8_t { ALGO_DEFAULT = 0, ALGO_TOPO, ALGO_CELL, ALGO_POINT }
 The algorithm types. More...
 
enum  filterType : uint8_t {
  NONE = 0, CELL, DIAGCELL, PARTIAL = CELL,
  FULL = DIAGCELL
}
 The filtering (regularization) to apply. More...
 

Public Member Functions

 isoSurfaceParams (const algorithmType algo=algorithmType::ALGO_DEFAULT, const filterType filter=filterType::DIAGCELL) noexcept
 Default construct, or with specified algorithm. More...
 
 isoSurfaceParams (const dictionary &dict, const isoSurfaceParams &params=isoSurfaceParams())
 Default construct, setting parameters from dictionary. More...
 
 isoSurfaceParams (const dictionary &dict, const algorithmType algo, const filterType filter=filterType::DIAGCELL)
 Default construct, setting parameters from dictionary. More...
 
algorithmType algorithm () const noexcept
 Get current algorithm. More...
 
void algorithm (algorithmType algo) noexcept
 Set algorithm. More...
 
filterType filter () const noexcept
 Get current filter type. More...
 
void filter (filterType fltr) noexcept
 Set filter type. More...
 
scalar mergeTol () const noexcept
 Get current merge tolerance. More...
 
void mergeTol (const scalar relTol) noexcept
 Set merge tolerance (cell/point algo) More...
 
const boundBoxgetClipBounds () const noexcept
 Get optional clipping bounding box. More...
 
boundBoxgetClipBounds () noexcept
 Access optional clipping bounding box. More...
 
void setClipBounds (const boundBox &bb)
 Set optional clipping bounding box. More...
 

Static Public Member Functions

static algorithmType getAlgorithmType (const dictionary &dict, const algorithmType deflt)
 Get 'isoMethod' or 'isoAlgorithm' as enumeration. More...
 
static filterType getFilterType (const dictionary &dict, const filterType deflt)
 Get 'regularise' as bool or enumeration. More...
 

Static Public Attributes

static const Enum< algorithmTypealgorithmNames
 Names for the iso-surface algorithms. More...
 
static const Enum< filterTypefilterNames
 Names for the filtering types. More...
 

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
bounds Optional clip bounds no inverted

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

Source files

Definition at line 91 of file isoSurfaceParams.H.

Member Enumeration Documentation

◆ algorithmType

enum algorithmType : uint8_t

The algorithm types.

Enumerator
ALGO_DEFAULT 

Use current 'standard' algorithm.

ALGO_TOPO 
ALGO_CELL 
ALGO_POINT 

Definition at line 98 of file isoSurfaceParams.H.

◆ filterType

enum filterType : uint8_t
strong

The filtering (regularization) to apply.

Enumerator
NONE 

No filtering.

CELL 

Remove pyramid edge points.

DIAGCELL 

Remove pyramid edge points, face-diagonals.

PARTIAL 

Same as CELL.

FULL 

Same as DIAGCELL.

Definition at line 107 of file isoSurfaceParams.H.

Constructor & Destructor Documentation

◆ isoSurfaceParams() [1/3]

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

Default construct, or with specified algorithm.

Definition at line 133 of file isoSurfaceParams.C.

◆ isoSurfaceParams() [2/3]

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

Default construct, setting parameters from dictionary.

Definition at line 146 of file isoSurfaceParams.C.

References dict.

◆ isoSurfaceParams() [3/3]

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

Default construct, setting parameters from dictionary.

Definition at line 161 of file isoSurfaceParams.C.

Member Function Documentation

◆ getAlgorithmType()

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

Get 'isoMethod' or 'isoAlgorithm' as enumeration.

Definition at line 66 of file isoSurfaceParams.C.

References dict.

◆ getFilterType()

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

Get 'regularise' as bool or enumeration.

Definition at line 98 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

Get current algorithm.

Definition at line 190 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

Set algorithm.

Definition at line 196 of file isoSurfaceParams.H.

◆ filter() [1/2]

filterType filter ( ) const
inlinenoexcept

Get current filter type.

Definition at line 202 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

Set filter type.

Definition at line 208 of file isoSurfaceParams.H.

◆ mergeTol() [1/2]

scalar mergeTol ( ) const
inlinenoexcept

Get current merge tolerance.

Definition at line 214 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

Set merge tolerance (cell/point algo)

Definition at line 220 of file isoSurfaceParams.H.

◆ getClipBounds() [1/2]

const boundBox& getClipBounds ( ) const
inlinenoexcept

Get optional clipping bounding box.

Definition at line 226 of file isoSurfaceParams.H.

Referenced by isoSurfaceTopo::isoSurfaceTopo().

Here is the caller graph for this function:

◆ getClipBounds() [2/2]

boundBox& getClipBounds ( )
inlinenoexcept

Access optional clipping bounding box.

Definition at line 232 of file isoSurfaceParams.H.

◆ setClipBounds()

void setClipBounds ( const boundBox bb)

Set optional clipping bounding box.

Definition at line 173 of file isoSurfaceParams.C.

Member Data Documentation

◆ algorithmNames

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

Names for the iso-surface algorithms.

Definition at line 139 of file isoSurfaceParams.H.

◆ filterNames

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

Names for the filtering types.

Definition at line 142 of file isoSurfaceParams.H.

Referenced by isoSurfaceTopo::isoSurfaceTopo().


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