|
|
|
PrimitivePatch Class Template ReferenceInheritance diagram for PrimitivePatch:![]() ![]() Detailed Descriptiontemplate<class Face, template< class > class FaceList, class PointField, class PointType = point>
A list of faces which address into the list of points.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Public Types | |
| enum | surfaceTopo |
| Enumeration defining the surface type. Used in check routines. More... | |
| typedef Face | FaceType |
| typedef FaceList< Face > | FaceListType |
| typedef PointField | PointFieldType |
Public Member Functions | |
| PrimitivePatch (const FaceList< Face > &faces, const Field< PointType > &points) | |
| Construct from components. | |
| PrimitivePatch (const PrimitivePatch< Face, FaceList, PointField, PointType > &) | |
| Construct as copy. | |
| virtual | ~PrimitivePatch () |
| void | clearOut () |
| void | clearGeom () |
| void | clearTopology () |
| void | clearPatchMeshAddr () |
| const Field< PointType > & | points () const |
| Return reference to global points. | |
| label | nPoints () const |
| Return number of points supporting patch faces. | |
| label | nEdges () const |
| Return number of edges in patch. | |
| const edgeList & | edges () const |
| Return list of edges, address into LOCAL point list. | |
| label | nInternalEdges () const |
| Number of internal edges. | |
| bool | isInternalEdge (const label edgeI) const |
| Is internal edge? | |
| const labelList & | boundaryPoints () const |
| Return list of boundary points,. | |
| 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 > & | localFaces () const |
| Return patch faces addressing into local point list. | |
| const labelList & | meshPoints () const |
| Return labelList of mesh points in patch. | |
| const Map< label > & | meshPointMap () const |
| Mesh point map. Given the global point index find its. | |
| const Field< PointType > & | 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. | |
| label | whichEdge (const edge &e) const |
| Given an edge in local point labels, return its. | |
| labelList | meshEdges (const edgeList &allEdges, const labelListList &cellEdges, const labelList &faceCells) const |
| Return labels of patch edges in the global edge list. | |
| const Field< PointType > & | faceNormals () const |
| Return face normals for patch. | |
| const Field< PointType > & | pointNormals () const |
| Return point normals for patch. | |
| template<class ToPatch> | |
| List< objectHit > | projectPoints (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg=intersection::FULL_RAY, const intersection::direction dir=intersection::VECTOR) const |
| Project vertices of patch onto another patch. | |
| template<class ToPatch> | |
| List< objectHit > | projectFaceCentres (const ToPatch &targetPatch, const Field< PointType > &projectionDirection, const intersection::algorithm alg=intersection::FULL_RAY, const intersection::direction dir=intersection::VECTOR) const |
| Project vertices of patch onto another patch. | |
| const labelListList & | edgeLoops () const |
| Return list of closed loops of boundary vertices. | |
| surfaceTopo | surfaceType () const |
| Calculate surface type formed by patch. | |
| bool | checkTopology (const bool report=false, labelHashSet *setPtr=NULL) const |
| Check surface formed by patch for manifoldness (see above). | |
| bool | checkPointManifold (const bool report=false, labelHashSet *setPtr=NULL) const |
| Checks primitivePatch for faces sharing point but not edge. | |
| virtual void | movePoints (const Field< PointType > &) |
| Correct patch after moving points. | |
| void | operator= (const PrimitivePatch< Face, FaceList, PointField, PointType > &) |
| Assignment. | |
| typedef Face FaceType |
Definition at line 93 of file PrimitivePatch.H.
| typedef FaceList<Face> FaceListType |
Definition at line 94 of file PrimitivePatch.H.
| typedef PointField PointFieldType |
Definition at line 95 of file PrimitivePatch.H.
| enum surfaceTopo |
Enumeration defining the surface type. Used in check routines.
Definition at line 101 of file PrimitivePatch.H.
| PrimitivePatch | ( | const FaceList< Face > & | faces, | |
| const Field< PointType > & | points | |||
| ) |
| PrimitivePatch | ( | const PrimitivePatch< Face, FaceList, PointField, PointType > & | ) |
| ~PrimitivePatch | ( | ) | [virtual] |
Definition at line 106 of file PrimitivePatch.C.
References PrimitivePatch::clearOut().
Here is the call graph for this function:

