25 auto const& a = *nodes[0];
26 auto const& b = *nodes[1];
38 double distance_of_proj_pnt_to_a;
40 pnt, a, b, lambda, distance_of_proj_pnt_to_a);
42 if (lambda >= 0 && lambda <= 1)
45 return distance_from_line < eps;
58 if (nodes[0] == element_nodes[0])
62 if (nodes[0] == element_nodes[1])
66 return std::numeric_limits<unsigned>::max();
Definition of the Node class.
Collects error flags for mesh elements.
static unsigned identifyFace(Node const *const *, Node const *nodes[1])
Returns the ID of a face given an array of nodes.
static ElementErrorCode validate(const Element *e)
static double computeVolume(Node const *const *element_nodes)
Calculates the length of a line.
static bool isPntInElement(Node const *const *nodes, MathLib::Point3d const &pnt, double eps)
double calcProjPntToLineAndDists(Point3d const &pp, Point3d const &pa, Point3d const &pb, double &lambda, double &d0)
double sqrDist(MathLib::Point3d const &p0, MathLib::Point3d const &p1)
bool hasZeroVolume(MeshLib::Element const &element)
Returns true if the element has zero length/area/volume.