OpenFOAM logo
Open Source CFD Toolkit

PrimitivePatch Class Template Reference

Inheritance diagram for PrimitivePatch:

Inheritance graph
[legend]
Collaboration diagram for PrimitivePatch:

Collaboration graph
[legend]
List of all members.

template<class Face, template< class > class FaceList, class PointField>
class Foam::PrimitivePatch< Face, FaceList, PointField >


Public Types

enum  surfaceTopo { MANIFOLD, OPEN, ILLEGAL }
 Enumeration defining the surface type. Used in check routines. More...

Public Member Functions

 PrimitivePatch (const FaceList< Face > &faces, const pointField &points)
 Construct from components.
 PrimitivePatch (const PrimitivePatch< Face, FaceList, PointField > &)
 Construct as copy.
virtual ~PrimitivePatch ()
void clearOut ()
void clearGeom ()
void clearTopology ()
void clearPatchMeshAddr ()
const pointFieldpoints () 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 edgeListedges () 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 labelListboundaryPoints () const
 Return list of boundary points,.
const labelListListfaceFaces () const
 Return face-face addressing.
const labelListListedgeFaces () const
 Return edge-face addressing.
const labelListListfaceEdges () const
 Return face-edge addressing.
const labelListListpointEdges () const
 Return point-edge addressing.
const labelListListpointFaces () const
 Return point-face addressing.
const List< Face > & localFaces () const
 Return patch faces addressing into local point list.
const labelListmeshPoints () const
 Return labelList of mesh points in patch.
const Map< label > & meshPointMap () const
 Mesh point map. Given the global point index find its.
const pointFieldlocalPoints () const
 Return pointField of points in patch.
const labelListlocalPointOrder () 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 vectorFieldfaceNormals () const
 Return face normals for patch.
const vectorFieldpointNormals () const
 Return point normals for patch.
template<class ToPatch>
List< objectHitprojectPoints (const ToPatch &targetPatch, const vectorField &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< objectHitprojectFaceCentres (const ToPatch &targetPatch, const vectorField &projectionDirection, const intersection::algorithm alg=intersection::FULL_RAY, const intersection::direction dir=intersection::VECTOR) const
 Project vertices of patch onto another patch.
const labelListListedgeLoops () 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 pointField &)
 Correct patch after moving points.
void operator= (const PrimitivePatch< Face, FaceList, PointField > &)
 Assignment.

Member Enumeration Documentation

enum surfaceTopo
 

Enumeration defining the surface type. Used in check routines.

Enumeration values:
MANIFOLD 
OPEN 
ILLEGAL 

Definition at line 101 of file PrimitivePatch.H.


Constructor & Destructor Documentation

PrimitivePatch const FaceList< Face > &  faces,
const pointField points
 

Construct from components.

PrimitivePatch const PrimitivePatch< Face, FaceList, PointField > &   ) 
 

Construct as copy.

virtual ~PrimitivePatch  )  [virtual]
 


Member Function Documentation

const labelList& boundaryPoints  )  const
 

Return list of boundary points,.

address into LOCAL point list

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.

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.

void clearGeom  ) 
 

void clearOut  ) 
 

Reimplemented in triSurface.

void clearPatchMeshAddr  ) 
 

Reimplemented in triSurface.

void clearTopology  ) 
 

Reimplemented in triSurface.

const labelListList& edgeFaces  )  const
 

Return edge-face addressing.

const labelListList& edgeLoops  )  const
 

Return list of closed loops of boundary vertices.

Edge loops are given as ordered lists of vertices in local addressing

const edgeList& edges  )  const
 

Return list of edges, address into LOCAL point list.

const labelListList& faceEdges  )  const
 

Return face-edge addressing.

const labelListList& faceFaces  )  const
 

Return face-face addressing.

const vectorField& faceNormals  )  const
 

Return face normals for patch.

bool isInternalEdge const label  edgeI  )  const [inline]
 

Is internal edge?

Definition at line 289 of file PrimitivePatch.H.

const List<Face>& localFaces  )  const
 

Return patch faces addressing into local point list.

const labelList& localPointOrder  )  const
 

Return orders the local points for most efficient search.

const pointField& localPoints  )  const
 

Return pointField of points in patch.

labelList meshEdges const edgeList allEdges,
const labelListList cellEdges,
const labelList faceCells
const
 

Return labels of patch edges in the global edge list.

const Map<label>& meshPointMap  )  const
 

Mesh point map. Given the global point index find its.

location in the patch

const labelList& meshPoints  )  const
 

Return labelList of mesh points in patch.

virtual void movePoints const pointField  )  [virtual]
 

Correct patch after moving points.

Reimplemented in coupledPolyPatch, cyclicPolyPatch, processorPolyPatch, polyPatch, and triSurface.

label nEdges  )  const [inline]
 

Return number of edges in patch.

Definition at line 277 of file PrimitivePatch.H.

label nInternalEdges  )  const
 

Number of internal edges.

label nPoints  )  const [inline]
 

Return number of points supporting patch faces.

Definition at line 271 of file PrimitivePatch.H.

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

Assignment.

const labelListList& pointEdges  )  const
 

Return point-edge addressing.

const labelListList& pointFaces  )  const
 

Return point-face addressing.

const vectorField& pointNormals  )  const
 

Return point normals for patch.

const pointField& points  )  const [inline]
 

Return reference to global points.

Definition at line 260 of file PrimitivePatch.H.

List<objectHit> projectFaceCentres const ToPatch &  targetPatch,
const vectorField projectionDirection,
const intersection::algorithm  alg = intersection::FULL_RAY,
const intersection::direction  dir = intersection::VECTOR
const
 

Project vertices of patch onto another patch.

List<objectHit> projectPoints const ToPatch &  targetPatch,
const vectorField projectionDirection,
const intersection::algorithm  alg = intersection::FULL_RAY,
const intersection::direction  dir = intersection::VECTOR
const
 

Project vertices of patch onto another patch.

surfaceTopo surfaceType  )  const
 

Calculate surface type formed by patch.

  • all edges have two neighbours (manifold)
  • some edges have more than two neighbours (illegal)
  • other (open)

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

label whichPoint const label  gp  )  const
 

Given a global point index, return the local point.

index. If the point is not found, return -1


The documentation for this class was generated from the following file:
For further information go to www.openfoam.org