| void clearOut | ( | ) |
Definition at line 124 of file PrimitivePatchClear.C.
References PrimitivePatch::clearGeom(), PrimitivePatch::clearPatchMeshAddr(), and PrimitivePatch::clearTopology().
Referenced by PrimitivePatch::~PrimitivePatch().
Here is the call graph for this function:

Here is the caller graph for this function:

| void clearGeom | ( | ) |
Definition at line 38 of file PrimitivePatchClear.C.
References Foam::deleteDemandDrivenData(), Foam::endl(), and Foam::Info.
Referenced by PrimitivePatch::clearOut(), and PrimitivePatch::movePoints().
Here is the call graph for this function:

Here is the caller graph for this function:

| void clearTopology | ( | ) |
Definition at line 60 of file PrimitivePatchClear.C.
References Foam::deleteDemandDrivenData(), Foam::endl(), and Foam::Info.
Referenced by PrimitivePatch::clearOut().
Here is the call graph for this function:

Here is the caller graph for this function:

| void clearPatchMeshAddr | ( | ) |
Definition at line 101 of file PrimitivePatchClear.C.
References Foam::deleteDemandDrivenData(), Foam::endl(), and Foam::Info.
Referenced by PrimitivePatch::clearOut().
Here is the call graph for this function:

Here is the caller graph for this function:

| const Field<PointType>& points | ( | ) | const [inline] |
Return reference to global points.
Definition at line 263 of file PrimitivePatch.H.
Referenced by triSurfaceTools::classify(), meshCutSurface::meshCutSurface(), PrimitivePatch::projectFaceCentres(), PrimitivePatch::projectPoints(), triSurface::triSurfInstance(), and surfaceLocation::write().
Here is the caller graph for this function:

| label nPoints | ( | ) | const [inline] |
Return number of points supporting patch faces.
Definition at line 274 of file PrimitivePatch.H.
Referenced by PrimitivePatch::projectPoints(), and PrimitivePatch::whichEdge().
Here is the caller graph for this function:

| label nEdges | ( | ) | const [inline] |
| const edgeList & edges | ( | ) | const |
Return list of edges, address into LOCAL point list.
Definition at line 147 of file PrimitivePatch.C.
Referenced by PrimitivePatch::checkTopology(), triSurfaceTools::getVertexTriangles(), PrimitivePatch::meshEdges(), triSurfaceTools::minEdge(), surfaceFeatures::nearestEdges(), PrimitivePatch< Foam::labelledTri, Foam::List< T >, Foam::pointField >::nEdges(), PrimitivePatch::whichEdge(), and surfaceLocation::write().
Here is the caller graph for this function:

| label nInternalEdges | ( | ) | const |
Number of internal edges.
Definition at line 165 of file PrimitivePatch.C.
Referenced by PrimitivePatch< Foam::labelledTri, Foam::List< T >, Foam::pointField >::isInternalEdge().
Here is the caller graph for this function:

| bool isInternalEdge | ( | const label | edgeI | ) | const [inline] |
| const labelList & boundaryPoints | ( | ) | const |
Return list of boundary points,.
address into LOCAL point list
Definition at line 185 of file PrimitivePatch.C.
| const labelListList & faceFaces | ( | ) | const |
Return face-face addressing.
Definition at line 204 of file PrimitivePatch.C.
Referenced by PrimitivePatch::projectFaceCentres().
Here is the caller graph for this function:

