Open CASCADE Technology 7.8.0
|
#include <GeomInt_TheComputeLineBezierOfWLApprox.hxx>
GeomInt_TheComputeLineBezierOfWLApprox::GeomInt_TheComputeLineBezierOfWLApprox | ( | const GeomInt_TheMultiLineOfWLApprox & | Line, |
const Standard_Integer | degreemin = 4 , |
||
const Standard_Integer | degreemax = 8 , |
||
const Standard_Real | Tolerance3d = 1.0e-3 , |
||
const Standard_Real | Tolerance2d = 1.0e-6 , |
||
const Standard_Integer | NbIterations = 5 , |
||
const Standard_Boolean | cutting = Standard_True , |
||
const Approx_ParametrizationType | parametrization = Approx_ChordLength , |
||
const Standard_Boolean | Squares = Standard_False |
||
) |
The MultiLine <Line> will be approximated until tolerances will be reached. The approximation will be done from degreemin to degreemax with a cutting if the corresponding boolean is True. If <Squares> is True, the computation will be done with no iteration at all.
GeomInt_TheComputeLineBezierOfWLApprox::GeomInt_TheComputeLineBezierOfWLApprox | ( | const GeomInt_TheMultiLineOfWLApprox & | Line, |
const math_Vector & | Parameters, | ||
const Standard_Integer | degreemin = 4 , |
||
const Standard_Integer | degreemax = 8 , |
||
const Standard_Real | Tolerance3d = 1.0e-03 , |
||
const Standard_Real | Tolerance2d = 1.0e-06 , |
||
const Standard_Integer | NbIterations = 5 , |
||
const Standard_Boolean | cutting = Standard_True , |
||
const Standard_Boolean | Squares = Standard_False |
||
) |
The MultiLine <Line> will be approximated until tolerances will be reached. The approximation will be done from degreemin to degreemax with a cutting if the corresponding boolean is True. If <Squares> is True, the computation will be done with no iteration at all.
GeomInt_TheComputeLineBezierOfWLApprox::GeomInt_TheComputeLineBezierOfWLApprox | ( | const math_Vector & | Parameters, |
const Standard_Integer | degreemin = 4 , |
||
const Standard_Integer | degreemax = 8 , |
||
const Standard_Real | Tolerance3d = 1.0e-03 , |
||
const Standard_Real | Tolerance2d = 1.0e-06 , |
||
const Standard_Integer | NbIterations = 5 , |
||
const Standard_Boolean | cutting = Standard_True , |
||
const Standard_Boolean | Squares = Standard_False |
||
) |
Initializes the fields of the algorithm.
GeomInt_TheComputeLineBezierOfWLApprox::GeomInt_TheComputeLineBezierOfWLApprox | ( | const Standard_Integer | degreemin = 4 , |
const Standard_Integer | degreemax = 8 , |
||
const Standard_Real | Tolerance3d = 1.0e-03 , |
||
const Standard_Real | Tolerance2d = 1.0e-06 , |
||
const Standard_Integer | NbIterations = 5 , |
||
const Standard_Boolean | cutting = Standard_True , |
||
const Approx_ParametrizationType | parametrization = Approx_ChordLength , |
||
const Standard_Boolean | Squares = Standard_False |
||
) |
Initializes the fields of the algorithm.
AppParCurves_MultiCurve & GeomInt_TheComputeLineBezierOfWLApprox::ChangeValue | ( | const Standard_Integer | Index = 1 | ) |
returns the result of the approximation.
void GeomInt_TheComputeLineBezierOfWLApprox::Error | ( | const Standard_Integer | Index, |
Standard_Real & | tol3d, | ||
Standard_Real & | tol2d | ||
) | const |
returns the tolerances 2d and 3d of the <Index> MultiCurve.
void GeomInt_TheComputeLineBezierOfWLApprox::Init | ( | const Standard_Integer | degreemin = 4 , |
const Standard_Integer | degreemax = 8 , |
||
const Standard_Real | Tolerance3d = 1.0e-03 , |
||
const Standard_Real | Tolerance2d = 1.0e-06 , |
||
const Standard_Integer | NbIterations = 5 , |
||
const Standard_Boolean | cutting = Standard_True , |
||
const Approx_ParametrizationType | parametrization = Approx_ChordLength , |
||
const Standard_Boolean | Squares = Standard_False |
||
) |
Initializes the fields of the algorithm.
Standard_Boolean GeomInt_TheComputeLineBezierOfWLApprox::IsAllApproximated | ( | ) | const |
returns False if at a moment of the approximation, the status NoApproximation has been sent by the user when more points were needed.
Standard_Boolean GeomInt_TheComputeLineBezierOfWLApprox::IsToleranceReached | ( | ) | const |
returns False if the status NoPointsAdded has been sent.
Standard_Integer GeomInt_TheComputeLineBezierOfWLApprox::NbMultiCurves | ( | ) | const |
Returns the number of MultiCurve doing the approximation of the MultiLine.
const TColStd_Array1OfReal & GeomInt_TheComputeLineBezierOfWLApprox::Parameters | ( | const Standard_Integer | Index = 1 | ) | const |
returns the new parameters of the approximation corresponding to the points of the multicurve <Index>.
Approx_ParametrizationType GeomInt_TheComputeLineBezierOfWLApprox::Parametrization | ( | ) | const |
returns the type of parametrization
void GeomInt_TheComputeLineBezierOfWLApprox::Perform | ( | const GeomInt_TheMultiLineOfWLApprox & | Line | ) |
runs the algorithm after having initialized the fields.
void GeomInt_TheComputeLineBezierOfWLApprox::SetConstraints | ( | const AppParCurves_Constraint | firstC, |
const AppParCurves_Constraint | lastC | ||
) |
changes the first and the last constraint points.
void GeomInt_TheComputeLineBezierOfWLApprox::SetDegrees | ( | const Standard_Integer | degreemin, |
const Standard_Integer | degreemax | ||
) |
changes the degrees of the approximation.
void GeomInt_TheComputeLineBezierOfWLApprox::SetTolerances | ( | const Standard_Real | Tolerance3d, |
const Standard_Real | Tolerance2d | ||
) |
Changes the tolerances of the approximation.
const AppParCurves_MultiBSpCurve & GeomInt_TheComputeLineBezierOfWLApprox::SplineValue | ( | ) |
returns the result of the approximation.
const AppParCurves_MultiCurve & GeomInt_TheComputeLineBezierOfWLApprox::Value | ( | const Standard_Integer | Index = 1 | ) | const |
returns the result of the approximation.