30 auto const& a = *nodes[0];
31 auto const& b = *nodes[1];
43 double distance_of_proj_pnt_to_a;
45 pnt, a, b, lambda, distance_of_proj_pnt_to_a);
47 if (lambda >= 0 && lambda <= 1)
50 return distance_from_line < eps;
63 if (nodes[0] == _nodes[0])
67 if (nodes[0] == _nodes[1])
71 return std::numeric_limits<unsigned>::max();
Definition of the Node class.
Collects error flags for mesh elements.
static bool isPntInElement(Node const *const *nodes, MathLib::Point3d const &pnt, double eps)
static ElementErrorCode validate(const Element *e)
static const unsigned edge_nodes[1][2]
Constant: Local node index table for edge.
static double computeVolume(Node const *const *_nodes)
Calculates the length of a line.
static unsigned identifyFace(Node const *const *, Node const *nodes[1])
Returns the ID of a face given an array of nodes.
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.