Nektar++
|
Represents an edge which joins two points. More...
#include <Edge.h>
Public Member Functions | |
NEKMESHUTILS_EXPORT | Edge (NodeSharedPtr pVertex1, NodeSharedPtr pVertex2, std::vector< NodeSharedPtr > pEdgeNodes, LibUtilities::PointsType pCurveType) |
Creates a new edge. More... | |
NEKMESHUTILS_EXPORT | Edge (NodeSharedPtr pVertex1, NodeSharedPtr pVertex2) |
Creates a new linear edge. More... | |
NEKMESHUTILS_EXPORT | Edge (const Edge &pSrc) |
Copies an existing edge. More... | |
NEKMESHUTILS_EXPORT | ~Edge () |
NEKMESHUTILS_EXPORT unsigned int | GetNodeCount () const |
Returns the total number of nodes defining the edge. More... | |
NEKMESHUTILS_EXPORT void | GetCurvedNodes (std::vector< NodeSharedPtr > &nodeList) const |
NEKMESHUTILS_EXPORT std::string | GetXmlCurveString () |
Creates a Nektar++ string listing the coordinates of all the nodes. More... | |
NEKMESHUTILS_EXPORT SpatialDomains::SegGeomSharedPtr | GetGeom (int coordDim) |
Generate a SpatialDomains::SegGeom object for this edge. More... | |
void | MakeOrder (int order, SpatialDomains::GeometrySharedPtr geom, LibUtilities::PointsType edgeType, int coordDim, int &id) |
Make this edge an order order edge. More... | |
Public Attributes | |
unsigned int | m_id |
ID of edge. More... | |
NodeSharedPtr | m_n1 |
First vertex node. More... | |
NodeSharedPtr | m_n2 |
Second vertex node. More... | |
std::vector< NodeSharedPtr > | m_edgeNodes |
List of control nodes between the first and second vertices. More... | |
LibUtilities::PointsType | m_curveType |
Distributions of points along edge. More... | |
std::vector< std::pair < ElementSharedPtr, int > > | m_elLink |
Element(s) which are linked to this edge. More... | |
CADObjectSharedPtr | m_parentCAD |
Private Attributes | |
SpatialDomains::SegGeomSharedPtr | m_geom |
Represents an edge which joins two points.
An edge is defined by two nodes (vertices) and, for high-order edges, a set of control nodes defining the shape of the edge.
|
inline |
Creates a new edge.
Definition at line 62 of file Edge.h.
|
inline |
Creates a new linear edge.
Definition at line 70 of file Edge.h.
|
inline |
Copies an existing edge.
Definition at line 75 of file Edge.h.
|
inline |
|
inline |
Definition at line 91 of file Edge.h.
References m_edgeNodes, m_n1, and m_n2.
SpatialDomains::SegGeomSharedPtr Edge::GetGeom | ( | int | coordDim | ) |
Generate a SpatialDomains::SegGeom object for this edge.
Definition at line 70 of file Edge.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Vmath::mutex, and CellMLToNektar.cellml_metadata::p.
|
inline |
Returns the total number of nodes defining the edge.
Definition at line 86 of file Edge.h.
References m_edgeNodes.
string Edge::GetXmlCurveString | ( | ) |
void Edge::MakeOrder | ( | int | order, |
SpatialDomains::GeometrySharedPtr | geom, | ||
LibUtilities::PointsType | edgeType, | ||
int | coordDim, | ||
int & | id | ||
) |
Make this edge an order order
edge.
Definition at line 108 of file Edge.cpp.
References Nektar::NekMeshUtils::CADType::eCurve, class_topology::Node, and Nektar::LibUtilities::PointsManager().
LibUtilities::PointsType Nektar::NekMeshUtils::Edge::m_curveType |
std::vector<NodeSharedPtr> Nektar::NekMeshUtils::Edge::m_edgeNodes |
List of control nodes between the first and second vertices.
Definition at line 123 of file Edge.h.
Referenced by GetCurvedNodes(), and GetNodeCount().
std::vector<std::pair<ElementSharedPtr, int> > Nektar::NekMeshUtils::Edge::m_elLink |
Element(s) which are linked to this edge.
|
private |
NodeSharedPtr Nektar::NekMeshUtils::Edge::m_n1 |
NodeSharedPtr Nektar::NekMeshUtils::Edge::m_n2 |
CADObjectSharedPtr Nektar::NekMeshUtils::Edge::m_parentCAD |