| const labelListList & edgeFaces | ( | ) | const |
Return edge-face addressing.
Definition at line 223 of file PrimitivePatch.C.
Referenced by PrimitivePatch::checkPointManifold(), PrimitivePatch::checkTopology(), triSurfaceTools::getVertexTriangles(), PrimitivePatch::meshEdges(), surfaceLocation::normal(), triSurfaceTools::otherFace(), and PrimitivePatch::surfaceType().
Here is the caller graph for this function:

| const labelListList & faceEdges | ( | ) | const |
Return face-edge addressing.
Definition at line 242 of file PrimitivePatch.C.
Referenced by triSurfaceTools::classify().
Here is the caller graph for this function:

| const labelListList & pointEdges | ( | ) | const |
Return point-edge addressing.
Definition at line 261 of file PrimitivePatch.C.
Referenced by PrimitivePatch::checkPointManifold(), and PrimitivePatch::whichEdge().
Here is the caller graph for this function:

| const labelListList & pointFaces | ( | ) | const |
Return point-face addressing.
Definition at line 280 of file PrimitivePatch.C.
Referenced by PrimitivePatch::checkPointManifold(), and triSurfaceTools::getVertexTriangles().
Here is the caller graph for this function:

| const List< Face > & localFaces | ( | ) | const |
Return patch faces addressing into local point list.
Definition at line 299 of file PrimitivePatch.C.
Referenced by triSurfaceTools::classify().
Here is the caller graph for this function:

| const labelList & meshPoints | ( | ) | const |
Return labelList of mesh points in patch.
Definition at line 318 of file PrimitivePatch.C.
Referenced by PrimitivePatch::checkPointManifold(), PrimitivePatch::checkTopology(), PrimitivePatch::meshEdges(), PrimitivePatch< Foam::labelledTri, Foam::List< T >, Foam::pointField >::nPoints(), and PrimitivePatch::projectPoints().
Here is the caller graph for this function:

Mesh point map. Given the global point index find its.
location in the patch
Definition at line 337 of file PrimitivePatch.C.
Referenced by PrimitivePatch::whichPoint().
Here is the caller graph for this function:

| const Field< PointType > & localPoints | ( | ) | const |
Return pointField of points in patch.
Definition at line 356 of file PrimitivePatch.C.
Referenced by triSurfaceTools::minEdge(), and surfaceFeatures::nearestEdges().
Here is the caller graph for this function:

| const labelList & localPointOrder | ( | ) | const |
Return orders the local points for most efficient search.
Definition at line 375 of file PrimitivePatch.C.
Referenced by PrimitivePatch::projectPoints().
Here is the caller graph for this function:

Given a global point index, return the local point.
index. If the point is not found, return -1
Definition at line 394 of file PrimitivePatch.C.
References PrimitivePatch::meshPointMap().
Here is the call graph for this function:

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 117 of file PrimitivePatchMeshEdges.C.
References Foam::mathematicalConstant::e, PrimitivePatch::edges(), forAll, PrimitivePatch::nPoints(), and PrimitivePatch::pointEdges().
Here is the call graph for this function:

| labelList meshEdges | ( | const edgeList & | allEdges, | |
| const labelListList & | cellEdges, | |||
| const labelList & | faceCells | |||
| ) | const |
Return labels of patch edges in the global edge list.
Definition at line 39 of file PrimitivePatchMeshEdges.C.
References PrimitivePatch::edgeFaces(), PrimitivePatch::edges(), Foam::endl(), forAll, Foam::Info, and PrimitivePatch::meshPoints().
Here is the call graph for this function:

| const Field< PointType > & faceNormals | ( | ) | const |
Return face normals for patch.
Definition at line 420 of file PrimitivePatch.C.
Referenced by surfaceLocation::normal().
Here is the caller graph for this function:

| const Field< PointType > & pointNormals | ( | ) | const |
Return point normals for patch.
Definition at line 439 of file PrimitivePatch.C.
Referenced by surfaceLocation::normal().
Here is the caller graph for this function:

