diff --git a/IntersLineLine.cpp b/IntersLineLine.cpp index d92c882..6ec6aa9 100644 --- a/IntersLineLine.cpp +++ b/IntersLineLine.cpp @@ -23,8 +23,8 @@ using namespace std ; bool IsPointOutFatSegment( const Point3d& ptP, const Point3d& ptS, const Vector3d& vtDir, double dLenXY, double dTol) { - // distanza del punto dalla linea del segmento - if ( fabs( CrossXY( ( ptP - ptS), vtDir)) < dTol * dLenXY) + // distanza del punto dalla linea del segmento (con compensazione piccolissimi errori) + if ( fabs( CrossXY( ( ptP - ptS), vtDir)) < ( dTol + EPS_ZERO) * dLenXY) return false ; // distanza con segno della proiezione del punto sul segmento dall'inizio per lunghezza segmento double dDistXY = ScalarXY( ( ptP - ptS), vtDir) ;