A list of faces which address into the list of points. More...
Classes | |
class | iNew |
Public Types | |
enum | surfaceTopo { MANIFOLD, OPEN, ILLEGAL } |
Enumeration defining the surface type. Used in check routines. More... | |
typedef FaceList | FaceListType |
typedef std::remove_reference< FaceList >::type::value_type | FaceType |
typedef PointField | PointFieldType |
typedef std::remove_reference< PointField >::type::value_type | PointType |
Public Member Functions | |
PrimitivePatch (const FaceList &faces, const Field< PointType > &points) | |
Construct from components. More... | |
PrimitivePatch (FaceList &&faces, Field< PointType > &&points) | |
Move constructor from components. More... | |
PrimitivePatch (FaceList &&faces, List< PointType > &&points) | |
Move constructor from components. More... | |
PrimitivePatch (FaceList &faces, Field< PointType > &points, const bool reuse) | |
Construct from components, reuse storage. More... | |
PrimitivePatch (const PrimitivePatch< FaceList, PointField > &) | |
Copy constructor. More... | |
PrimitivePatch (PrimitivePatch< FaceList, PointField > &&) | |
Move constructor. More... | |
virtual autoPtr< PrimitivePatch< FaceList, PointField > > | clone () const |
Construct and return a clone. More... | |
PrimitivePatch (Istream &, const Field< PointType > &points) | |
Construct from Istream. More... | |
virtual | ~PrimitivePatch () |
Destructor. More... | |
const Field< PointType > & | points () const |
Return reference to global points. More... | |
label | nPoints () const |
Return number of points supporting patch faces. More... | |
label | nEdges () const |
Return number of edges in patch. More... | |
const edgeList & | edges () const |
Return list of edges, address into LOCAL point list. More... | |
label | nInternalEdges () const |
Number of internal edges. More... | |
bool | isInternalEdge (const label edgeI) const |
Is internal edge? More... | |
const labelList & | boundaryPoints () const |
Return list of boundary points,. More... | |
const labelListList & | faceFaces () const |
Return face-face addressing. More... | |
const labelListList & | edgeFaces () const |
Return edge-face addressing. More... | |
const labelListList & | faceEdges () const |
Return face-edge addressing. More... | |
const labelListList & | pointEdges () const |
Return point-edge addressing. More... | |
const labelListList & | pointFaces () const |
Return point-face addressing. More... | |
const List< FaceType > & | localFaces () const |
Return patch faces addressing into local point list. More... | |
const labelList & | meshPoints () const |
Return labelList of mesh points in patch. They are constructed. More... | |
const Map< label > & | meshPointMap () const |
Mesh point map. Given the global point index find its. More... | |
const Field< PointType > & | localPoints () const |
Return pointField of points in patch. More... | |
const labelList & | localPointOrder () const |
Return orders the local points for most efficient search. More... | |
label | whichPoint (const label gp) const |
Given a global point index, return the local point index. More... | |
label | whichEdge (const edge &) const |
Given an edge in local point labels, return its. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
Return labels of patch edges in the global edge list using. More... | |
labelList | meshEdges (const edgeList &allEdges, const labelListList &pointEdges) const |
Return labels of patch edges in the global edge list using. More... | |
const Field< PointType > & | faceCentres () const |
Return face centres for patch. More... | |
const Field< PointType > & | faceAreas () const |
Return face areas for patch. More... | |
const Field< PointType > & | faceNormals () const |
Return face normals for patch. More... | |
const Field< PointType > & | pointNormals () const |
Return point normals for patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction=intersection::direction::vector) const |
Project vertices of patch onto another patch. More... | |
template<class ToPatch > | |
List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm=intersection::algorithm::fullRay, const intersection::direction=intersection::direction::vector) const |
Project vertices of patch onto another patch. More... | |
const labelListList & | edgeLoops () const |
Return list of closed loops of boundary vertices. More... | |
surfaceTopo | surfaceType () const |
Calculate surface type formed by patch. More... | |
bool | checkTopology (const bool report=false, labelHashSet *setPtr=nullptr) const |
Check surface formed by patch for manifoldness (see above). More... | |
bool | checkPointManifold (const bool report=false, labelHashSet *setPtr=nullptr) const |
Checks primitivePatch for faces sharing point but not edge. More... | |
void | clearOut () |
void | clearGeom () |
void | clearTopology () |
void | clearPatchMeshAddr () |
virtual void | movePoints (const Field< PointType > &) |
Correct patch after moving points. More... | |
void | operator= (const PrimitivePatch< FaceList, PointField > &) |
Assignment operator. More... | |
void | operator= (PrimitivePatch< FaceList, PointField > &&) |
Move assignment operator. More... | |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
template<class ToPatch > | |
Foam::List< Foam::objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg, const intersection::direction dir) const |
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 81 of file PrimitivePatch.H.
typedef FaceList FaceListType |
Definition at line 91 of file PrimitivePatch.H.
typedef std::remove_reference<FaceList>::type::value_type FaceType |
Definition at line 94 of file PrimitivePatch.H.
typedef PointField PointFieldType |
Definition at line 96 of file PrimitivePatch.H.
typedef std::remove_reference<PointField>::type::value_type PointType |
Definition at line 99 of file PrimitivePatch.H.
enum surfaceTopo |
Enumeration defining the surface type. Used in check routines.
Enumerator | |
---|---|
MANIFOLD | |
OPEN | |
ILLEGAL |
Definition at line 105 of file PrimitivePatch.H.
PrimitivePatch | ( | const FaceList & | faces, |
const Field< PointType > & | points | ||
) |
Construct from components.
Definition at line 32 of file PrimitivePatch.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::clone(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::PrimitivePatch().
PrimitivePatch | ( | FaceList && | faces, |
Field< PointType > && | points | ||
) |
Move constructor from components.
Definition at line 62 of file PrimitivePatch.C.
PrimitivePatch | ( | FaceList && | faces, |
List< PointType > && | points | ||
) |
Move constructor from components.
Definition at line 92 of file PrimitivePatch.C.
PrimitivePatch | ( | FaceList & | faces, |
Field< PointType > & | points, | ||
const bool | reuse | ||
) |
Construct from components, reuse storage.
Definition at line 122 of file PrimitivePatch.C.
PrimitivePatch | ( | const PrimitivePatch< FaceList, PointField > & | pp | ) |
Copy constructor.
Definition at line 153 of file PrimitivePatch.C.
PrimitivePatch | ( | PrimitivePatch< FaceList, PointField > && | pp | ) |
Move constructor.
Definition at line 183 of file PrimitivePatch.C.
PrimitivePatch | ( | Istream & | is, |
const Field< PointType > & | points | ||
) |
Construct from Istream.
Definition at line 213 of file PrimitivePatch.C.
|
virtual |
Destructor.
Definition at line 244 of file PrimitivePatch.C.
Referenced by PrimitivePatch< FaceList, PointField >::iNew::operator()().
|
inlinevirtual |
Construct and return a clone.
Definition at line 286 of file PrimitivePatch.H.
Referenced by emptyPolyPatch::clone(), wallPolyPatch::clone(), symmetryPolyPatch::clone(), mergedCyclicPolyPatch::clone(), genericPolyPatch::clone(), symmetryPlanePolyPatch::clone(), cyclicSlipPolyPatch::clone(), cyclicRepeatAMIPolyPatch::clone(), regionCoupledPolyPatch::clone(), wedgePolyPatch::clone(), regionCoupledWallPolyPatch::clone(), mappedVariableThicknessWallPolyPatch::clone(), cyclicACMIPolyPatch::clone(), mappedPolyPatch::clone(), mappedWallPolyPatch::clone(), processorPolyPatch::clone(), processorCyclicPolyPatch::clone(), cyclicAMIPolyPatch::clone(), cyclicPolyPatch::clone(), and polyPatch::clone().
Return reference to global points.
Definition at line 334 of file PrimitivePatch.H.
Referenced by booleanSurface::booleanSurface(), PatchTools::calcBounds(), Foam::meshTools::calcBoxPointNormals(), triSurfaceTools::calcInterpolationWeights(), addPatchCellLayer::calcSidePatch(), PatchTools::checkOrientation(), searchableSurfaces::checkQuality(), triSurfaceTools::classify(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::clone(), distributedTriSurfaceMesh::distribute(), edgeIntersections::edgeIntersections(), extrudePatchMesh::extrudePatchMesh(), patchProbes::findElements(), mappedPatchBase::findSamples(), PatchTools::gatherAndMerge(), triSurfaceMesh::getNormal(), distributedTriSurfaceMesh::getNormal(), coupledPolyPatch::initOrder(), momentOfInertia::massPropertiesShell(), momentOfInertia::massPropertiesSolid(), coupledPolyPatch::matchTolerance(), NamedEnum< compressibleField, 8 >::names(), combineEqOp< Type, TrackingData >::operator()(), MeshedSurface< Foam::face >::operator=(), triSurface::operator=(), coupledPolyPatch::order(), orientedSurface::orient(), orientedSurface::orientedSurface(), distributedTriSurfaceMesh::overlappingSurface(), pairPatchAgglomeration::patchLevel(), AMIInterpolation::patchMagSf(), sampledSurfaces::thresholdCellFaces::points(), sampledSurfaces::triSurfaceMesh::points(), powerLawLopesdaCostaZone::powerLawLopesdaCostaZone(), boundaryMesh::read(), Foam::selectCutEdges(), boundaryMesh::setFeatureEdges(), patchInjectionBase::setPositionAndCell(), addPatchCellLayer::setRefinement(), triSurfacePointGeoMesh::size(), cellDistFuncs::smallestDist(), AMIInterpolation::srcPointFace(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), AMIInterpolation::tgtPointFace(), triSurfaceSearch::tree(), triSurfaceTools::triangulate(), patchEdgeFaceInfo::updateEdge(), patchInjectionBase::updateMesh(), and surfaceLocation::write().
|
inline |
Return number of points supporting patch faces.
Definition at line 343 of file PrimitivePatch.H.
Referenced by booleanSurface::booleanSurface(), Foam::meshTools::calcBoxPointNormals(), PointEdgeWave< Type, TrackingData >::countPatchType(), snappySnapDriver::detectNearSurfaces(), snappySnapDriver::doSnap(), boundaryMesh::getNPoints(), snappySnapDriver::getZoneSurfacePoints(), triSurfaceTools::greenRefine(), coupledPolyPatch::initOrder(), PatchTools::matchPoints(), triSurfaceTools::mergePoints(), globalMeshData::mergePoints(), medialAxisMeshMover::move(), listPlusEqOp< T >::operator()(), coupledPolyPatch::order(), PatchTools::pointNormals(), mappedPatchBase::sampleSize(), addPatchCellLayer::setRefinement(), PatchTools::subsetMap(), surfaceIntersection::surfaceIntersection(), syncTools::syncPointList(), and AC3DsurfaceFormat< Face >::write().
|
inline |
Return number of edges in patch.
Definition at line 349 of file PrimitivePatch.H.
Referenced by booleanSurface::booleanSurface(), createShellMesh::calcPointRegions(), addPatchCellLayer::calcSidePatch(), PatchTools::checkOrientation(), triSurfaceTools::collapseEdges(), patchPatchDist::correct(), edgeIntersections::edgeIntersections(), PatchTools::edgeNormals(), edgeSurface::edgeSurface(), extrudePatchMesh::extrudePatchMesh(), surfaceFeatures::findFeatures(), triSurfaceTools::greenRefine(), coupledPolyPatch::initOrder(), PatchTools::matchEdges(), meshRefinement::mergeBaffles(), polyBoundaryMesh::nbrEdges(), surfaceFeatures::nearestFeatEdge(), listPlusEqOp< T >::operator()(), coupledPolyPatch::order(), orientedSurface::orient(), boundaryMesh::read(), boundaryMesh::readTriSurface(), edgeIntersections::removeDegenerates(), addPatchCellLayer::setRefinement(), surfaceFeatures::surfaceFeatures(), surfaceIntersection::surfaceIntersection(), syncTools::syncEdgeList(), surfaceFeatures::trimFeatures(), and searchableSurfaces::writeStats().
const Foam::edgeList & edges | ( | ) | const |
Return list of edges, address into LOCAL point list.
Definition at line 271 of file PrimitivePatch.C.
Referenced by booleanSurface::booleanSurface(), createShellMesh::calcPointRegions(), addPatchCellLayer::calcSidePatch(), snappySnapDriver::calcSnapDistance(), searchableSurfaces::checkIntersection(), Foam::checkNonManifoldEdge(), PatchTools::checkOrientation(), triSurfaceTools::collapseEdges(), patchPatchDist::correct(), cyclicPolyPatch::coupledEdges(), PatchTools::edgeOwner(), edgeSurface::edgeSurface(), triSurfaceTools::getEdge(), combineFaces::getOutsideFace(), triSurfaceTools::getVertexTriangles(), triSurfaceTools::getVertexVertices(), triSurfaceTools::greenRefine(), PatchTools::matchEdges(), triSurfaceTools::maxEdge(), polyPatch::meshEdges(), triSurfaceTools::minEdge(), edgeIntersections::minEdgeLength(), slidingInterface::modifyMotionPoints(), polyBoundaryMesh::nbrEdges(), surfaceFeatures::nearestEdges(), surfaceFeatures::nearestFeatEdge(), surfaceFeatures::nearestSamples(), surfaceFeatures::nearestSurfEdge(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::nEdges(), listPlusEqOp< T >::operator()(), triSurfaceTools::oppositeEdge(), triSurfaceTools::oppositeVertex(), triSurfaceTools::otherEdges(), Foam::selectBox(), Foam::selectCutEdges(), boundaryMesh::setFeatureEdges(), perfectInterface::setRefinement(), addPatchCellLayer::setRefinement(), PatchTools::sortedEdgeFaces(), PatchTools::sortedPointEdges(), surfaceFeatures::surfaceFeatures(), surfaceIntersection::surfaceIntersection(), triSurfaceTools::surfaceSide(), syncTools::syncEdgeMap(), surfaceFeatures::trimFeatures(), patchFaceOrientation::updateEdge(), patchEdgeFaceInfo::updateEdge(), patchFaceOrientation::updateFace(), surfaceLocation::write(), and surfaceFeatures::writeObj().
Foam::label nInternalEdges | ( | ) | const |
Number of internal edges.
Definition at line 283 of file PrimitivePatch.C.
Referenced by patchPatchDist::correct(), extrudePatchMesh::extrudePatchMesh(), combineFaces::getOutsideFace(), coupledPolyPatch::initOrder(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), polyBoundaryMesh::nbrEdges(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::nEdges(), coupledPolyPatch::order(), and addPatchCellLayer::setRefinement().
|
inline |
Is internal edge?
Definition at line 361 of file PrimitivePatch.H.
const Foam::labelList & boundaryPoints | ( | ) | const |
Return list of boundary points,.
address into LOCAL point list
Definition at line 296 of file PrimitivePatch.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), and listPlusEqOp< T >::operator()().
const Foam::labelListList & faceFaces | ( | ) | const |
Return face-face addressing.
Definition at line 310 of file PrimitivePatch.C.
Referenced by pairPatchAgglomeration::agglomerate(), AMIMethod::appendNbrFaces(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::boundaryPoints(), triSurfaceMesh::getNormal(), cellDistFuncs::getPointNeighbours(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
const Foam::labelListList & edgeFaces | ( | ) | const |
Return edge-face addressing.
Definition at line 323 of file PrimitivePatch.C.
Referenced by booleanSurface::booleanSurface(), createShellMesh::calcPointRegions(), addPatchCellLayer::calcSidePatch(), searchableSurfaces::checkClosed(), Foam::checkNonManifoldEdge(), PatchTools::checkOrientation(), triSurfaceTools::collapseEdges(), PatchTools::edgeNormals(), PatchTools::edgeOwner(), triSurfaceTools::edgeSide(), edgeSurface::edgeSurface(), extendedEdgeMesh::extendedEdgeMesh(), extrudePatchMesh::extrudePatchMesh(), surfaceFeatures::findFeatures(), combineFaces::getOutsideFace(), triSurfaceTools::getTriangle(), triSurfaceTools::getVertexTriangles(), addPatchCellLayer::globalEdgeFaces(), triSurfaceTools::greenRefine(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), PatchTools::markZone(), surfaceLocation::normal(), listPlusEqOp< T >::operator()(), orientedSurface::orient(), triSurfaceTools::otherFace(), Foam::primitivePatchGetZones(), Foam::selectManifoldEdges(), boundaryMesh::setFeatureEdges(), addPatchCellLayer::setRefinement(), PatchTools::sortedEdgeFaces(), PatchTools::sortedPointEdges(), surfaceFeatures::surfaceFeatures(), surfaceIntersection::surfaceIntersection(), triSurfaceTools::surfaceNormal(), and triSurfaceTools::trackToEdge().
const Foam::labelListList & faceEdges | ( | ) | const |
Return face-edge addressing.
Definition at line 336 of file PrimitivePatch.C.
Referenced by createShellMesh::calcPointRegions(), PatchTools::checkOrientation(), triSurfaceTools::classify(), cyclicPolyPatch::coupledEdges(), combineFaces::getOutsideFace(), triSurfaceTools::getTriangle(), intersectedSurface::intersectedSurface(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), PatchTools::markZone(), meshRefinement::mergeBaffles(), triSurfaceTools::oppositeEdge(), triSurfaceTools::otherEdges(), Foam::primitivePatchGetZones(), addPatchCellLayer::setRefinement(), PatchTools::sortedPointEdges(), triSurfaceTools::surfaceNormal(), and triSurfaceTools::surfaceSide().
const Foam::labelListList & pointEdges | ( | ) | const |
Return point-edge addressing.
Definition at line 349 of file PrimitivePatch.C.
Referenced by snappySnapDriver::calcSnapDistance(), triSurfaceTools::getEdge(), triSurfaceTools::getVertexVertices(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), polyPatch::meshEdges(), edgeIntersections::minEdgeLength(), listPlusEqOp< T >::operator()(), PatchTools::sortedPointEdges(), and triSurfaceTools::surfaceSide().
const Foam::labelListList & pointFaces | ( | ) | const |
Return point-face addressing.
Definition at line 362 of file PrimitivePatch.C.
Referenced by snappySnapDriver::avgCellCentres(), Foam::meshTools::calcBoxPointNormals(), cellDistFuncs::correctBoundaryPointCells(), cellDistFuncs::getPointNeighbours(), triSurfaceTools::getVertexTriangles(), volPointInterpolation::interpolateBoundaryField(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), listPlusEqOp< T >::operator()(), PatchTools::pointNormals(), and triSurfaceTools::trackToEdge().
const Foam::List< typename Foam::PrimitivePatch< FaceList, PointField >::FaceType > & localFaces | ( | ) | const |
Return patch faces addressing into local point list.
Definition at line 378 of file PrimitivePatch.C.
Referenced by mappedPatchBase::calcAMI(), createShellMesh::calcPointRegions(), Foam::checkNonManifoldEdge(), PatchTools::checkOrientation(), triSurfaceTools::classify(), triSurfaceTools::collapseEdges(), PatchTools::edgeOwner(), extrudePatchMesh::extrudePatchMesh(), combineFaces::getOutsideFace(), cellDistFuncs::getPointNeighbours(), triSurfaceTools::greenRefine(), intersectedSurface::intersectedSurface(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), Foam::levelSetFraction(), triSurfaceTools::mergePoints(), meshTriangulation::meshTriangulation(), NamedEnum< compressibleField, 8 >::names(), listPlusEqOp< T >::operator()(), triSurfaceTools::oppositeVertex(), triSurfaceTools::otherEdges(), triSurfaceTools::otherVertices(), pairPatchAgglomeration::pairPatchAgglomeration(), AMIInterpolation::patchMagSf(), PatchTools::pointNormals(), boundaryMesh::readTriSurface(), snappySnapDriver::repatchToSurface(), cyclicAMIPolyPatch::resetAMI(), addPatchCellLayer::setRefinement(), PatchTools::sortedEdgeFaces(), PatchTools::subsetMap(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), triSurfaceTools::triangulateFaceCentre(), boundaryMesh::triangulateLocal(), patch::update(), patchFaceOrientation::updateEdge(), patchFaceOrientation::updateFace(), AC3DsurfaceFormat< Face >::write(), coupledPolyPatch::writeOBJ(), and meshRefinement::zonify().
const Foam::labelList & meshPoints | ( | ) | const |
Return labelList of mesh points in patch. They are constructed.
walking through the faces in incremental order and not sorted anymore.
Definition at line 391 of file PrimitivePatch.C.
Referenced by snappySnapDriver::avgCellCentres(), Foam::meshTools::calcBoxPointNormals(), snappySnapDriver::calcNearestSurface(), interpolationCellPointWallModified< Type >::calcPointField(), addPatchCellLayer::calcSidePatch(), snappySnapDriver::calcSnapDistance(), patchPatchDist::correct(), cellDistFuncs::correctBoundaryPointCells(), PointEdgeWave< Type, TrackingData >::countPatchType(), cyclicPolyPatch::coupledEdges(), snappySnapDriver::detectNearSurfaces(), extrudePatchMesh::extrudePatchMesh(), mappedPatchBase::findSamples(), combineFaces::getOutsideFace(), globalIndexAndTransform::globalIndexAndTransform(), globalPoints::globalPoints(), volPointInterpolation::interpolateBoundaryField(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), localPointRegion::localPointRegion(), PatchTools::matchEdges(), PatchTools::matchPoints(), globalMeshData::mergePoints(), facePointPatch::meshPoints(), medialAxisMeshMover::move(), NamedEnum< compressibleField, 8 >::names(), polyBoundaryMesh::nbrEdges(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::nPoints(), listPlusEqOp< T >::operator()(), combineEqOp< Type, TrackingData >::operator()(), inversePointDistanceDiffusivity::operator()(), orientedSurface::orientedSurface(), PatchTools::pointNormals(), fvMeshDistribute::printCoupleInfo(), Foam::selectCutEdges(), motionSmootherAlgo::setDisplacementPatchFields(), perfectInterface::setRefinement(), addPatchCellLayer::setRefinement(), snappySnapDriver::smoothDisplacement(), syncTools::syncEdgeMap(), globalMeshData::syncPointData(), syncTools::syncPointList(), syncTools::syncPointMap(), pointConstraints::syncUntransformedData(), boundaryMesh::triangulateLocal(), patchEdgeFaceInfo::updateEdge(), and medialAxisMeshMover::~medialAxisMeshMover().
const Foam::Map< Foam::label > & meshPointMap | ( | ) | const |
Mesh point map. Given the global point index find its.
location in the patch
Definition at line 404 of file PrimitivePatch.C.
Referenced by snappySnapDriver::getZoneSurfacePoints(), globalPoints::globalPoints(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), PatchTools::matchPoints(), globalMeshData::mergePoints(), PatchTools::pointNormals(), and syncTools::syncPointList().
const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::PointType > & localPoints | ( | ) | const |
Return pointField of points in patch.
Definition at line 420 of file PrimitivePatch.C.
Referenced by booleanSurface::booleanSurface(), mappedPatchBase::calcAMI(), snappySnapDriver::calcNearestSurface(), snappySnapDriver::calcSnapDistance(), searchableSurfaces::checkIntersection(), PatchTools::checkOrientation(), triSurfaceTools::collapseEdges(), patchPatchDist::correct(), cyclicPolyPatch::coupledEdges(), snappySnapDriver::detectNearSurfaces(), snappySnapDriver::doSnap(), edgeSurface::edgeSurface(), triSurfaceTools::greenRefine(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), Foam::levelSetFraction(), facePointPatch::localPoints(), triSurfaceTools::maxEdge(), triSurfaceTools::mergePoints(), meshTriangulation::meshTriangulation(), triSurfaceTools::minEdge(), edgeIntersections::minEdgeLength(), slidingInterface::modifyMotionPoints(), polyBoundaryMesh::nbrEdges(), surfaceFeatures::nearestEdges(), surfaceFeatures::nearestFeatEdge(), surfaceFeatures::nearestSamples(), surfaceFeatures::nearestSurfEdge(), listPlusEqOp< T >::operator()(), pairPatchAgglomeration::pairPatchAgglomeration(), AMIInterpolation::patchMagSf(), boundaryMesh::readTriSurface(), snappySnapDriver::repatchToSurface(), Foam::selectBox(), perfectInterface::setRefinement(), addPatchCellLayer::setRefinement(), snappySnapDriver::smoothDisplacement(), PatchTools::sortedEdgeFaces(), surfaceIntersection::surfaceIntersection(), triSurfaceTools::surfaceSide(), triSurfaceTools::triangulateFaceCentre(), boundaryMesh::triangulateLocal(), surfaceFeatures::trimFeatures(), patch::update(), AC3DsurfaceFormat< Face >::write(), surfaceLocation::write(), coupledPolyPatch::writeOBJ(), triSurfaceTools::writeOBJ(), surfaceFeatures::writeObj(), and meshRefinement::zonify().
const Foam::labelList & localPointOrder | ( | ) | const |
Return orders the local points for most efficient search.
Definition at line 433 of file PrimitivePatch.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
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 446 of file PrimitivePatch.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::localPointOrder(), and slidingInterface::modifyMotionPoints().
Foam::label whichEdge | ( | const edge & | e | ) | const |
Given an edge in local point labels, return its.
index in the edge list. If the edge is not found, return -1
Definition at line 147 of file PrimitivePatchMeshEdges.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::meshEdges(), and slidingInterface::modifyMotionPoints().
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 33 of file PrimitivePatchMeshEdges.C.
Referenced by addPatchCellLayer::calcSidePatch(), addPatchCellLayer::globalEdgeFaces(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), meshRefinement::mergeBaffles(), polyPatch::meshEdges(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::meshEdges(), listPlusEqOp< T >::operator()(), addPatchCellLayer::setRefinement(), and medialAxisMeshMover::~medialAxisMeshMover().
Foam::labelList meshEdges | ( | const edgeList & | allEdges, |
const labelListList & | pointEdges | ||
) | const |
Return labels of patch edges in the global edge list using.
basic edge addressing.
Definition at line 100 of file PrimitivePatchMeshEdges.C.
const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::PointType > & faceCentres | ( | ) | const |
Return face centres for patch.
Definition at line 469 of file PrimitivePatch.C.
Referenced by symmetryPlanePolyPatch::calcGeometry(), wedgePolyPatch::calcGeometry(), coupledPolyPatch::initOrder(), cyclicPolyPatch::initOrder(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), meshRefinement::mergeBaffles(), listPlusEqOp< T >::operator()(), coupledPolyPatch::order(), cyclicPolyPatch::order(), patchEdgeFaceInfo::updateFace(), and AMIInterpolation::writeFaceConnectivity().
const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::PointType > & faceAreas | ( | ) | const |
Return face areas for patch.
Definition at line 485 of file PrimitivePatch.C.
Referenced by cyclicPolyPatch::initOrder(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), cyclicPolyPatch::order(), and cyclicACMIPolyPatch::resetAMI().
const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::PointType > & faceNormals | ( | ) | const |
Return face normals for patch.
Definition at line 501 of file PrimitivePatch.C.
Referenced by ThermoSurfaceFilm< CloudType >::absorbInteraction(), AMIMethod::appendNbrFaces(), ThermoSurfaceFilm< CloudType >::bounceInteraction(), Foam::meshTools::calcBoxPointNormals(), interpolationCellPointWallModified< Type >::calcPointField(), Foam::checkNonManifoldEdge(), PatchTools::checkOrientation(), directions::directions(), ThermoSurfaceFilm< CloudType >::drySplashInteraction(), PatchTools::edgeNormals(), triSurfaceTools::edgeSide(), extrudePatchMesh::extrudePatchMesh(), boundaryMesh::getNearest(), intersectedSurface::intersectedSurface(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), regionModel1D::moveMesh(), surfaceLocation::normal(), listPlusEqOp< T >::operator()(), PatchTools::pointNormals(), Foam::primitivePatchGetZones(), boundaryMesh::setFeatureEdges(), singleLayerRegion::singleLayerRegion(), ThermoSurfaceFilm< CloudType >::splashInteraction(), triSurfaceTools::surfaceNormal(), triSurfaceTools::surfaceSide(), wallLayerCells::wallLayerCells(), and ThermoSurfaceFilm< CloudType >::wetSplashInteraction().
const Foam::Field< typename Foam::PrimitivePatch< FaceList, PointField >::PointType > & pointNormals | ( | ) | const |
Return point normals for patch.
Definition at line 517 of file PrimitivePatch.C.
Referenced by Foam::meshTools::calcBoxPointNormals(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), slidingInterface::modifyMotionPoints(), surfaceLocation::normal(), facePointPatch::pointNormals(), and triSurfaceTools::surfaceNormal().
List<objectHit> projectPoints | ( | const ToPatch & | targetPatch, |
const Field< PointType > & | projectionDirection, | ||
const intersection::algorithm | = intersection::algorithm::fullRay , |
||
const intersection::direction | = intersection::direction::vector |
||
) | const |
Project vertices of patch onto another patch.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
List<objectHit> projectFaceCentres | ( | const ToPatch & | targetPatch, |
const Field< PointType > & | projectionDirection, | ||
const intersection::algorithm | = intersection::algorithm::fullRay , |
||
const intersection::direction | = intersection::direction::vector |
||
) | const |
Project vertices of patch onto another patch.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::projectPoints().
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 152 of file PrimitivePatchEdgeLoops.C.
Referenced by combineFaces::getOutsideFace(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), and NamedEnum< compressibleField, 8 >::names().
Foam::PrimitivePatch< FaceList, PointField >::surfaceTopo surfaceType | ( | ) | const |
Calculate surface type formed by patch.
Types:
Definition at line 106 of file PrimitivePatchCheck.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
bool checkTopology | ( | const bool | report = false , |
labelHashSet * | setPtr = 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 148 of file PrimitivePatchCheck.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::surfaceType().
bool checkPointManifold | ( | const bool | report = false , |
labelHashSet * | setPtr = 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 202 of file PrimitivePatchCheck.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::checkTopology(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
void clearOut | ( | ) |
Definition at line 95 of file PrimitivePatchClear.C.
Referenced by PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), and processorPolyPatch::updateMesh().
void clearGeom | ( | ) |
Definition at line 33 of file PrimitivePatchClear.C.
Referenced by polyPatch::clearGeom(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), and polyPatch::updateMesh().
void clearTopology | ( | ) |
Definition at line 49 of file PrimitivePatchClear.C.
Referenced by polyPatch::clearAddressing(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
void clearPatchMeshAddr | ( | ) |
Definition at line 81 of file PrimitivePatchClear.C.
Referenced by polyPatch::clearAddressing(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge().
Correct patch after moving points.
Definition at line 254 of file PrimitivePatch.C.
Referenced by cyclicAMIPolyPatch::initMovePoints(), PrimitivePatch<::Foam::List< labelledTri >, pointField >::isInternalEdge(), polyPatch::movePoints(), cyclicRepeatAMIPolyPatch::resetAMI(), and PrimitivePatch<::Foam::List< labelledTri >, pointField >::~PrimitivePatch().
void operator= | ( | const PrimitivePatch< FaceList, PointField > & | pp | ) |
Assignment operator.
Definition at line 532 of file PrimitivePatch.C.
Referenced by polyPatch::operator=().
void operator= | ( | PrimitivePatch< FaceList, PointField > && | pp | ) |
Move assignment operator.
Definition at line 544 of file PrimitivePatch.C.
Foam::List<Foam::objectHit> projectPoints | ( | const ToPatch & | targetPatch, |
const Field< PointType > & | projectionDirection, | ||
const intersection::algorithm | alg, | ||
const intersection::direction | dir | ||
) | const |
Definition at line 41 of file PrimitivePatchProjectPoints.C.
Foam::List<Foam::objectHit> projectFaceCentres | ( | const ToPatch & | targetPatch, |
const Field< PointType > & | projectionDirection, | ||
const intersection::algorithm | alg, | ||
const intersection::direction | dir | ||
) | const |
Definition at line 277 of file PrimitivePatchProjectPoints.C.