| List< objectHit > projectPoints | ( | const ToPatch & | targetPatch, | |
| const Field< PointType > & | projectionDirection, | |||
| const intersection::algorithm | alg = intersection::FULL_RAY, |
|||
| const intersection::direction | dir = intersection::VECTOR | |||
| ) | const |
Project vertices of patch onto another patch.
Definition at line 46 of file PrimitivePatchProjectPoints.C.
References Foam::abort(), Foam::average(), PointHit::distance(), PointHit::eligibleMiss(), Foam::endl(), Foam::FatalError, FatalErrorIn, forAll, PointHit::hit(), Foam::Info, PrimitivePatch::localPointOrder(), Foam::mag(), Foam::magSqr(), PrimitivePatch::meshPoints(), PointHit::missPoint(), Foam::nl, PrimitivePatch::nPoints(), PrimitivePatch::points(), and UList< Type >::size().
Here is the call graph for this function:

| List< objectHit > projectFaceCentres | ( | const ToPatch & | targetPatch, | |
| const Field< PointType > & | projectionDirection, | |||
| const intersection::algorithm | alg = intersection::FULL_RAY, |
|||
| const intersection::direction | dir = intersection::VECTOR | |||
| ) | const |
Project vertices of patch onto another patch.
Definition at line 294 of file PrimitivePatchProjectPoints.C.
References Foam::abort(), Foam::bandCompression(), PointHit::distance(), PointHit::eligibleMiss(), Foam::endl(), PrimitivePatch::faceFaces(), Foam::FatalError, FatalErrorIn, forAll, PointHit::hit(), Foam::Info, Foam::mag(), Foam::magSqr(), PointHit::missPoint(), Foam::nl, PrimitivePatch::points(), Foam::size(), and UList< Type >::size().
Here is the call graph for this function:

| const 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 173 of file PrimitivePatchEdgeLoops.C.
| PrimitivePatch< Face, FaceList, PointField, PointType >::surfaceTopo surfaceType | ( | ) | const |
Calculate surface type formed by patch.
Definition at line 117 of file PrimitivePatchCheck.C.
References PrimitivePatch::edgeFaces(), Foam::endl(), forAll, PrimitivePatch::ILLEGAL, Foam::Info, PrimitivePatch::MANIFOLD, PrimitivePatch::OPEN, and UList::size().
Referenced by PrimitivePatch::checkTopology().
Here is the call graph for this function:

Here is the caller graph for this function:

| bool checkTopology | ( | const bool | report = false, |
|
| labelHashSet * | setPtr = NULL | |||
| ) | const |
Check surface formed by patch for manifoldness (see above).
Insert vertices of incorrect edges set. Return true if any incorrect edge found.
Definition at line 169 of file PrimitivePatchCheck.C.
References Foam::mathematicalConstant::e, PrimitivePatch::edgeFaces(), PrimitivePatch::edges(), Foam::endl(), forAll, PrimitivePatch::ILLEGAL, Foam::Info, PrimitivePatch::MANIFOLD, PrimitivePatch::meshPoints(), PrimitivePatch::OPEN, UList::size(), and PrimitivePatch::surfaceType().
Here is the call graph for this function:

| bool checkPointManifold | ( | const bool | report = false, |
|
| labelHashSet * | setPtr = NULL | |||
| ) | 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 238 of file PrimitivePatchCheck.C.
References PrimitivePatch::edgeFaces(), Foam::endl(), Foam::findIndex(), forAll, Foam::Info, PrimitivePatch::meshPoints(), Foam::nl, PrimitivePatch::pointEdges(), and PrimitivePatch::pointFaces().
Here is the call graph for this function:

| void movePoints | ( | const Field< PointType > & | ) | [virtual] |
Correct patch after moving points.
Definition at line 123 of file PrimitivePatch.C.
References PrimitivePatch::clearGeom(), Foam::endl(), and Foam::Pout.
Here is the call graph for this function:

| void operator= | ( | const PrimitivePatch< Face, FaceList, PointField, PointType > & | ) |