37#ifndef cellSizeFunction_H
38#define cellSizeFunction_H
132 const scalar& defaultCellSize,
135 (cellSizeFunctionDict, surface, defaultCellSize, regionIndices)
147 const scalar& defaultCellSize,
159 const scalar& defaultCellSize,
This class describes the interaction of (usually) a face and a point. It carries the info of a succes...
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Abstract base class for specifying target cell sizes.
sideMode
Surface side mode.
const scalar & defaultCellSize_
const labelList regionIndices_
Index of the region of the surface that this cell size function.
static scalar snapToSurfaceTol_
Point closeness tolerance to a surface where the function "snaps" to.
static autoPtr< cellSizeFunction > New(const dictionary &cellSizeFunctionDict, const searchableSurface &surface, const scalar &defaultCellSize, const labelList regionIndices)
Return a reference to the selected cellSizeFunction.
virtual ~cellSizeFunction()
Destructor.
const searchableSurface & surface_
Reference to the searchableSurface that cellSizeFunction.
declareRunTimeSelectionTable(autoPtr, cellSizeFunction, dictionary,(const dictionary &cellSizeFunctionDict, const searchableSurface &surface, const scalar &defaultCellSize, const labelList regionIndices),(cellSizeFunctionDict, surface, defaultCellSize, regionIndices))
const dictionary & coeffsDict() const
Const access to the details dictionary.
cellSizeFunction(const word &type, const dictionary &cellSizeFunctionDict, const searchableSurface &surface, const scalar &defaultCellSize, const labelList regionIndices)
Construct from components.
scalarField surfaceCellSize_
Cell size at the surface.
virtual bool cellSize(const point &pt, scalar &size) const =0
Modify scalar argument to the cell size specified by function.
virtual bool sizeLocations(const pointIndexHit &hitPt, const vector &n, pointField &shapePts, scalarField &shapeSizes) const =0
sideMode sideMode_
Mode of size specification, i.e. inside, outside or bothSides.
void operator=(const cellSizeFunction &)=delete
No copy assignment.
cellSizeFunction(const cellSizeFunction &)=delete
No copy construct.
virtual bool setCellSize(const pointField &pts)
autoPtr< surfaceCellSizeFunction > surfaceCellSizeFunction_
dictionary coeffsDict_
Method details dictionary.
TypeName("cellSizeFunction")
Runtime type information.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Base class of (analytical or triangulated) surface. Encapsulates all the search routines....
A class for handling words, derived from Foam::string.
#define WarningInFunction
Report a warning using Foam::Warning.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
Ostream & endl(Ostream &os)
Add newline and flush stream.
Macros to ease declaration of run-time selection tables.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes)
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.