A list of faces which address into the list of points. More...
#include <PrimitivePatch.H>


Public Types | |
| enum | surfaceTopo { MANIFOLD , OPEN , ILLEGAL } |
| Enumeration defining the surface type. Used in check routines. More... | |
| typedef std::remove_reference< FaceList >::type::value_type | face_type |
| The face type. | |
| typedef std::remove_reference< PointField >::type::value_type | point_type |
| The point type. | |
| typedef FaceList | FaceListType |
| The face list type. | |
| typedef PointField | PointFieldType |
| The point field type. | |
| typedef face_type | FaceType |
| Deprecated(2020-03) prefer face_type typedef. | |
Public Member Functions | |
| PrimitivePatch (const FaceList &faces, const PointField &points) | |
| Construct from components. | |
| PrimitivePatch (FaceList &&faces, const PointField &points) | |
| Construct from components, transferring faces. | |
| PrimitivePatch (FaceList &faces, PointField &points, const bool reuse) | |
| Construct from components, reuse storage. | |
| PrimitivePatch (const PrimitivePatch< FaceList, PointField > &pp) | |
| Copy construct. | |
| virtual | ~PrimitivePatch () |
| Destructor. | |
| void | clearOut () |
| void | clearGeom () |
| void | clearTopology () |
| void | clearPatchMeshAddr () |
| void | swap (PrimitivePatch &)=delete |
| Suppress direct swapping, since storage containers may be const. | |
| const Field< point_type > & | points () const noexcept |
| Return reference to global points. | |
| label | nFaces () const noexcept |
| Number of faces in the patch. | |
| label | nPoints () const |
| Number of points supporting patch faces. | |
| label | nEdges () const |
| Number of edges in patch. | |
| const edgeList & | edges () const |
| Return list of edges, address into LOCAL point list. | |
| const edgeList::subList | internalEdges () const |
| Return sub-list of internal edges, address into LOCAL point list. | |
| const edgeList::subList | boundaryEdges () const |
| Return sub-list of boundary edges, address into LOCAL point list. | |
| label | nInternalEdges () const |
| Number of internal edges. | |
| label | nBoundaryEdges () const |
| Number of boundary edges == (nEdges() - nInternalEdges()). | |
| bool | isInternalEdge (const label edgei) const |
| Is internal edge? | |
| const labelList & | boundaryPoints () const |
| Return list of boundary points, address into LOCAL point list. | |
| const labelListList & | faceFaces () const |
| Return face-face addressing. | |
| const labelListList & | edgeFaces () const |
| Return edge-face addressing. | |
| const labelListList & | faceEdges () const |
| Return face-edge addressing. | |
| const labelListList & | pointEdges () const |
| Return point-edge addressing. | |
| const labelListList & | pointFaces () const |
| Return point-face addressing. | |
| const List< face_type > & | localFaces () const |
| Return patch faces addressing into local point list. | |
| labelList | boundaryFaces () const |
| Extract list of local faces corresponding to the boundary edges. | |
| labelList | uniqBoundaryFaces () const |
| Extract sorted list of unique local faces associated with the boundary edges. | |
| const labelList & | meshPoints () const |
| Return labelList of mesh points in patch. | |
| const Map< label > & | meshPointMap () const |
| Mesh point map. | |
| const Field< point_type > & | localPoints () const |
| Return pointField of points in patch. | |
| const labelList & | localPointOrder () const |
| Return orders the local points for most efficient search. | |
| label | whichPoint (const label gp) const |
| Given a global point index, return the local point index. | |
| edge | meshEdge (const label edgei) const |
| From patch edge to global edge using meshPoints. | |
| edge | meshEdge (const edge &e) const |
| From patch edge to global edge using meshPoints. | |
| label | findEdge (const edge &e) const |
| Search for edge (local point labels) and return its index in the edge list or -1 if not found. | |
| labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
| Return labels of patch edges in the global edge list using cell addressing. | |
| labelList | meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const |
| Return labels of patch edges into the global edge list using basic edge addressing. | |
| label | meshEdge (const label edgei, const edgeList &allEdges, const labelListList &pointEdges) const |
| Return label of the local patch edge into the global edge list using basic edge addressing. | |
| labelList | meshEdges (const labelUList &edgeLabels, const edgeList &allEdges, const labelListList &pointEdges) const |
| Return labels of specified patch edges into the global edge list using basic edge addressing. | |
| const Field< point_type > & | faceCentres () const |
| Return face centres for patch. | |
| const Field< point_type > & | faceAreas () const |
| Return face area vectors for patch. | |
| const Field< scalar > & | magFaceAreas () const |
| Return face area magnitudes for patch. | |
| const Field< point_type > & | faceNormals () const |
| Return face unit normals for patch. | |
| const Field< point_type > & | pointNormals () const |
| Return point normals for patch. | |
| Pair< point_type > | box () const |
| The enclosing (bounding) box for the patch points. | |
| scalar | sphere (const label facei) const |
| The enclosing (bounding) sphere radius^2 for specified face. | |
| bool | hasFaceAreas () const |
| bool | hasFaceCentres () const |
| bool | hasFaceNormals () const |
| bool | hasPointNormals () const |
| bool | hasBoundaryPoints () const |
| bool | hasEdges () const |
| bool | hasFaceFaces () const |
| bool | hasEdgeFaces () const |
| bool | hasFaceEdges () const |
| bool | hasPointEdges () const |
| bool | hasPointFaces () const |
| bool | hasMeshPoints () const |
| bool | hasMeshPointMap () const |
| template<class ToPatch> | |
| List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< point_type > &projectionDirection, const intersection::algorithm=intersection::FULL_RAY, const intersection::direction=intersection::VECTOR) const |
| Project vertices of patch onto another patch. | |
| template<class ToPatch> | |
| List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< point_type > &projectionDirection, const intersection::algorithm=intersection::FULL_RAY, const intersection::direction=intersection::VECTOR) const |
| Project vertices of patch onto another patch. | |
| const labelListList & | edgeLoops () const |
| Return list of closed loops of boundary vertices. | |
| surfaceTopo | surfaceType (labelHashSet *badEdgesPtr=nullptr) const |
| Calculate surface type formed by patch, optionally recording the indices of illegal edges. | |
| bool | checkTopology (const bool report=false, labelHashSet *pointSetPtr=nullptr) const |
| Check surface formed by patch for manifoldness (see above). | |
| bool | checkPointManifold (const bool report=false, labelHashSet *pointSetPtr=nullptr) const |
| Checks primitivePatch for faces sharing point but not edge. | |
| virtual void | movePoints (const Field< point_type > &) |
| Correct patch after moving points. | |
| void | operator= (const PrimitivePatch< FaceList, PointField > &rhs) |
| Copy assign faces. Leave points alone (could be a reference). | |
| void | operator= (PrimitivePatch< FaceList, PointField > &&rhs) |
| Move assign faces. Leave points alone (could be a reference). | |
| label | whichEdge (const edge &e) const |
| Identical to findEdge. | |
| template<class ToPatch> | |
| Foam::List< Foam::objectHit > | projectPoints (const ToPatch &targetPatch, const Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
| template<class ToPatch> | |
| Foam::List< Foam::objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
| Public Member Functions inherited from PrimitivePatchBase | |
| ClassName ("PrimitivePatch") | |
| Runtime type information. | |
| PrimitivePatchBase ()=default | |
| Default construct. | |
A list of faces which address into the list of points.
The class is templated on the face type (e.g. triangle, polygon etc.) and on the list type of faces and points so that it can refer to existing lists using UList and const pointField& or hold the storage using List and pointField.
Definition at line 78 of file PrimitivePatch.H.
| typedef std::remove_reference<FaceList>::type::value_type face_type |
The face type.
Definition at line 91 of file PrimitivePatch.H.
| typedef std::remove_reference<PointField>::type::value_type point_type |
The point type.
Definition at line 97 of file PrimitivePatch.H.
| typedef FaceList FaceListType |
The face list type.
Definition at line 102 of file PrimitivePatch.H.
| typedef PointField PointFieldType |
The point field type.
Definition at line 107 of file PrimitivePatch.H.
| typedef face_type FaceType |
Deprecated(2020-03) prefer face_type typedef.
Definition at line 114 of file PrimitivePatch.H.
| enum surfaceTopo |
Enumeration defining the surface type. Used in check routines.
Ordered from 'good' to 'bad'
| Enumerator | |
|---|---|
| MANIFOLD | |
| OPEN | |
| ILLEGAL | |
Definition at line 124 of file PrimitivePatch.H.
| PrimitivePatch | ( | const FaceList & | faces, |
| const PointField & | points ) |
Construct from components.
Definition at line 27 of file PrimitivePatch.C.
References points().
Referenced by operator=(), operator=(), and PrimitivePatch().


| PrimitivePatch | ( | FaceList && | faces, |
| const PointField & | points ) |
Construct from components, transferring faces.
Definition at line 40 of file PrimitivePatch.C.
References points().

| PrimitivePatch | ( | FaceList & | faces, |
| PointField & | points, | ||
| const bool | reuse ) |
Construct from components, reuse storage.
Definition at line 53 of file PrimitivePatch.C.
References points().

| PrimitivePatch | ( | const PrimitivePatch< FaceList, PointField > & | pp | ) |
Copy construct.
Definition at line 67 of file PrimitivePatch.C.
References pp(), and PrimitivePatch().

|
virtual |
Destructor.
| void clearOut | ( | ) |
Definition at line 78 of file PrimitivePatchClear.C.
References clearGeom(), clearPatchMeshAddr(), and clearTopology().
Referenced by operator=(), operator=(), MeshedSurface< Face >::swap(), and UnsortedMeshedSurface< Face >::swap().


| void clearGeom | ( | ) |
Definition at line 28 of file PrimitivePatchClear.C.
References DebugInFunction, and Foam::nl.
Referenced by clearOut(), and movePoints().

| void clearTopology | ( | ) |
Definition at line 43 of file PrimitivePatchClear.C.
References DebugInFunction, and Foam::nl.
Referenced by clearOut().

| void clearPatchMeshAddr | ( | ) |
Definition at line 66 of file PrimitivePatchClear.C.
References DebugInFunction, and Foam::nl.
Referenced by clearOut().

|
delete |
Suppress direct swapping, since storage containers may be const.
|
inlinenoexcept |
Return reference to global points.
Definition at line 401 of file PrimitivePatch.H.
Referenced by booleanSurface::booleanSurface(), booleanSurface::booleanSurface(), cyclicAMIPolyPatch::calcTransforms(), cyclicPolyPatch::calcTransforms(), AMIInterpolation::calculate(), polySurface::copySurface(), surfMesh::copySurface(), triSurfaceTools::curvatures(), distributedTriSurfaceMesh::distribute(), Foam::drawHitProblem(), edgeIntersections::edgeIntersections(), pointMeshTools::featurePointsEdges(), Foam::edgeMeshTools::featureProximity(), isoSurfaceTopo::isoSurfaceTopo(), processorFaPatch::makeCorrectionVectors(), processorFaPatch::makeDeltaCoeffs(), momentOfInertia::massPropertiesShell(), momentOfInertia::massPropertiesSolid(), offsetSurface::operator()(), MeshedSurface< Face >::operator=(), triSurface::operator=(), cyclicPolyPatch::order(), orientedSurface::orientedSurface(), sampledCuttingPlane::points(), sampledDistanceSurface::points(), sampledInterface::points(), sampledIsoSurface::points(), powerLawLopesdaCostaZone::powerLawLopesdaCostaZone(), PrimitivePatch(), PrimitivePatch(), PrimitivePatch(), boundaryMesh::read(), FilterField::reset(), refinementSurfaces::setMinLevelFields(), AMIInterpolation::srcPointFace(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), AMIInterpolation::tgtPointFace(), triSurfaceMeshPointSet::triSurfaceMeshPointSet(), triSurfaceTools::validTri(), triSurfaceTools::validTri(), triSurfaceTools::vertexNormals(), triSurfaceTools::vertexTriads(), AC3DsurfaceFormat< Face >::write(), GTSsurfaceFormat< Face >::write(), GTSsurfaceFormat< Face >::write(), TRIsurfaceFormat< Face >::write(), VTKsurfaceFormat< Face >::write(), VTPsurfaceFormat< Face >::write(), STLsurfaceFormat< Face >::writeAscii(), STLsurfaceFormat< Face >::writeBinary(), and surfaceNoise::writeSurfaceData().
|
inlinenoexcept |
Number of faces in the patch.
Definition at line 409 of file PrimitivePatch.H.
Referenced by surfaceNoise::initialise(), and FilterField::reset().

|
inline |
Number of points supporting patch faces.
Definition at line 422 of file PrimitivePatch.H.
Referenced by booleanSurface::booleanSurface(), booleanSurface::booleanSurface(), pointMeshTools::featurePointsEdges(), findEdge(), triSurfaceTools::greenRefine(), PatchTools::matchPoints(), globalMeshData::mergePoints(), globalMeshData::mergePoints(), fieldSmoother::minSmoothField(), offsetSurface::offsetSurface(), surfaceIntersection::surfaceIntersection(), surfaceIntersection::surfaceIntersection(), syncTools::syncPointList(), and triSurfaceTools::vertexNormals().

|
inline |
Number of edges in patch.
Definition at line 430 of file PrimitivePatch.H.
Referenced by booleanSurface::booleanSurface(), addPatchCellLayer::calcExtrudeInfo(), triSurfaceTools::collapseEdges(), triSurfaceTools::collapseEdges(), patchPatchDist::correct(), edgeIntersections::edgeIntersections(), edgeSurface::edgeSurface(), pointMeshTools::featurePointsEdges(), triSurfaceTools::greenRefine(), betaMax::markProcessorEdges(), PatchTools::matchEdges(), meshEdges(), meshEdges(), offsetSurface::offsetSurface(), edgeIntersections::removeDegenerates(), surfaceIntersection::surfaceIntersection(), surfaceIntersection::surfaceIntersection(), surfaceIntersection::surfaceIntersection(), syncTools::syncEdgeList(), faMesh::updateMesh(), GTSsurfaceFormat< Face >::write(), GTSsurfaceFormat< Face >::write(), and searchableSurfaces::writeStats().

| const Foam::edgeList & edges | ( | ) | const |
Return list of edges, address into LOCAL point list.
Definition at line 104 of file PrimitivePatch.C.
Referenced by booleanSurface::booleanSurface(), boundaryEdges(), polyDualMesh::calcFeatures(), searchableSurfaces::checkIntersection(), checkTopology(), triSurfaceTools::collapseEdges(), triSurfaceTools::collapseEdges(), patchPatchDist::correct(), edgeSurface::edgeSurface(), pointMeshTools::featurePointsEdges(), findEdge(), triSurfaceTools::getEdge(), combineFaces::getOutsideFace(), triSurfaceTools::getVertexTriangles(), triSurfaceTools::getVertexVertices(), triSurfaceTools::greenRefine(), internalEdges(), isoSurfaceTopo::isoSurfaceTopo(), processorFaPatch::makeCorrectionVectors(), processorFaPatch::makeDeltaCoeffs(), betaMax::markProcessorEdges(), PatchTools::matchEdges(), triSurfaceTools::maxEdge(), meshEdge(), triSurfaceTools::minEdge(), edgeIntersections::minEdgeLength(), fieldSmoother::minSmoothField(), slidingInterface::modifyMotionPoints(), nBoundaryEdges(), PrimitivePatch< List< face >, const pointField >::nEdges(), triSurfaceTools::oppositeEdge(), triSurfaceTools::oppositeVertex(), triSurfaceTools::otherEdges(), perfectInterface::setRefinement(), fieldSmoother::smoothPatchNormals(), triSurfaceTools::surfaceSide(), syncTools::syncEdgeList(), syncTools::syncEdgeList(), syncTools::syncEdgeMap(), GTSsurfaceFormat< Face >::write(), and GTSsurfaceFormat< Face >::write().

| const Foam::edgeList::subList internalEdges | ( | ) | const |
Return sub-list of internal edges, address into LOCAL point list.
Definition at line 117 of file PrimitivePatch.C.
References edges(), and nInternalEdges().

| const Foam::edgeList::subList boundaryEdges | ( | ) | const |
Return sub-list of boundary edges, address into LOCAL point list.
Definition at line 126 of file PrimitivePatch.C.
References edges(), nBoundaryEdges(), and nInternalEdges().

| Foam::label nInternalEdges | ( | ) | const |
Number of internal edges.
Definition at line 135 of file PrimitivePatch.C.
Referenced by boundaryEdges(), boundaryFaces(), patchPatchDist::correct(), combineFaces::getOutsideFace(), internalEdges(), PrimitivePatch< List< face >, const pointField >::isInternalEdge(), betaMax::markProcessorEdges(), and faMesh::updateMesh().

| Foam::label nBoundaryEdges | ( | ) | const |
Number of boundary edges == (nEdges() - nInternalEdges()).
Definition at line 148 of file PrimitivePatch.C.
References edges(), and UList< T >::size().
Referenced by boundaryEdges(), boundaryFaces(), and faMesh::updateMesh().


|
inline |
Is internal edge?
Definition at line 463 of file PrimitivePatch.H.
| const Foam::labelList & boundaryPoints | ( | ) | const |
Return list of boundary points, address into LOCAL point list.
Uses edge addressing (if it exists) or calculates directly from localFaces()
Definition at line 157 of file PrimitivePatch.C.
| const Foam::labelListList & faceFaces | ( | ) | const |
Return face-face addressing.
Definition at line 170 of file PrimitivePatch.C.
Referenced by triSurfaceTools::validTri(), and triSurfaceTools::validTri().

| const Foam::labelListList & edgeFaces | ( | ) | const |
Return edge-face addressing.
Definition at line 183 of file PrimitivePatch.C.
Referenced by booleanSurface::booleanSurface(), boundaryFaces(), polyDualMesh::calcFeatures(), checkPointManifold(), checkTopology(), triSurfaceTools::collapseEdges(), triSurfaceTools::edgeSide(), edgeSurface::edgeSurface(), extendedEdgeMesh::extendedEdgeMesh(), pointMeshTools::featurePointsEdges(), cellClassification::fillRegionEdges(), combineFaces::getOutsideFace(), triSurfaceTools::getTriangle(), triSurfaceTools::getVertexTriangles(), triSurfaceTools::greenRefine(), isoSurfaceTopo::isoSurfaceTopo(), meshEdges(), triSurfaceTools::otherFace(), surfaceIntersection::surfaceIntersection(), triSurfaceTools::surfaceNormal(), surfaceType(), and faMesh::updateMesh().

| const Foam::labelListList & faceEdges | ( | ) | const |
Return face-edge addressing.
Definition at line 196 of file PrimitivePatch.C.
Referenced by combineFaces::getOutsideFace(), triSurfaceTools::getTriangle(), triSurfaceTools::oppositeEdge(), triSurfaceTools::otherEdges(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), GTSsurfaceFormat< Face >::write(), and GTSsurfaceFormat< Face >::write().

| const Foam::labelListList & pointEdges | ( | ) | const |
Return point-edge addressing.
Definition at line 209 of file PrimitivePatch.C.
Referenced by polyDualMesh::calcFeatures(), checkPointManifold(), findEdge(), triSurfaceTools::getEdge(), triSurfaceTools::getVertexVertices(), meshEdge(), meshEdges(), meshEdges(), edgeIntersections::minEdgeLength(), and triSurfaceTools::surfaceSide().

| const Foam::labelListList & pointFaces | ( | ) | const |
Return point-face addressing.
Definition at line 222 of file PrimitivePatch.C.
Referenced by checkPointManifold(), cellDistFuncs::correctBoundaryCells(), cellClassification::fillRegionPoints(), localPointRegion::findDuplicateFaces(), triSurfaceTools::getVertexTriangles(), and triSurfaceTools::vertexNormals().

| const Foam::List< typename Foam::PrimitivePatch< FaceList, PointField >::face_type > & localFaces | ( | ) | const |
Return patch faces addressing into local point list.
Definition at line 238 of file PrimitivePatch.C.
Referenced by mappedPatchBase::calcAMI(), triSurfaceTools::collapseEdges(), cellDistFuncs::correctBoundaryCells(), localPointRegion::findDuplicateFaces(), combineFaces::getOutsideFace(), triSurfaceTools::greenRefine(), triSurfaceTools::mergePoints(), MeshedSurface< Face >::MeshedSurface(), triSurfaceTools::oppositeVertex(), triSurfaceTools::otherEdges(), triSurfaceTools::otherVertices(), boundaryMesh::read(), boundaryMesh::readTriSurface(), cyclicAMIPolyPatch::resetAMI(), shortestPathSet::shortestPathSet(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), triSurfaceTools::triangulate(), triSurfaceTools::triangulate(), triSurfaceTools::triangulateFaceCentre(), sampledFaceZone::update(), sampledPatch::update(), and AMIWeights::writeWeightField().

| Foam::labelList boundaryFaces | ( | ) | const |
Extract list of local faces corresponding to the boundary edges.
Definition at line 27 of file PrimitivePatchBdryFaces.C.
References edgeFaces(), forAll, nBoundaryEdges(), nInternalEdges(), and UList< T >::size().
Referenced by uniqBoundaryFaces().


| Foam::labelList uniqBoundaryFaces | ( | ) | const |
Extract sorted list of unique local faces associated with the boundary edges.
Definition at line 51 of file PrimitivePatchBdryFaces.C.
References boundaryFaces(), List< T >::resize(), UList< T >::size(), and Foam::sort().

| const Foam::labelList & meshPoints | ( | ) | const |
Return labelList of mesh points in patch.
They are constructed by walking through the faces in incremental order and not sorted anymore.
Definition at line 251 of file PrimitivePatch.C.
Referenced by snappyLayerDriver::addLayers(), box(), polyDualMesh::calcFeatures(), checkPointManifold(), checkTopology(), patchPatchDist::correct(), cellDistFuncs::correctBoundaryCells(), triSurfaceTools::curvatures(), snappyLayerDriver::dupFaceZonePoints(), pointMeshTools::featurePointsEdges(), syncTools::getMasterPoints(), combineFaces::getOutsideFace(), globalIndexAndTransform::globalIndexAndTransform(), globalPoints::globalPoints(), isoSurfaceTopo::isoSurfaceTopo(), processorFaPatch::makeNonGlobalPatchPoints(), betaMax::markProcessorEdges(), PatchTools::matchPoints(), globalMeshData::mergePoints(), meshEdge(), meshEdge(), fieldSmoother::minSmoothField(), PrimitivePatch< List< face >, const pointField >::nPoints(), orientedSurface::orientedSurface(), volPointInterpolationAdjoint::pushUntransformedData(), cyclicAMIPolyPatch::resetAMI(), perfectInterface::setRefinement(), shortestPathSet::shortestPathSet(), fieldSmoother::smoothPatchNormals(), syncTools::syncEdgeList(), syncTools::syncEdgeList(), syncTools::syncEdgeMap(), globalMeshData::syncPointData(), syncTools::syncPointList(), syncTools::syncPointMap(), pointConstraints::syncUntransformedData(), triSurfaceTools::vertexNormals(), GTSsurfaceFormat< Face >::write(), GTSsurfaceFormat< Face >::write(), and AMIWeights::writeWeightField().

| const Foam::Map< Foam::label > & meshPointMap | ( | ) | const |
Mesh point map.
Given the global point index find its location in the patch
Definition at line 264 of file PrimitivePatch.C.
Referenced by snappyLayerDriver::addLayers(), triSurfaceTools::curvatures(), cellClassification::fillRegionPoints(), globalPoints::globalPoints(), PatchTools::matchPoints(), globalMeshData::mergePoints(), PatchTools::pointNormals(), PatchTools::pointNormals(), shortestPathSet::shortestPathSet(), syncTools::syncPointList(), triSurfaceTools::vertexTriads(), whichPoint(), and AMIWeights::writeWeightField().

| const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & localPoints | ( | ) | const |
Return pointField of points in patch.
Definition at line 280 of file PrimitivePatch.C.
Referenced by booleanSurface::booleanSurface(), mappedPatchBase::calcAMI(), searchableSurfaces::checkIntersection(), triSurfaceTools::collapseEdges(), triSurfaceTools::collapseEdges(), edgeSurface::edgeSurface(), localPointRegion::findDuplicateFaces(), triSurfaceTools::greenRefine(), triSurfaceTools::maxEdge(), triSurfaceTools::mergePoints(), MeshedSurface< Face >::MeshedSurface(), triSurfaceTools::minEdge(), edgeIntersections::minEdgeLength(), slidingInterface::modifyMotionPoints(), boundaryMesh::read(), boundaryMesh::readTriSurface(), perfectInterface::setRefinement(), shortestPathSet::shortestPathSet(), triSurfaceTools::surfaceSide(), syncTools::syncEdgeList(), syncTools::syncEdgeList(), triSurfaceTools::triangulate(), triSurfaceTools::triangulate(), triSurfaceTools::triangulateFaceCentre(), sampledFaceZone::update(), sampledPatch::update(), and triSurfaceTools::writeOBJ().

| const Foam::labelList & localPointOrder | ( | ) | const |
Return orders the local points for most efficient search.
Definition at line 293 of file PrimitivePatch.C.
| Foam::label whichPoint | ( | const label | gp | ) | const |
Given a global point index, return the local point index.
If the point is not found, return -1
Definition at line 306 of file PrimitivePatch.C.
References meshPointMap().
Referenced by slidingInterface::modifyMotionPoints().


| Foam::edge meshEdge | ( | const label | edgei | ) | const |
From patch edge to global edge using meshPoints.
Definition at line 28 of file PrimitivePatchMeshEdges.C.
References edges(), and meshPoints().
Referenced by PatchTools::matchEdges(), meshEdge(), meshEdges(), meshEdges(), and meshEdges().


| Foam::edge meshEdge | ( | const edge & | e | ) | const |
From patch edge to global edge using meshPoints.
Definition at line 36 of file PrimitivePatchMeshEdges.C.
References e, and meshPoints().

| Foam::label findEdge | ( | const edge & | e | ) | const |
Search for edge (local point labels) and return its index in the edge list or -1 if not found.
Ignores invalid or out-of-range edges
Definition at line 175 of file PrimitivePatchMeshEdges.C.
References e, edges(), nPoints(), and pointEdges().
Referenced by PrimitivePatch< List< face >, const pointField >::whichEdge().


| Foam::labelList meshEdges | ( | const edgeList & | allEdges, |
| const labelListList & | cellEdges, | ||
| const labelList & | faceCells ) const |
Return labels of patch edges in the global edge list using cell addressing.
Definition at line 44 of file PrimitivePatchMeshEdges.C.
References DebugInFunction, edgeFaces(), forAll, found, meshEdge(), nEdges(), and Foam::nl.
Referenced by polyDualMesh::calcFeatures().


| Foam::labelList meshEdges | ( | const edgeList & | allEdges, |
| const labelListList & | pointEdges ) const |
Return labels of patch edges into the global edge list using basic edge addressing.
Definition at line 95 of file PrimitivePatchMeshEdges.C.
References DebugInFunction, forAll, meshEdge(), nEdges(), Foam::nl, pointEdges(), and edge::start().

| Foam::label meshEdge | ( | const label | edgei, |
| const edgeList & | allEdges, | ||
| const labelListList & | pointEdges ) const |
Return label of the local patch edge into the global edge list using basic edge addressing.
Definition at line 129 of file PrimitivePatchMeshEdges.C.
References meshEdge(), pointEdges(), and edge::start().

| Foam::labelList meshEdges | ( | const labelUList & | edgeLabels, |
| const edgeList & | allEdges, | ||
| const labelListList & | pointEdges ) const |
Return labels of specified patch edges into the global edge list using basic edge addressing.
Definition at line 154 of file PrimitivePatchMeshEdges.C.
References forAll, meshEdge(), pointEdges(), and UList< T >::size().

| const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & faceCentres | ( | ) | const |
Return face centres for patch.
Definition at line 321 of file PrimitivePatch.C.
Referenced by triSurfaceMesh::coordinates(), FilterField::reset(), sphere(), triSurfaceTools::writeCloseness(), and AMIInterpolation::writeFaceConnectivity().

| const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & faceAreas | ( | ) | const |
Return face area vectors for patch.
Definition at line 337 of file PrimitivePatch.C.
| const Foam::Field< Foam::scalar > & magFaceAreas | ( | ) | const |
Return face area magnitudes for patch.
Definition at line 350 of file PrimitivePatch.C.
| const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & faceNormals | ( | ) | const |
Return face unit normals for patch.
Definition at line 366 of file PrimitivePatch.C.
Referenced by polyDualMesh::calcFeatures(), triSurfaceTools::edgeSide(), pointMeshTools::featurePointsEdges(), removeFaces::setRefinement(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), and triSurfaceTools::writeCloseness().

| const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & pointNormals | ( | ) | const |
Return point normals for patch.
Definition at line 382 of file PrimitivePatch.C.
Referenced by slidingInterface::modifyMotionPoints(), and triSurfaceTools::surfaceNormal().

| Foam::Pair< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > box | ( | ) | const |
The enclosing (bounding) box for the patch points.
Definition at line 122 of file PrimitivePatchBdryPoints.C.
References f(), Pair< T >::first(), hasMeshPoints(), Foam::max(), meshPoints(), Foam::min(), and Pair< T >::second().

| Foam::scalar sphere | ( | const label | facei | ) | const |
The enclosing (bounding) sphere radius^2 for specified face.
Definition at line 158 of file PrimitivePatchBdryPoints.C.
References faceCentres(), and Foam::magSqr().
Referenced by FilterField::reset().


|
inline |
Definition at line 653 of file PrimitivePatch.H.
|
inline |
Definition at line 654 of file PrimitivePatch.H.
|
inline |
Definition at line 655 of file PrimitivePatch.H.
|
inline |
Definition at line 656 of file PrimitivePatch.H.
|
inline |
Definition at line 658 of file PrimitivePatch.H.
|
inline |
Definition at line 663 of file PrimitivePatch.H.
|
inline |
Definition at line 664 of file PrimitivePatch.H.
|
inline |
Definition at line 665 of file PrimitivePatch.H.
|
inline |
Definition at line 666 of file PrimitivePatch.H.
|
inline |
Definition at line 668 of file PrimitivePatch.H.
|
inline |
Definition at line 669 of file PrimitivePatch.H.
|
inline |
Definition at line 671 of file PrimitivePatch.H.
Referenced by box().

|
inline |
Definition at line 672 of file PrimitivePatch.H.
| List< objectHit > projectPoints | ( | const ToPatch & | targetPatch, |
| const Field< point_type > & | projectionDirection, | ||
| const intersection::algorithm | = intersection::FULL_RAY, | ||
| const intersection::direction | = intersection::VECTOR ) const |
Project vertices of patch onto another patch.
| List< objectHit > projectFaceCentres | ( | const ToPatch & | targetPatch, |
| const Field< point_type > & | projectionDirection, | ||
| const intersection::algorithm | = intersection::FULL_RAY, | ||
| const intersection::direction | = intersection::VECTOR ) const |
Project vertices of patch onto another patch.
| const Foam::labelListList & edgeLoops | ( | ) | const |
Return list of closed loops of boundary vertices.
Edge loops are given as ordered lists of vertices in local addressing
Definition at line 127 of file PrimitivePatchEdgeLoops.C.
Referenced by combineFaces::getOutsideFace(), and combineFaces::setRefinement().

| Foam::PrimitivePatch< FaceList, PointField >::surfaceTopo surfaceType | ( | labelHashSet * | badEdgesPtr = nullptr | ) | const |
Calculate surface type formed by patch, optionally recording the indices of illegal edges.
Return types:
Definition at line 96 of file PrimitivePatchCheck.C.
References badEdgesPtr, edgeFaces(), forAll, foundError, ILLEGAL, MANIFOLD, OPEN, and UList< T >::size().

| bool checkTopology | ( | const bool | report = false, |
| labelHashSet * | pointSetPtr = nullptr ) const |
Check surface formed by patch for manifoldness (see above).
Return true if any incorrect edges are found. Insert vertices of incorrect edges into set.
Definition at line 153 of file PrimitivePatchCheck.C.
References e, edgeFaces(), edges(), Foam::endl(), forAll, foundError, Foam::Info, meshPoints(), pointSetPtr, and UList< T >::size().

| bool checkPointManifold | ( | const bool | report = false, |
| labelHashSet * | pointSetPtr = nullptr ) const |
Checks primitivePatch for faces sharing point but not edge.
This denotes a surface that is pinched at a single point (test for pinched at single edge is already in PrimitivePatch) Returns true if this situation found and puts conflicting (mesh)point in set. Based on all the checking routines in primitiveMesh.
Definition at line 195 of file PrimitivePatchCheck.C.
References UList< T >::contains(), edgeFaces(), Foam::endl(), forAll, foundError, Foam::Info, meshPoints(), Foam::nl, pFaces, pointEdges(), pointFaces(), pointSetPtr, and DynamicList< T, SizeMin >::resize_nocopy().
Referenced by cellClassification::fillRegionPoints().


|
virtual |
Correct patch after moving points.
Reimplemented in polyPatch.
Definition at line 91 of file PrimitivePatch.C.
References clearGeom(), DebugInFunction, and Foam::endl().

| void operator= | ( | const PrimitivePatch< FaceList, PointField > & | rhs | ) |
Copy assign faces. Leave points alone (could be a reference).
Definition at line 397 of file PrimitivePatch.C.
References clearOut(), PrimitivePatch(), and Foam::rhs().

| void operator= | ( | PrimitivePatch< FaceList, PointField > && | rhs | ) |
Move assign faces. Leave points alone (could be a reference).
Definition at line 417 of file PrimitivePatch.C.
References clearOut(), PrimitivePatch(), and Foam::rhs().

|
inline |
Identical to findEdge.
Definition at line 778 of file PrimitivePatch.H.
Referenced by slidingInterface::modifyMotionPoints().

| Foam::List< Foam::objectHit > projectPoints | ( | const ToPatch & | targetPatch, |
| const Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & | projectionDirection, | ||
| const intersection::algorithm | alg, | ||
| const intersection::direction | dir ) const |
Definition at line 37 of file PrimitivePatchProjectPoints.C.
| Foam::List< Foam::objectHit > projectFaceCentres | ( | const ToPatch & | targetPatch, |
| const Field< typename Foam::PrimitivePatch< FaceList, PointField >::point_type > & | projectionDirection, | ||
| const intersection::algorithm | alg, | ||
| const intersection::direction | dir ) const |
Definition at line 267 of file PrimitivePatchProjectPoints.C.