Nektar++
|
Represents a face comprised of three or more edges. More...
#include <MeshElements.h>
Public Member Functions | |
Face (std::vector< NodeSharedPtr > pVertexList, std::vector< NodeSharedPtr > pFaceNodes, std::vector< EdgeSharedPtr > pEdgeList, LibUtilities::PointsType pCurveType) | |
Create a new face. More... | |
Face (const Face &pSrc) | |
Copy an existing face. More... | |
~Face () | |
bool | operator== (Face &pSrc) |
Equality is defined by matching all vertices. More... | |
unsigned int | GetNodeCount () const |
Returns the total number of nodes (vertices, edge nodes and face nodes). More... | |
std::string | GetXmlCurveString () const |
Generates a string listing the coordinates of all nodes associated with this face. More... | |
SpatialDomains::Geometry2DSharedPtr | GetGeom (int coordDim) |
Generate either SpatialDomains::TriGeom or SpatialDomains::QuadGeom for this element. More... | |
Public Attributes | |
unsigned int | m_id |
ID of the face. More... | |
std::vector< NodeSharedPtr > | m_vertexList |
List of vertex nodes. More... | |
std::vector< EdgeSharedPtr > | m_edgeList |
List of corresponding edges. More... | |
std::vector< NodeSharedPtr > | m_faceNodes |
List of face-interior nodes defining the shape of the face. More... | |
LibUtilities::PointsType | m_curveType |
Distribution of points in this face. More... | |
vector< pair< ElementSharedPtr, int > > | m_elLink |
Element(s) which are linked to this face. More... | |
SpatialDomains::Geometry2DSharedPtr | m_geom |
Represents a face comprised of three or more edges.
A face is defined by a list of vertices, a list of edges joining these vertices, and a list of control nodes within the interior of the face, defining the shape of the face.
Definition at line 352 of file MeshElements.h.
|
inline |
Create a new face.
Definition at line 355 of file MeshElements.h.
|
inline |
Copy an existing face.
Definition at line 366 of file MeshElements.h.
|
inline |
Definition at line 370 of file MeshElements.h.
|
inline |
Generate either SpatialDomains::TriGeom or SpatialDomains::QuadGeom for this element.
Definition at line 501 of file MeshElements.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::SpatialDomains::SegGeom::GetEdgeOrientation(), m_edgeList, and m_id.
|
inline |
Returns the total number of nodes (vertices, edge nodes and face nodes).
Definition at line 389 of file MeshElements.h.
References m_edgeList, m_faceNodes, and m_vertexList.
Referenced by GetXmlCurveString().
|
inline |
Generates a string listing the coordinates of all nodes associated with this face.
Definition at line 402 of file MeshElements.h.
References ASSERTL0, Nektar::LibUtilities::eNodalTriElec, Nektar::LibUtilities::eNodalTriEvenlySpaced, Nektar::LibUtilities::eNodalTriFekete, GetNodeCount(), m_curveType, m_edgeList, m_faceNodes, and m_vertexList.
|
inline |
Equality is defined by matching all vertices.
Definition at line 373 of file MeshElements.h.
References Nektar::StdRegions::find(), Nektar::iterator, and m_vertexList.
LibUtilities::PointsType Nektar::Utilities::Face::m_curveType |
Distribution of points in this face.
Definition at line 543 of file MeshElements.h.
Referenced by Nektar::Utilities::Element::GetCurveType(), GetXmlCurveString(), and Nektar::Utilities::Element::SetCurveType().
std::vector<EdgeSharedPtr> Nektar::Utilities::Face::m_edgeList |
List of corresponding edges.
Definition at line 539 of file MeshElements.h.
Referenced by GetGeom(), GetNodeCount(), and GetXmlCurveString().
vector<pair<ElementSharedPtr, int> > Nektar::Utilities::Face::m_elLink |
Element(s) which are linked to this face.
Definition at line 545 of file MeshElements.h.
std::vector<NodeSharedPtr> Nektar::Utilities::Face::m_faceNodes |
List of face-interior nodes defining the shape of the face.
Definition at line 541 of file MeshElements.h.
Referenced by GetNodeCount(), and GetXmlCurveString().
SpatialDomains::Geometry2DSharedPtr Nektar::Utilities::Face::m_geom |
Definition at line 547 of file MeshElements.h.
unsigned int Nektar::Utilities::Face::m_id |
ID of the face.
Definition at line 535 of file MeshElements.h.
Referenced by GetGeom(), Nektar::Utilities::Element::GetId(), and Nektar::Utilities::Element::SetId().
std::vector<NodeSharedPtr> Nektar::Utilities::Face::m_vertexList |
List of vertex nodes.
Definition at line 537 of file MeshElements.h.
Referenced by GetNodeCount(), GetXmlCurveString(), and operator==().