Go to the documentation of this file.
92 #ifndef cellClassification_H
93 #define cellClassification_H
107 class triSurfaceSearch;
177 const label meshType,
227 const label meshType,
240 const label meshType,
241 const label fillType,
249 const label meshType,
250 const label fillType,
258 const label meshType,
259 const label fillType,
Various (local, not parallel) searches on polyMesh; uses (demand driven) octree to search.
bool usesMixedPointsOnly(const List< pointStatus > &, const label cellI) const
Return true if cell uses only points with status=mixed.
const polyMesh & mesh_
Reference to mesh.
boolList markFaces(const triSurfaceSearch &) const
Mark all faces intersected by or intersecting surface.
Helper class to search on triSurface.
Mesh consisting of general polyhedral cells.
label trimCutCells(const label nLayers, const label meshType, const label fillType)
label fillHangingCells(const label meshType, const label fillType, const label maxIter)
Find hanging cells (cells with all points on outside) and set their.
static label count(const labelList &elems, const label elem)
Count number of occurrences of elem in list.
pointStatus
Enumeration defining the whether points are use by cells of.
void classifyPoints(const label meshType, const labelList &cellType, List< pointStatus > &pointSide) const
Use cell status to classify points as being internal to meshType,.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Pre-declare SubField and related Field type.
cellClassification(const polyMesh &mesh, const meshSearch &meshQuery, const triSurfaceSearch &surfQuery, const pointField &outsidePoints)
Construct from mesh and surface and point(s) on outside.
void operator=(const cellClassification &)
label fillRegionEdges(const label meshType, const label fillType, const label maxIter)
Find regionEdges and fill one neighbour. Iterate until nothing.
ClassName("cellClassification")
void markCells(const meshSearch &queryMesh, const boolList &piercedFace, const pointField &outsidePts)
Divide cells into cut/inside/outside by using MeshWave from cut.
'Cuts' a mesh with a surface.
void writeStats(Ostream &os) const
Write statistics on cell types to Ostream.
const polyMesh & mesh() const
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
label fillRegionPoints(const label meshType, const label fillType, const label maxIter)
Find regionPoints and fill all neighbours. Iterate until nothing.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
label growSurface(const label meshType, const label fillType)
Sets vertex neighbours of meshType cells to fillType.
void getMeshOutside(const label meshType, faceList &, labelList &) const
Get faces (and its 'owner') inbetween cells of differing type.