OGS
TriRule.h
Go to the documentation of this file.
1
11#pragma once
12
13#include "Element.h"
14#include "FaceRule.h"
15#include "MeshLib/MeshEnums.h"
16
17namespace MeshLib
18{
22class TriRule : public FaceRule
23{
24public:
26 static const unsigned n_base_nodes = 3u;
27
30
32 static const unsigned n_edges = 3;
33
35 static const unsigned n_neighbors = 3;
36
41 static bool isPntInElement(Node const* const* nodes,
42 MathLib::Point3d const& pnt, double eps);
43
47 static ElementErrorCode validate(const Element* e);
48
50 static double computeVolume(Node const* const* element_nodes);
51};
52} // namespace MeshLib
Definition of the Element class.
Definition of mesh-related Enumerations.
Collects error flags for mesh elements.
static const MeshElemType mesh_elem_type
Constant: The geometric type of the element.
Definition TriRule.h:29
static ElementErrorCode validate(const Element *e)
Definition TriRule.cpp:30
static double computeVolume(Node const *const *element_nodes)
Calculates the area of the triangle with straight edges.
Definition TriRule.cpp:17
static bool isPntInElement(Node const *const *nodes, MathLib::Point3d const &pnt, double eps)
Definition TriRule.cpp:23
static const unsigned n_edges
Constant: The number of edges.
Definition TriRule.h:32
static const unsigned n_neighbors
Constant: The number of neighbors.
Definition TriRule.h:35
static const unsigned n_base_nodes
Constant: The number of base nodes for this element.
Definition TriRule.h:26
MeshElemType
Types of mesh elements supported by OpenGeoSys. Values are from VTKCellType enum.
Definition MeshEnums.h:27