A surface defined by a distance from an input searchable surface. Uses an iso-surface algorithm (cell, topo, point) for constructing the distance surface. More...
Public Member Functions | |
TypeName ("distanceSurface") | |
Runtime type information. More... | |
distanceSurface (const word &defaultSurfaceName, const polyMesh &mesh, const dictionary &dict) | |
Construct from dictionary. More... | |
distanceSurface (const polyMesh &mesh, const bool interpolate, const word &surfaceType, const word &surfaceName, const scalar distance, const bool signedDistance, const isoSurfaceBase::algorithmType algo, const isoSurfaceBase::filterType filter, const boundBox &bounds=boundBox::invertedBox) | |
Construct from components. More... | |
virtual | ~distanceSurface ()=default |
Destructor. More... | |
void | createGeometry () |
Create/recreate the distance surface. More... | |
const word & | surfaceName () const |
The name of the underlying searchableSurface. More... | |
scalar | distance () const |
The distance to the underlying searchableSurface. More... | |
const meshedSurface & | surface () const |
The underlying surface. More... | |
meshedSurface & | surface () |
The underlying surface. More... | |
const labelList & | meshCells () const |
For each face, the original cell in mesh. More... | |
labelList & | meshCells () |
For each face, the original cell in mesh. More... | |
template<class Type > | |
tmp< Field< Type > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &cellValues, const Field< Type > &pointValues) const |
Interpolate volume field onto surface points. More... | |
void | print (Ostream &os) const |
Print information. More... | |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | interpolate (const GeometricField< Type, fvPatchField, volMesh > &cellValues, const Field< Type > &pointValues) const |
A surface defined by a distance from an input searchable surface. Uses an iso-surface algorithm (cell, topo, point) for constructing the distance surface.
Property | Description | Required | Default |
---|---|---|---|
distance | distance from surface | yes | |
signed | Use sign when distance is positive | partly | |
isoAlgorithm | (cell/topo/point) | no | cell |
regularise | Point snapping (enum or bool) | no | true |
bounds | Limit with bounding box | no | |
surfaceType | Type of surface | yes | |
surfaceName | Name of surface in triSurface/ | no | dict name |
For compatibility, the keyword 'cell' (as a bool) is accepted
Definition at line 121 of file distanceSurface.H.
distanceSurface | ( | const word & | defaultSurfaceName, |
const polyMesh & | mesh, | ||
const dictionary & | dict | ||
) |
Construct from dictionary.
Definition at line 88 of file distanceSurface.C.
distanceSurface | ( | const polyMesh & | mesh, |
const bool | interpolate, | ||
const word & | surfaceType, | ||
const word & | surfaceName, | ||
const scalar | distance, | ||
const bool | signedDistance, | ||
const isoSurfaceBase::algorithmType | algo, | ||
const isoSurfaceBase::filterType | filter, | ||
const boundBox & | bounds = boundBox::invertedBox |
||
) |
Construct from components.
Definition at line 134 of file distanceSurface.C.
|
virtualdefault |
Destructor.
TypeName | ( | "distanceSurface" | ) |
Runtime type information.
void createGeometry | ( | ) |
Create/recreate the distance surface.
Definition at line 180 of file distanceSurface.C.
References boundBox::add(), isoSurfaceBase::ALGO_CELL, isoSurfaceBase::ALGO_POINT, isoSurfaceBase::ALGO_TOPO, bitSet::any(), GeometricField< Type, PatchField, GeoMesh >::boundaryField(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), fvMesh::C(), primitiveMesh::cellPoints(), boundBox::clear(), PackedList< Width >::clear(), boundBox::contains(), Foam::expressions::patchExpr::debug, Foam::diff(), Foam::dimLength, Foam::constant::electromagnetic::e, Foam::endl(), Foam::equal(), fld, forAll, boundBox::inflate(), Foam::mag(), primitiveMesh::nCells(), MeshObject< polyMesh, UpdateableMeshObject, pointMesh >::New(), IOobject::NO_READ, IOobject::NO_WRITE, primitiveMesh::nPoints(), polyMesh::points(), Foam::Pout, GeometricField< Type, PatchField, GeoMesh >::primitiveFieldRef(), distanceSurface::print(), PackedList< Width >::resize(), bitSet::set(), Foam::sign(), fvMesh::time(), Time::timeName(), Ostream::write(), and Foam::Zero.
Referenced by sampledDistanceSurface::update().
|
inline |
The name of the underlying searchableSurface.
Definition at line 202 of file distanceSurface.H.
|
inline |
The distance to the underlying searchableSurface.
Definition at line 208 of file distanceSurface.H.
|
inline |
The underlying surface.
Definition at line 215 of file distanceSurface.H.
Referenced by sampledDistanceSurface::Cf(), sampledDistanceSurface::faces(), sampledDistanceSurface::magSf(), sampledDistanceSurface::points(), and sampledDistanceSurface::Sf().
|
inline |
The underlying surface.
Definition at line 230 of file distanceSurface.H.
|
inline |
For each face, the original cell in mesh.
Definition at line 244 of file distanceSurface.H.
|
inline |
For each face, the original cell in mesh.
Definition at line 258 of file distanceSurface.H.
tmp<Field<Type> > interpolate | ( | const GeometricField< Type, fvPatchField, volMesh > & | cellValues, |
const Field< Type > & | pointValues | ||
) | const |
Interpolate volume field onto surface points.
void print | ( | Ostream & | os | ) | const |
Print information.
Definition at line 468 of file distanceSurface.C.
References Foam::distance().
Referenced by distanceSurface::createGeometry(), and sampledDistanceSurface::print().
Foam::tmp<Foam::Field<Type> > interpolate | ( | const GeometricField< Type, fvPatchField, volMesh > & | cellValues, |
const Field< Type > & | pointValues | ||
) | const |
Definition at line 35 of file distanceSurfaceTemplates.C.