8#ifndef model_FiniteLineSegment_CPP_
9#define model_FiniteLineSegment_CPP_
45 const double chordNorm2(chord.squaredNorm());
46 if(chordNorm2>FLT_EPSILON)
48 const double u=(
x-
P0).dot(chord)/chordNorm2;
82 const double chordNorm2(chord.squaredNorm());
83 if(chordNorm2>FLT_EPSILON)
85 const double u=(
x-
P0).dot(chord)/chordNorm2;
86 return P0 +
u * chord;
98 const double& degeneracyValue)
const
108 return (
x-
snap(
x)).norm();
122 return (
P1-
P0).norm();
129 return length()<FLT_EPSILON;
VectorDim snap(const VectorDim &x) const
SegmentSegmentDistance< dim > distanceTo(const FiniteLineSegment< dim > &other, const double °eneracyValue=0.0) const
bool hasZeroLength() const
bool contains(const VectorDim &x) const
Eigen::Matrix< double, dim, 1 > VectorDim
VectorDim snapToInfiniteLine(const VectorDim &x) const
FiniteLineSegment(const VectorDim &p0, const VectorDim &p1)