A cellMatcher for tet cells. More...
#include <OpenFOAM/tetMatcher.H>
A cellMatcher for tet cells.
Definition at line 52 of file tetMatcher.H.
Public Member Functions | |
tetMatcher () | |
Construct null.
| |
~tetMatcher () | |
virtual label | nVertPerCell () const |
virtual label | nFacePerCell () const |
virtual label | nMaxVertPerFace () const |
virtual label | faceHashValue () const |
Hash value of all face sizes of this shape. Can be used for.
| |
virtual bool | faceSizeMatch (const faceList &, const labelList &) const |
Check whether number of face sizes match the shape.
| |
virtual bool | matchShape (const bool checkOnly, const faceList &faces, const labelList &faceOwner, const label cellI, const labelList &myFaces) |
Low level shape recognition. Return true if matches.
| |
virtual bool | isA (const primitiveMesh &mesh, const label cellI) |
Exact match. Uses faceSizeMatch.
| |
virtual bool | isA (const faceList &) |
Exact match given all the faces forming a cell. No checks.
| |
virtual bool | matches (const primitiveMesh &mesh, const label cellI, cellShape &shape) |
Like isA but also constructs a cellShape (if shape matches)
|
tetMatcher | ( | ) |
Construct null.
Definition at line 42 of file tetMatcher.C.
~tetMatcher | ( | ) |
Definition at line 56 of file tetMatcher.C.
virtual label nVertPerCell | ( | ) | const [inline, virtual]
|
Implements cellMatcher.
Definition at line 87 of file tetMatcher.H.
virtual label nFacePerCell | ( | ) | const [inline, virtual]
|
Implements cellMatcher.
Definition at line 92 of file tetMatcher.H.
virtual label nMaxVertPerFace | ( | ) | const [inline, virtual]
|
Implements cellMatcher.
Definition at line 97 of file tetMatcher.H.
Foam::label faceHashValue | ( | ) | const [virtual]
|
Hash value of all face sizes of this shape. Can be used for.
quick initial recognition.
Implements cellMatcher.
Definition at line 188 of file tetMatcher.C.
Check whether number of face sizes match the shape.
Implements cellMatcher.
Definition at line 195 of file tetMatcher.C.
References forAll, and List< T >::size().
bool matchShape | ( | const bool | checkOnly, |
const faceList & | faces, | ||
const labelList & | faceOwner, | ||
const label | cellI, | ||
const labelList & | myFaces | ||
) | [virtual]
|
Low level shape recognition. Return true if matches.
Works in detection mode only (checkOnly=true) or in exact matching. Returns true and sets vertLabels_. Needs faces, faceOwner of all faces in 'mesh' and cell number and labels of faces for this cell. cellI only used in combination with faceOwner to detect owner status.
Implements cellMatcher.
Definition at line 64 of file tetMatcher.C.
References Foam::meshTools::otherFace().
bool isA | ( | const primitiveMesh & | mesh, |
const label | cellI | ||
) | [virtual]
|
Exact match. Uses faceSizeMatch.
Returns true if cell matches shape exactly.
Implements cellMatcher.
Definition at line 218 of file tetMatcher.C.
References primitiveMesh::cells(), primitiveMesh::faceOwner(), and primitiveMesh::faces().
Referenced by isoSurfaceCell::isoSurfaceCell().
bool isA | ( | const faceList & | ) | [virtual]
|
Exact match given all the faces forming a cell. No checks.
on whether faces match up and form a closed shape.
Implements cellMatcher.
Definition at line 231 of file tetMatcher.C.
References List< T >::size().
bool matches | ( | const primitiveMesh & | mesh, |
const label | cellI, | ||
cellShape & | shape | ||
) | [virtual]
|
Like isA but also constructs a cellShape (if shape matches)
Implements cellMatcher.
Definition at line 246 of file tetMatcher.C.
References primitiveMesh::cells(), primitiveMesh::faceOwner(), and primitiveMesh::faces().