Open CASCADE Technology  7.1.0.beta
Public Member Functions

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. 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_MultiCurveValue (const Standard_Integer Index=1) const
 returns the result of the approximation. More...
 
AppParCurves_MultiCurveChangeValue (const Standard_Integer Index=1)
 returns the result of the approximation. More...
 
const AppParCurves_MultiBSpCurveSplineValue ()
 returns the result of the approximation. More...
 
Approx_ParametrizationType Parametrization () const
 returns the type of parametrization More...
 
const TColStd_Array1OfRealParameters (const Standard_Integer Index=1) const
 returns the new parameters of the approximation corresponding to the points of the multicurve <Index>. More...
 

Constructor & Destructor Documentation

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.

Member Function Documentation

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.


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