Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
Approx_SweepApproximation Class Reference

Approximation of an Surface S(u,v)
(and eventually associate 2d Curves) defined
by section's law.

This surface is defined by a function F(u, v)
where Ft(u) = F(u, t) is a bspline curve.
To use this algorithme, you have to implement Ft(u)
as a derivative class of Approx_SweepFunction.
This algorithm can be used by blending, sweeping...

#include <Approx_SweepApproximation.hxx>

Public Member Functions

DEFINE_STANDARD_ALLOC Approx_SweepApproximation (const Handle< Approx_SweepFunction > &Func)
void Perform (const Standard_Real First, const Standard_Real Last, const Standard_Real Tol3d, const Standard_Real BoundTol, const Standard_Real Tol2d, const Standard_Real TolAngular, const GeomAbs_Shape Continuity=GeomAbs_C0, const Standard_Integer Degmax=11, const Standard_Integer Segmax=50)
 Perform the Approximation
[First, Last] : Approx_SweepApproximation.cdl
Tol3d : Tolerance to surface approximation
Tol2d : Tolerance used to perform curve approximation
Normaly the 2d curve are approximated with a
tolerance given by the resolution on support surfaces,
but if this tolerance is too large Tol2d is used.
TolAngular : Tolerance (in radian) to control the angle
beetween tangents on the section law and
tangent of iso-v on approximed surface
Continuity : The continuity in v waiting on the surface
Degmax : The maximum degree in v requiered on the surface
Segmax : The maximum number of span in v requiered on
the surface
Warning : The continuity ci can be obtained only if Ft is Ci

Standard_Integer Eval (const Standard_Real Parameter, const Standard_Integer DerivativeRequest, const Standard_Real First, const Standard_Real Last, Standard_Real &Result)
 The EvaluatorFunction from AdvApprox;

Standard_Boolean IsDone () const
 returns if we have an result

void SurfShape (Standard_Integer &UDegree, Standard_Integer &VDegree, Standard_Integer &NbUPoles, Standard_Integer &NbVPoles, Standard_Integer &NbUKnots, Standard_Integer &NbVKnots) const
void Surface (TColgp_Array2OfPnt &TPoles, TColStd_Array2OfReal &TWeights, TColStd_Array1OfReal &TUKnots, TColStd_Array1OfReal &TVKnots, TColStd_Array1OfInteger &TUMults, TColStd_Array1OfInteger &TVMults) const
Standard_Integer UDegree () const
Standard_Integer VDegree () const
const TColgp_Array2OfPntSurfPoles () const
const TColStd_Array2OfRealSurfWeights () const
const TColStd_Array1OfRealSurfUKnots () const
const TColStd_Array1OfRealSurfVKnots () const
const TColStd_Array1OfIntegerSurfUMults () const
const TColStd_Array1OfIntegerSurfVMults () const
Standard_Real MaxErrorOnSurf () const
 returns the maximum error in the suface approximation.

Standard_Real AverageErrorOnSurf () const
 returns the average error in the suface approximation.

Standard_Integer NbCurves2d () const
void Curves2dShape (Standard_Integer &Degree, Standard_Integer &NbPoles, Standard_Integer &NbKnots) const
void Curve2d (const Standard_Integer Index, TColgp_Array1OfPnt2d &TPoles, TColStd_Array1OfReal &TKnots, TColStd_Array1OfInteger &TMults) const
Standard_Integer Curves2dDegree () const
const TColgp_Array1OfPnt2dCurve2dPoles (const Standard_Integer Index) const
const TColStd_Array1OfRealCurves2dKnots () const
const TColStd_Array1OfIntegerCurves2dMults () const
Standard_Real Max2dError (const Standard_Integer Index) const
 returns the maximum error of the <Index>
2d curve approximation.

Standard_Real Average2dError (const Standard_Integer Index) const
 returns the average error of the <Index>
2d curve approximation.

Standard_Real TolCurveOnSurf (const Standard_Integer Index) const
 returns the maximum 3d error of the <Index>
2d curve approximation on the Surface.

void Dump (Standard_OStream &o) const
 display information on approximation.


Constructor & Destructor Documentation


Member Function Documentation

void Approx_SweepApproximation::SurfShape ( Standard_Integer UDegree,
Standard_Integer VDegree,
Standard_Integer NbUPoles,
Standard_Integer NbVPoles,
Standard_Integer NbUKnots,
Standard_Integer NbVKnots 
) const

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