A cellMatcher for hex cells. More...
#include <OpenFOAM/hexMatcher.H>
A cellMatcher for hex cells.
Definition at line 52 of file hexMatcher.H.
Public Member Functions | |
hexMatcher () | |
Construct null.
| |
~hexMatcher () | |
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)
|
hexMatcher | ( | ) |
Construct null.
Definition at line 39 of file hexMatcher.C.
~hexMatcher | ( | ) |
Definition at line 53 of file hexMatcher.C.
virtual label nVertPerCell | ( | ) | const [inline, virtual]
|
Implements cellMatcher.
Definition at line 87 of file hexMatcher.H.
virtual label nFacePerCell | ( | ) | const [inline, virtual]
|
Implements cellMatcher.
Definition at line 92 of file hexMatcher.H.
virtual label nMaxVertPerFace | ( | ) | const [inline, virtual]
|
Implements cellMatcher.
Definition at line 97 of file hexMatcher.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 247 of file hexMatcher.C.
Check whether number of face sizes match the shape.
Implements cellMatcher.
Definition at line 254 of file hexMatcher.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 60 of file hexMatcher.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 278 of file hexMatcher.C.
References primitiveMesh::cells(), primitiveMesh::faceOwner(), and primitiveMesh::faces().
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 291 of file hexMatcher.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 306 of file hexMatcher.C.
References primitiveMesh::cells(), primitiveMesh::faceOwner(), and primitiveMesh::faces().