Open CASCADE Technology
7.7.0
|
#include <AppDef_Compute.hxx>
Public Member Functions | |
AppDef_Compute (const AppDef_MultiLine &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. More... | |
AppDef_Compute (const AppDef_MultiLine &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. More... | |
AppDef_Compute (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. More... | |
AppDef_Compute (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. More... | |
void | 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. More... | |
void | Perform (const AppDef_MultiLine &Line) |
runs the algorithm after having initialized the fields. More... | |
void | SetDegrees (const Standard_Integer degreemin, const Standard_Integer degreemax) |
changes the degrees of the approximation. More... | |
void | SetTolerances (const Standard_Real Tolerance3d, const Standard_Real Tolerance2d) |
Changes the tolerances of the approximation. More... | |
void | SetConstraints (const AppParCurves_Constraint firstC, const AppParCurves_Constraint lastC) |
changes the first and the last constraint points. More... | |
Standard_Boolean | 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. More... | |
Standard_Boolean | IsToleranceReached () const |
returns False if the status NoPointsAdded has been sent. More... | |
void | Error (const Standard_Integer Index, Standard_Real &tol3d, Standard_Real &tol2d) const |
returns the tolerances 2d and 3d of the <Index> MultiCurve. More... | |
Standard_Integer | NbMultiCurves () const |
Returns the number of MultiCurve doing the approximation of the MultiLine. More... | |
const AppParCurves_MultiCurve & | Value (const Standard_Integer Index=1) const |
returns the result of the approximation. More... | |
AppParCurves_MultiCurve & | ChangeValue (const Standard_Integer Index=1) |
returns the result of the approximation. More... | |
const AppParCurves_MultiBSpCurve & | SplineValue () |
returns the result of the approximation. More... | |
Approx_ParametrizationType | Parametrization () const |
returns the type of parametrization More... | |
const TColStd_Array1OfReal & | Parameters (const Standard_Integer Index=1) const |
returns the new parameters of the approximation corresponding to the points of the multicurve <Index>. More... | |
AppDef_Compute::AppDef_Compute | ( | const AppDef_MultiLine & | 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.
AppDef_Compute::AppDef_Compute | ( | const AppDef_MultiLine & | 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.
AppDef_Compute::AppDef_Compute | ( | 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.
AppDef_Compute::AppDef_Compute | ( | 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& AppDef_Compute::ChangeValue | ( | const Standard_Integer | Index = 1 | ) |
returns the result of the approximation.
void AppDef_Compute::Error | ( | const Standard_Integer | Index, |
Standard_Real & | tol3d, | ||
Standard_Real & | tol2d | ||
) | const |
returns the tolerances 2d and 3d of the <Index> MultiCurve.
void AppDef_Compute::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 AppDef_Compute::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 AppDef_Compute::IsToleranceReached | ( | ) | const |
returns False if the status NoPointsAdded has been sent.
Standard_Integer AppDef_Compute::NbMultiCurves | ( | ) | const |
Returns the number of MultiCurve doing the approximation of the MultiLine.
const TColStd_Array1OfReal& AppDef_Compute::Parameters | ( | const Standard_Integer | Index = 1 | ) | const |
returns the new parameters of the approximation corresponding to the points of the multicurve <Index>.
Approx_ParametrizationType AppDef_Compute::Parametrization | ( | ) | const |
returns the type of parametrization
void AppDef_Compute::Perform | ( | const AppDef_MultiLine & | Line | ) |
runs the algorithm after having initialized the fields.
void AppDef_Compute::SetConstraints | ( | const AppParCurves_Constraint | firstC, |
const AppParCurves_Constraint | lastC | ||
) |
changes the first and the last constraint points.
void AppDef_Compute::SetDegrees | ( | const Standard_Integer | degreemin, |
const Standard_Integer | degreemax | ||
) |
changes the degrees of the approximation.
void AppDef_Compute::SetTolerances | ( | const Standard_Real | Tolerance3d, |
const Standard_Real | Tolerance2d | ||
) |
Changes the tolerances of the approximation.
const AppParCurves_MultiBSpCurve& AppDef_Compute::SplineValue | ( | ) |
returns the result of the approximation.
const AppParCurves_MultiCurve& AppDef_Compute::Value | ( | const Standard_Integer | Index = 1 | ) | const |
returns the result of the approximation.