All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
combineFaces Class Reference

Combines boundary faces into single face. The faces get the patch of the first face ('the master') More...

Public Member Functions

 ClassName ("combineFaces")
 Runtime type information. More...
 
 combineFaces (const polyMesh &mesh, const bool undoable=false)
 Construct from mesh. More...
 
 combineFaces (const combineFaces &)=delete
 Disallow default bitwise copy construction. More...
 
const labelListmasterFace () const
 If undoable: masterface for every set. More...
 
const labelListsavedPointLabels () const
 If undoable: set of original point labels of stored points. More...
 
labelListList getMergeSets (const scalar featureCos, const scalar minConcaveCos, const labelHashSet &patchIDs, const labelHashSet &boundaryCells) const
 Extract lists of all (non-coupled) boundary faces on selected. More...
 
labelListList getMergeSets (const scalar featureCos, const scalar minConcaveCos, const labelHashSet &patchIDs) const
 Extract lists of all (non-coupled) boundary faces on selected. More...
 
labelListList getMergeSets (const scalar featureCos, const scalar minConcaveCos) const
 Extract lists of all (non-coupled) boundary faces that can. More...
 
void setRefinement (const labelListList &, polyTopoChange &)
 Play commands into polyTopoChange to combine faces. Gets. More...
 
void updateMesh (const mapPolyMesh &)
 Force recalculation of locally stored data on topological change. More...
 
void setUnrefinement (const labelList &masterFaces, polyTopoChange &meshMod, Map< label > &restoredPoints, Map< label > &restoredFaces, Map< label > &restoredCells)
 Play commands into polyTopoChange to reinsert original faces. More...
 
void operator= (const combineFaces &)=delete
 Disallow default bitwise assignment. More...
 

Static Public Member Functions

static face getOutsideFace (const indirectPrimitivePatch &)
 Gets outside of patch as a face (in mesh point labels) More...
 

Detailed Description

Combines boundary faces into single face. The faces get the patch of the first face ('the master')

Source files

Definition at line 55 of file combineFaces.H.

Constructor & Destructor Documentation

◆ combineFaces() [1/2]

combineFaces ( const polyMesh mesh,
const bool  undoable = false 
)

Construct from mesh.

Definition at line 288 of file combineFaces.C.

References combineFaces::getMergeSets().

Here is the call graph for this function:

◆ combineFaces() [2/2]

combineFaces ( const combineFaces )
delete

Disallow default bitwise copy construction.

Member Function Documentation

◆ ClassName()

ClassName ( "combineFaces"  )

Runtime type information.

◆ masterFace()

const labelList& masterFace ( ) const
inline

If undoable: masterface for every set.

Definition at line 137 of file combineFaces.H.

Referenced by meshRefinement::mergePatchFacesUndo().

Here is the caller graph for this function:

◆ savedPointLabels()

const labelList& savedPointLabels ( ) const
inline

If undoable: set of original point labels of stored points.

Definition at line 143 of file combineFaces.H.

References combineFaces::getMergeSets(), combineFaces::getOutsideFace(), combineFaces::operator=(), combineFaces::setRefinement(), combineFaces::setUnrefinement(), and combineFaces::updateMesh().

Referenced by meshRefinement::mergePatchFacesUndo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getMergeSets() [1/3]

Foam::labelListList getMergeSets ( const scalar  featureCos,
const scalar  minConcaveCos,
const labelHashSet patchIDs,
const labelHashSet boundaryCells 
) const

Extract lists of all (non-coupled) boundary faces on selected.

patches and cells that can be merged. Uses getFaceRegions.

Definition at line 305 of file combineFaces.C.

References forAllConstIter(), List< T >::setSize(), List< T >::size(), and HashTable< T, Key, Hash >::size().

Referenced by combineFaces::combineFaces(), combineFaces::getMergeSets(), meshRefinement::mergePatchFacesUndo(), and combineFaces::savedPointLabels().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getMergeSets() [2/3]

Foam::labelListList getMergeSets ( const scalar  featureCos,
const scalar  minConcaveCos,
const labelHashSet patchIDs 
) const

Extract lists of all (non-coupled) boundary faces on selected.

patches that can be merged. Uses getFaceRegions.

Definition at line 390 of file combineFaces.C.

References polyPatch::coupled(), forAll, forAllConstIter(), combineFaces::getMergeSets(), HashSet< Key, Hash >::insert(), and polyPatch::start().

Here is the call graph for this function:

◆ getMergeSets() [3/3]

Foam::labelListList getMergeSets ( const scalar  featureCos,
const scalar  minConcaveCos 
) const

Extract lists of all (non-coupled) boundary faces that can.

be merged. Uses getFaceRegions.

Definition at line 420 of file combineFaces.C.

References combineFaces::getOutsideFace(), and Foam::identity().

Here is the call graph for this function:

◆ getOutsideFace()

◆ setRefinement()

void setRefinement ( const labelListList faceSets,
polyTopoChange meshMod 
)

Play commands into polyTopoChange to combine faces. Gets.

labelListList of sets of faces to combine. Does no check for whether resulting face is legal.

Definition at line 563 of file combineFaces.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, faceZone::flipMap(), forAll, HashTable< T, Key, Hash >::insert(), n, Foam::nl, patchi, polyTopoChange::setAction(), UIndirectList< T >::size(), List< T >::size(), syncTools::syncPointList(), faceZone::whichFace(), and polyBoundaryMesh::whichPatch().

Referenced by combineFaces::getOutsideFace(), meshRefinement::mergePatchFacesUndo(), and combineFaces::savedPointLabels().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateMesh()

void updateMesh ( const mapPolyMesh map)

Force recalculation of locally stored data on topological change.

Definition at line 788 of file combineFaces.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::inplaceRenumber(), Foam::nl, mapPolyMesh::reverseFaceMap(), mapPolyMesh::reversePointMap(), and combineFaces::setUnrefinement().

Referenced by meshRefinement::mergePatchFacesUndo(), and combineFaces::savedPointLabels().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setUnrefinement()

void setUnrefinement ( const labelList masterFaces,
polyTopoChange meshMod,
Map< label > &  restoredPoints,
Map< label > &  restoredFaces,
Map< label > &  restoredCells 
)

Play commands into polyTopoChange to reinsert original faces.

No other topo changes can be done in between setRefinement and setUnrefinement. Can be called multiple times to undo parts of the last setRefinement call. Gets the master face labels whose sets need to be restored. Returns maps from added restored point to original point label (i.e. content of savedPointLabels_). (only restoredPoints are actually set; rest are just for generalness)

Definition at line 837 of file combineFaces.C.

References Foam::abort(), UList< T >::empty(), HashTableCore::end(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, HashTable< T, Key, Hash >::find(), faceZone::flipMap(), forAll, HashTable< T, Key, Hash >::insert(), patchi, polyTopoChange::setAction(), List< T >::size(), and faceZone::whichFace().

Referenced by meshRefinement::mergePatchFacesUndo(), combineFaces::savedPointLabels(), and combineFaces::updateMesh().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

void operator= ( const combineFaces )
delete

Disallow default bitwise assignment.

Referenced by combineFaces::savedPointLabels().

Here is the caller graph for this function:

The documentation for this class was generated from the following files: