|
Mechanics of Defect Evolution Library
|
#include <SegmentSegmentDistance.h>
Public Types | |
| typedef Eigen::Matrix< double, dim, 1 > | VectorDim |
| typedef Eigen::Matrix< long double, dim, 1 > | VectorDimLD |
| typedef std::tuple< VectorDim, double, double > | IntersectionPointType |
| typedef std::deque< IntersectionPointType > | IntersectionContainerType |
Public Member Functions | |
| std::pair< long double, long double > | step4U (const long double &T) const |
| std::pair< long double, long double > | step4 (const long double &U) const |
| std::pair< long double, long double > | step3 (const long double &T) const |
| std::pair< long double, long double > | step2 () const |
| std::pair< long double, long double > | getTU () const |
| SegmentSegmentDistance (const VectorDim &A0, const VectorDim &B0, const VectorDim &C0, const VectorDim &D0, const double °eneracyValue_in=0.0) | |
| IntersectionContainerType | intersectionSegment () const |
| bool | isIntersecting (const double tolerance=FLT_EPSILON) const |
Static Public Member Functions | |
| static long double | limitRange (const long double &v) |
Public Attributes | |
| const VectorDimLD | A |
| const VectorDimLD | B |
| const VectorDimLD | C |
| const VectorDimLD | D |
| const double | degeneracyValue |
| const VectorDimLD | d1 |
| const VectorDimLD | d2 |
| const VectorDimLD | d12 |
| const long double | R |
| const long double | S1 |
| const long double | S2 |
| const long double | D1 |
| const long double | D2 |
| const long double | den |
| const std::pair< long double, long double > | tu |
| const long double | t |
| const long double | u |
| const long double | dMin |
| const VectorDim | x0 |
| const VectorDim | x1 |
Static Public Attributes | |
| static constexpr double | tol =100*DBL_EPSILON |
Class template which computes the distance between two lines segments in dimension dim. Algorithm adapted from V. LUMELSKY. ON FAST COMPUTATION OF DISTANCE BETWEEN LINE SEGMENTS. Information Processing Letters 21 (1985) 55-61.
Definition at line 26 of file SegmentSegmentDistance.h.
| typedef std::deque<IntersectionPointType> model::SegmentSegmentDistance< dim >::IntersectionContainerType |
Definition at line 34 of file SegmentSegmentDistance.h.
| typedef std::tuple<VectorDim,double,double> model::SegmentSegmentDistance< dim >::IntersectionPointType |
Definition at line 33 of file SegmentSegmentDistance.h.
| typedef Eigen::Matrix<double,dim,1> model::SegmentSegmentDistance< dim >::VectorDim |
Definition at line 29 of file SegmentSegmentDistance.h.
| typedef Eigen::Matrix<long double,dim,1> model::SegmentSegmentDistance< dim >::VectorDimLD |
Definition at line 31 of file SegmentSegmentDistance.h.
| model::SegmentSegmentDistance< dim >::SegmentSegmentDistance | ( | const VectorDim & | A0, |
| const VectorDim & | B0, | ||
| const VectorDim & | C0, | ||
| const VectorDim & | D0, | ||
| const double & | degeneracyValue_in = 0.0 ) |
| [in] | A | start point of first segment |
| [in] | B | end point of first segment |
| [in] | C | start point of second segment |
| [in] | D | end point of second segment |
Definition at line 109 of file SegmentSegmentDistance.cpp.
| std::pair< long double, long double > model::SegmentSegmentDistance< dim >::getTU | ( | ) | const |
Definition at line 80 of file SegmentSegmentDistance.cpp.
| SegmentSegmentDistance< dim >::IntersectionContainerType model::SegmentSegmentDistance< dim >::intersectionSegment | ( | ) | const |
Definition at line 144 of file SegmentSegmentDistance.cpp.
| bool model::SegmentSegmentDistance< dim >::isIntersecting | ( | const double | tolerance = FLT_EPSILON | ) | const |
Definition at line 206 of file SegmentSegmentDistance.cpp.
|
static |
Definition at line 23 of file SegmentSegmentDistance.cpp.
| std::pair< long double, long double > model::SegmentSegmentDistance< dim >::step2 | ( | ) | const |
Definition at line 72 of file SegmentSegmentDistance.cpp.
| std::pair< long double, long double > model::SegmentSegmentDistance< dim >::step3 | ( | const long double & | T | ) | const |
Definition at line 57 of file SegmentSegmentDistance.cpp.
| std::pair< long double, long double > model::SegmentSegmentDistance< dim >::step4 | ( | const long double & | U | ) | const |
Compute t from eq. (10) and limit by eq. (12)
Definition at line 49 of file SegmentSegmentDistance.cpp.
| std::pair< long double, long double > model::SegmentSegmentDistance< dim >::step4U | ( | const long double & | T | ) | const |
Compute t from eq. (10) and limit by eq. (12)
Definition at line 41 of file SegmentSegmentDistance.cpp.
| const VectorDimLD model::SegmentSegmentDistance< dim >::A |
Definition at line 63 of file SegmentSegmentDistance.h.
| const VectorDimLD model::SegmentSegmentDistance< dim >::B |
Definition at line 64 of file SegmentSegmentDistance.h.
| const VectorDimLD model::SegmentSegmentDistance< dim >::C |
Definition at line 65 of file SegmentSegmentDistance.h.
| const VectorDimLD model::SegmentSegmentDistance< dim >::D |
Definition at line 66 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::D1 |
Definition at line 76 of file SegmentSegmentDistance.h.
| const VectorDimLD model::SegmentSegmentDistance< dim >::d1 |
Definition at line 69 of file SegmentSegmentDistance.h.
| const VectorDimLD model::SegmentSegmentDistance< dim >::d12 |
Definition at line 71 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::D2 |
Definition at line 77 of file SegmentSegmentDistance.h.
| const VectorDimLD model::SegmentSegmentDistance< dim >::d2 |
Definition at line 70 of file SegmentSegmentDistance.h.
| const double model::SegmentSegmentDistance< dim >::degeneracyValue |
Definition at line 67 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::den |
Definition at line 78 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::dMin |
Definition at line 83 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::R |
Definition at line 73 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::S1 |
Definition at line 74 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::S2 |
Definition at line 75 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::t |
Definition at line 81 of file SegmentSegmentDistance.h.
|
staticconstexpr |
Definition at line 36 of file SegmentSegmentDistance.h.
| const std::pair<long double,long double> model::SegmentSegmentDistance< dim >::tu |
Definition at line 80 of file SegmentSegmentDistance.h.
| const long double model::SegmentSegmentDistance< dim >::u |
Definition at line 82 of file SegmentSegmentDistance.h.
| const VectorDim model::SegmentSegmentDistance< dim >::x0 |
Definition at line 84 of file SegmentSegmentDistance.h.
| const VectorDim model::SegmentSegmentDistance< dim >::x1 |
Definition at line 85 of file SegmentSegmentDistance.h.