Open CASCADE Technology
7.7.0
|
Computes the max distance between 3D-curve and curve on surface. This class uses 2 methods: approximate using finite number of points (default) and exact. More...
#include <BRepLib_ValidateEdge.hxx>
Public Member Functions | |
BRepLib_ValidateEdge (const Handle< Adaptor3d_Curve > theReferenceCurve, const Handle< Adaptor3d_CurveOnSurface > theOtherCurve, Standard_Boolean theSameParameter) | |
Initialization constructor. More... | |
void | SetExactMethod (Standard_Boolean theIsExact) |
Sets method to calculate distance: Calculating in finite number of points (if theIsExact is false, faster, but possible not correct result) or exact calculating by using BRepLib_CheckCurveOnSurface class (if theIsExact is true, slowly, but more correctly). Exact method is used only when edge is SameParameter. Default method is calculating in finite number of points. More... | |
Standard_Boolean | IsExactMethod () |
Returns true if exact method selected. More... | |
void | SetParallel (Standard_Boolean theIsMultiThread) |
Sets parallel flag. More... | |
Standard_Boolean | IsParallel () |
Returns true if parallel flag is set. More... | |
void | SetControlPointsNumber (Standard_Integer theControlPointsNumber) |
Set control points number (if you need a value other than 22) More... | |
void | SetExitIfToleranceExceeded (Standard_Real theToleranceForChecking) |
Sets limit to compute a distance in the Process() function. If the distance greater than theToleranceForChecking the Process() function stopped. Use this in case checking of tolerance for best performcnce. Has no effect in case using exact method. More... | |
void | Process () |
Computes the max distance for the 3d curve <myReferenceCurve> and curve on surface <myOtherCurve>. If the SetExitIfToleranceExceeded() function was called before <myCalculatedDistance> contains first greater than SetExitIfToleranceExceeded() parameter value. In case using exact method always computes real max distance. More... | |
Standard_Boolean | IsDone () const |
Returns true if the distance has been found for all points. More... | |
Standard_Boolean | CheckTolerance (Standard_Real theToleranceToCheck) |
Returns true if computed distance is less than <theToleranceToCheck> More... | |
Standard_Real | GetMaxDistance () |
Returns max distance. More... | |
void | UpdateTolerance (Standard_Real &theToleranceToUpdate) |
Increase <theToleranceToUpdate> if max distance is greater than <theToleranceToUpdate> More... | |
Computes the max distance between 3D-curve and curve on surface. This class uses 2 methods: approximate using finite number of points (default) and exact.
BRepLib_ValidateEdge::BRepLib_ValidateEdge | ( | const Handle< Adaptor3d_Curve > | theReferenceCurve, |
const Handle< Adaptor3d_CurveOnSurface > | theOtherCurve, | ||
Standard_Boolean | theSameParameter | ||
) |
Initialization constructor.
Standard_Boolean BRepLib_ValidateEdge::CheckTolerance | ( | Standard_Real | theToleranceToCheck | ) |
Returns true if computed distance is less than <theToleranceToCheck>
Standard_Real BRepLib_ValidateEdge::GetMaxDistance | ( | ) |
Returns max distance.
|
inline |
Returns true if the distance has been found for all points.
|
inline |
Returns true if exact method selected.
|
inline |
Returns true if parallel flag is set.
void BRepLib_ValidateEdge::Process | ( | ) |
Computes the max distance for the 3d curve <myReferenceCurve> and curve on surface <myOtherCurve>. If the SetExitIfToleranceExceeded() function was called before <myCalculatedDistance> contains first greater than SetExitIfToleranceExceeded() parameter value. In case using exact method always computes real max distance.
|
inline |
Set control points number (if you need a value other than 22)
|
inline |
Sets method to calculate distance: Calculating in finite number of points (if theIsExact is false, faster, but possible not correct result) or exact calculating by using BRepLib_CheckCurveOnSurface class (if theIsExact is true, slowly, but more correctly). Exact method is used only when edge is SameParameter. Default method is calculating in finite number of points.
void BRepLib_ValidateEdge::SetExitIfToleranceExceeded | ( | Standard_Real | theToleranceForChecking | ) |
|
inline |
Sets parallel flag.
void BRepLib_ValidateEdge::UpdateTolerance | ( | Standard_Real & | theToleranceToUpdate | ) |
Increase <theToleranceToUpdate> if max distance is greater than <theToleranceToUpdate>