Go to the documentation of this file.
41 #ifndef cuttingSurfaceBase_H
42 #define cuttingSurfaceBase_H
91 template<
class EdgeOrientIntersect,
class EdgeAlphaIntersect>
96 const EdgeOrientIntersect& edgeOrientIntersect,
97 const EdgeAlphaIntersect& edgeAlphaIntersect,
125 bitSet&& cellSelectionMask
135 const word callerName,
173 const word callerName,
labelList & meshCells()
The mesh cells cut.
const labelList & meshCells() const
The mesh cells cut.
Pair< int > faceMap(const label facePi, const face &faceP, const label faceNi, const face &faceN)
A class for handling words, derived from Foam::string.
A bitSet stores bits (elements with only two states) in packed internal format and supports a variety...
virtual label triangulate()
Triangulate in-place, returning the number of triangles added.
cuttingSurfaceBase()
Construct null.
static void checkOverlap(const word callerName, const boundBox &meshBounds, const boundBox &userBounds)
Check and warn if bounding boxes do not intersect.
static bitSet cellSelection(const polyMesh &mesh, const boundBox &userBounds, const wordRes &zoneNames, boundBox &meshBounds)
Define cell selection from bounding-box and zones.
Mesh consisting of general polyhedral cells.
bool cut() const
Have any cells been cut?
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
virtual void remapFaces(const labelUList &faceMap)
Remap action on triangulation or cleanup.
void walkCellCuts(const primitiveMesh &mesh, const bitSet &cellCuts, const EdgeOrientIntersect &edgeOrientIntersect, const EdgeAlphaIntersect &edgeAlphaIntersect, const bool triangulate, label nFaceCuts=0)
Walk cell cuts to create faces.
static int debug
Debug information.
A List of wordRe with additional matching capabilities.
A bounding box defined in terms of min/max extrema points.
Base for creating a MeshedSurface by performing some type of cell cutting/intersection.
void operator=(const cuttingSurfaceBase &rhs)
Copy assignment.
virtual ~cuttingSurfaceBase()=default
Destructors.
A surface geometry mesh with zone information, not to be confused with the similarly named surfaceMes...
MeshedSurface< face > MeshStorage
Typedef for convenience.
virtual void performCut(const primitiveMesh &mesh, const bool triangulate, const labelUList &cellIdLabels)
Cut mesh, restricted to a list of cells.
labelList meshCells_
List of the cells cut.
Description of cuts across cells.
Cell-face mesh analysis engine.