29 #ifndef vtkMathUtilities_h
30 #define vtkMathUtilities_h
43 return fabs(a - b) < std::numeric_limits<A>::epsilon();
53 return fabs(a - b) < epsilon;
70 if( (a == static_cast<A>(0)) ||
71 ((b > static_cast<A>(1)) && (a < b*std::numeric_limits<A>::min())) )
73 return static_cast<A
>(0);
85 bool NearlyEqual(A a, A b, A tol=std::numeric_limits<A>::epsilon())
87 A absdiff = fabs(a-b);
88 A d1 = vtkMathUtilities::SafeDivision<A>(absdiff,fabs(a));
89 A d2 = vtkMathUtilities::SafeDivision<A>(absdiff,fabs(b));
92 if( (d1 <= tol) || (d2 <= tol) )
101 #endif // vtkMathUtilities_h
bool NearlyEqual(A a, A b, A tol=std::numeric_limits< A >::epsilon())
bool FuzzyCompare(A a, A b)