36 #ifndef NekMeshUtils_MESHELEMENTS_HEX
37 #define NekMeshUtils_MESHELEMENTS_HEX
44 namespace NekMeshUtils
55 std::vector<NodeSharedPtr> pNodeList,
56 std::vector<int> pTagList)
58 return boost::shared_ptr<Element>(
68 std::vector<NodeSharedPtr> pNodeList,
69 std::vector<int> pTagList);
86 bool justConfig =
false);
Basic information about an element.
static int m_faceIds[6][4]
Vertex IDs that make up hexahedron faces.
NEKMESHUTILS_EXPORT Hexahedron(ElmtConfig pConf, std::vector< NodeSharedPtr > pNodeList, std::vector< int > pTagList)
Create a hexahedral element.
virtual NEKMESHUTILS_EXPORT StdRegions::Orientation GetEdgeOrient(int edgeId, EdgeSharedPtr edge)
Get the edge orientation of edge with respect to the local element, which lies at edge index edgeId...
virtual NEKMESHUTILS_EXPORT ~Hexahedron()
virtual NEKMESHUTILS_EXPORT int GetFaceVertex(int i, int j)
Returns the local index of vertex j of face i.
virtual NEKMESHUTILS_EXPORT void MakeOrder(int order, SpatialDomains::GeometrySharedPtr geom, LibUtilities::PointsType pType, int coordDim, int &id, bool justConfig=false)
Insert interior (i.e. volume) points into this element to make the geometry an order order representa...
static NEKMESHUTILS_EXPORT unsigned int GetNumNodes(ElmtConfig pConf)
Return the number of nodes defining a hexahedron.
static LibUtilities::ShapeType m_type
Element type.
boost::shared_ptr< Edge > EdgeSharedPtr
Shared pointer to an edge.
A 3-dimensional six-faced element.
#define NEKMESHUTILS_EXPORT
static NEKMESHUTILS_EXPORT ElementSharedPtr create(ElmtConfig pConf, std::vector< NodeSharedPtr > pNodeList, std::vector< int > pTagList)
Creates an instance of this class.
boost::shared_ptr< Element > ElementSharedPtr
virtual NEKMESHUTILS_EXPORT SpatialDomains::GeometrySharedPtr GetGeom(int coordDim)
Generate a Nektar++ geometry object for this element.
boost::shared_ptr< Geometry > GeometrySharedPtr
Base class for element definitions.