Open CASCADE Technology 7.8.2.dev
AppDef_Compute Class Reference

#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.
 
 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 (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 (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.
 
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.
 
void Perform (const AppDef_MultiLine &Line)
 runs the algorithm after having initialized the fields.
 
void SetDegrees (const Standard_Integer degreemin, const Standard_Integer degreemax)
 changes the degrees of the approximation.
 
void SetTolerances (const Standard_Real Tolerance3d, const Standard_Real Tolerance2d)
 Changes the tolerances of the approximation.
 
void SetConstraints (const AppParCurves_Constraint firstC, const AppParCurves_Constraint lastC)
 changes the first and the last constraint points.
 
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.
 
Standard_Boolean IsToleranceReached () const
 returns False if the status NoPointsAdded has been sent.
 
void Error (const Standard_Integer Index, Standard_Real &tol3d, Standard_Real &tol2d) const
 returns the tolerances 2d and 3d of the <Index> MultiCurve.
 
Standard_Integer NbMultiCurves () const
 Returns the number of MultiCurve doing the approximation of the MultiLine.
 
const AppParCurves_MultiCurveValue (const Standard_Integer Index=1) const
 returns the result of the approximation.
 
AppParCurves_MultiCurveChangeValue (const Standard_Integer Index=1)
 returns the result of the approximation.
 
const AppParCurves_MultiBSpCurveSplineValue ()
 returns the result of the approximation.
 
Approx_ParametrizationType Parametrization () const
 returns the type of parametrization
 
const TColStd_Array1OfRealParameters (const Standard_Integer Index=1) const
 returns the new parameters of the approximation corresponding to the points of the multicurve <Index>.
 

Constructor & Destructor Documentation

◆ AppDef_Compute() [1/4]

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() [2/4]

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() [3/4]

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() [4/4]

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.

Member Function Documentation

◆ ChangeValue()

AppParCurves_MultiCurve & AppDef_Compute::ChangeValue ( const Standard_Integer Index = 1)

returns the result of the approximation.

◆ Error()

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.

◆ Init()

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.

◆ IsAllApproximated()

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.

◆ IsToleranceReached()

Standard_Boolean AppDef_Compute::IsToleranceReached ( ) const

returns False if the status NoPointsAdded has been sent.

◆ NbMultiCurves()

Standard_Integer AppDef_Compute::NbMultiCurves ( ) const

Returns the number of MultiCurve doing the approximation of the MultiLine.

◆ Parameters()

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>.

◆ Parametrization()

Approx_ParametrizationType AppDef_Compute::Parametrization ( ) const

returns the type of parametrization

◆ Perform()

void AppDef_Compute::Perform ( const AppDef_MultiLine & Line)

runs the algorithm after having initialized the fields.

◆ SetConstraints()

void AppDef_Compute::SetConstraints ( const AppParCurves_Constraint firstC,
const AppParCurves_Constraint lastC )

changes the first and the last constraint points.

◆ SetDegrees()

void AppDef_Compute::SetDegrees ( const Standard_Integer degreemin,
const Standard_Integer degreemax )

changes the degrees of the approximation.

◆ SetTolerances()

void AppDef_Compute::SetTolerances ( const Standard_Real Tolerance3d,
const Standard_Real Tolerance2d )

Changes the tolerances of the approximation.

◆ SplineValue()

const AppParCurves_MultiBSpCurve & AppDef_Compute::SplineValue ( )

returns the result of the approximation.

◆ Value()

const AppParCurves_MultiCurve & AppDef_Compute::Value ( const Standard_Integer Index = 1) const

returns the result of the approximation.


The documentation for this class was generated from the following file: