Perform the approximation of <Func> F(U,V) Arguments are : Num1DSS, Num2DSS, Num3DSS :The numbers of 1,2,3 dimensional subspaces OneDTol, TwoDTol, ThreeDTol: The tolerance of approximation in each subspaces OneDTolFr, TwoDTolFr, ThreeDTolFr: The tolerance of approximation on the boundarys in each subspaces [FirstInU, LastInU]: The Bounds in U of the Approximation [FirstInV, LastInV]: The Bounds in V of the Approximation FavorIso : Give preference to extract u-iso or v-iso on F(U,V) This can be usefull to optimize the <Func> methode ContInU, ContInV : Continuity waiting in u and v PrecisCode : Precision on approximation's error mesurement 1 : Fast computation and average precision 2 : Average computation and good precision 3 : Slow computation and very good precision MaxDegInU : Maximum u-degree waiting in U MaxDegInV : Maximum u-degree waiting in V Warning: MaxDegInU (resp. MaxDegInV) must be >= 2*iu (resp. iv) + 1, where iu (resp. iv) = 0 if ContInU (resp. ContInV) = GeomAbs_C0, = 1 if = GeomAbs_C1, = 2 if = GeomAbs_C2. MaxPatch : Maximun number of Patch waiting number of Patch is number of u span * number of v span Func : The external method to evaluate F(U,V) Crit : To (re)defined condition of convergence UChoice, VChoice : To define the way in U (or V) Knot insertion Warning: for the moment, the result is a 3D Surface so Num1DSS and Num2DSS must be equals to 0 and Num3DSS must be equal to 1. Warning: the Function of type EvaluatorFunc2Var from Approx must be a subclass of AdvApp2Var_EvaluatorFunc2Var. More...

## Public Member Functions

AdvApp2Var_ApproxAFunc2Var (const Standard_Integer Num1DSS, const Standard_Integer Num2DSS, const Standard_Integer Num3DSS, const Handle< TColStd_HArray1OfReal > &OneDTol, const Handle< TColStd_HArray1OfReal > &TwoDTol, const Handle< TColStd_HArray1OfReal > &ThreeDTol, const Handle< TColStd_HArray2OfReal > &OneDTolFr, const Handle< TColStd_HArray2OfReal > &TwoDTolFr, const Handle< TColStd_HArray2OfReal > &ThreeDTolFr, const Standard_Real FirstInU, const Standard_Real LastInU, const Standard_Real FirstInV, const Standard_Real LastInV, const GeomAbs_IsoType FavorIso, const GeomAbs_Shape ContInU, const GeomAbs_Shape ContInV, const Standard_Integer PrecisCode, const Standard_Integer MaxDegInU, const Standard_Integer MaxDegInV, const Standard_Integer MaxPatch, const AdvApp2Var_EvaluatorFunc2Var &Func, AdvApprox_Cutting &UChoice, AdvApprox_Cutting &VChoice)

AdvApp2Var_ApproxAFunc2Var (const Standard_Integer Num1DSS, const Standard_Integer Num2DSS, const Standard_Integer Num3DSS, const Handle< TColStd_HArray1OfReal > &OneDTol, const Handle< TColStd_HArray1OfReal > &TwoDTol, const Handle< TColStd_HArray1OfReal > &ThreeDTol, const Handle< TColStd_HArray2OfReal > &OneDTolFr, const Handle< TColStd_HArray2OfReal > &TwoDTolFr, const Handle< TColStd_HArray2OfReal > &ThreeDTolFr, const Standard_Real FirstInU, const Standard_Real LastInU, const Standard_Real FirstInV, const Standard_Real LastInV, const GeomAbs_IsoType FavorIso, const GeomAbs_Shape ContInU, const GeomAbs_Shape ContInV, const Standard_Integer PrecisCode, const Standard_Integer MaxDegInU, const Standard_Integer MaxDegInV, const Standard_Integer MaxPatch, const AdvApp2Var_EvaluatorFunc2Var &Func, const AdvApp2Var_Criterion &Crit, AdvApprox_Cutting &UChoice, AdvApprox_Cutting &VChoice)

Standard_Boolean IsDone () const
True if the approximation succeeded within the imposed tolerances and the wished continuities. More...

Standard_Boolean HasResult () const
True if the approximation did come out with a result that is not NECESSARELY within the required tolerance or a result that is not recognized with the wished continuities. More...

Handle< Geom_BSplineSurfaceSurface (const Standard_Integer Index) const
returns the BSplineSurface of range Index More...

Standard_Integer UDegree () const

Standard_Integer VDegree () const

Standard_Integer NumSubSpaces (const Standard_Integer Dimension) const

Handle< TColStd_HArray1OfReal > MaxError (const Standard_Integer Dimension) const
returns the errors max More...

Handle< TColStd_HArray1OfReal > AverageError (const Standard_Integer Dimension) const
returns the average errors More...

Handle< TColStd_HArray1OfReal > UFrontError (const Standard_Integer Dimension) const
returns the errors max on UFrontiers Warning: Dimension must be equal to 3. More...

Handle< TColStd_HArray1OfReal > VFrontError (const Standard_Integer Dimension) const
returns the errors max on VFrontiers Warning: Dimension must be equal to 3. More...

Standard_Real MaxError (const Standard_Integer Dimension, const Standard_Integer Index) const
returns the error max of the BSplineSurface of range Index More...

Standard_Real AverageError (const Standard_Integer Dimension, const Standard_Integer Index) const
returns the average error of the BSplineSurface of range Index More...

Standard_Real UFrontError (const Standard_Integer Dimension, const Standard_Integer Index) const
returns the error max of the BSplineSurface of range Index on a UFrontier More...

Standard_Real VFrontError (const Standard_Integer Dimension, const Standard_Integer Index) const
returns the error max of the BSplineSurface of range Index on a VFrontier More...

Standard_Real CritError (const Standard_Integer Dimension, const Standard_Integer Index) const

void Dump (Standard_OStream &o) const
Prints on the stream o informations on the current state of the object. More...

## Detailed Description

Perform the approximation of <Func> F(U,V) Arguments are : Num1DSS, Num2DSS, Num3DSS :The numbers of 1,2,3 dimensional subspaces OneDTol, TwoDTol, ThreeDTol: The tolerance of approximation in each subspaces OneDTolFr, TwoDTolFr, ThreeDTolFr: The tolerance of approximation on the boundarys in each subspaces [FirstInU, LastInU]: The Bounds in U of the Approximation [FirstInV, LastInV]: The Bounds in V of the Approximation FavorIso : Give preference to extract u-iso or v-iso on F(U,V) This can be usefull to optimize the <Func> methode ContInU, ContInV : Continuity waiting in u and v PrecisCode : Precision on approximation's error mesurement 1 : Fast computation and average precision 2 : Average computation and good precision 3 : Slow computation and very good precision MaxDegInU : Maximum u-degree waiting in U MaxDegInV : Maximum u-degree waiting in V Warning: MaxDegInU (resp. MaxDegInV) must be >= 2*iu (resp. iv) + 1, where iu (resp. iv) = 0 if ContInU (resp. ContInV) = GeomAbs_C0, = 1 if = GeomAbs_C1, = 2 if = GeomAbs_C2. MaxPatch : Maximun number of Patch waiting number of Patch is number of u span * number of v span Func : The external method to evaluate F(U,V) Crit : To (re)defined condition of convergence UChoice, VChoice : To define the way in U (or V) Knot insertion Warning: for the moment, the result is a 3D Surface so Num1DSS and Num2DSS must be equals to 0 and Num3DSS must be equal to 1. Warning: the Function of type EvaluatorFunc2Var from Approx must be a subclass of AdvApp2Var_EvaluatorFunc2Var.

the result should be formatted in the following way : <–Num1DSS–> <–2 * Num2DSS–> <–3 * Num3DSS–> R[0,0] .... R[Num1DSS,0]..... R[Dimension-1,0] for the 1st parameter R[0,i] .... R[Num1DSS,i]..... R[Dimension-1,i] for the ith parameter R[0,N-1] .... R[Num1DSS,N-1].... R[Dimension-1,N-1] for the Nth parameter

the order in which each Subspace appears should be consistent with the tolerances given in the create function and the results will be given in that order as well that is : Surface(n) will correspond to the nth entry described by Num3DSS

## Constructor & Destructor Documentation

 AdvApp2Var_ApproxAFunc2Var::AdvApp2Var_ApproxAFunc2Var ( const Standard_Integer Num1DSS, const Standard_Integer Num2DSS, const Standard_Integer Num3DSS, const Handle< TColStd_HArray1OfReal > & OneDTol, const Handle< TColStd_HArray1OfReal > & TwoDTol, const Handle< TColStd_HArray1OfReal > & ThreeDTol, const Handle< TColStd_HArray2OfReal > & OneDTolFr, const Handle< TColStd_HArray2OfReal > & TwoDTolFr, const Handle< TColStd_HArray2OfReal > & ThreeDTolFr, const Standard_Real FirstInU, const Standard_Real LastInU, const Standard_Real FirstInV, const Standard_Real LastInV, const GeomAbs_IsoType FavorIso, const GeomAbs_Shape ContInU, const GeomAbs_Shape ContInV, const Standard_Integer PrecisCode, const Standard_Integer MaxDegInU, const Standard_Integer MaxDegInV, const Standard_Integer MaxPatch, const AdvApp2Var_EvaluatorFunc2Var & Func, AdvApprox_Cutting & UChoice, AdvApprox_Cutting & VChoice )
 AdvApp2Var_ApproxAFunc2Var::AdvApp2Var_ApproxAFunc2Var ( const Standard_Integer Num1DSS, const Standard_Integer Num2DSS, const Standard_Integer Num3DSS, const Handle< TColStd_HArray1OfReal > & OneDTol, const Handle< TColStd_HArray1OfReal > & TwoDTol, const Handle< TColStd_HArray1OfReal > & ThreeDTol, const Handle< TColStd_HArray2OfReal > & OneDTolFr, const Handle< TColStd_HArray2OfReal > & TwoDTolFr, const Handle< TColStd_HArray2OfReal > & ThreeDTolFr, const Standard_Real FirstInU, const Standard_Real LastInU, const Standard_Real FirstInV, const Standard_Real LastInV, const GeomAbs_IsoType FavorIso, const GeomAbs_Shape ContInU, const GeomAbs_Shape ContInV, const Standard_Integer PrecisCode, const Standard_Integer MaxDegInU, const Standard_Integer MaxDegInV, const Standard_Integer MaxPatch, const AdvApp2Var_EvaluatorFunc2Var & Func, const AdvApp2Var_Criterion & Crit, AdvApprox_Cutting & UChoice, AdvApprox_Cutting & VChoice )

## Member Function Documentation

 Handle< TColStd_HArray1OfReal > AdvApp2Var_ApproxAFunc2Var::AverageError ( const Standard_Integer Dimension ) const

returns the average errors

 Standard_Real AdvApp2Var_ApproxAFunc2Var::AverageError ( const Standard_Integer Dimension, const Standard_Integer Index ) const

returns the average error of the BSplineSurface of range Index

 Standard_Real AdvApp2Var_ApproxAFunc2Var::CritError ( const Standard_Integer Dimension, const Standard_Integer Index ) const
 void AdvApp2Var_ApproxAFunc2Var::Dump ( Standard_OStream & o ) const

Prints on the stream o informations on the current state of the object.

True if the approximation did come out with a result that is not NECESSARELY within the required tolerance or a result that is not recognized with the wished continuities.

True if the approximation succeeded within the imposed tolerances and the wished continuities.

 Handle< TColStd_HArray1OfReal > AdvApp2Var_ApproxAFunc2Var::MaxError ( const Standard_Integer Dimension ) const

returns the errors max

 Standard_Real AdvApp2Var_ApproxAFunc2Var::MaxError ( const Standard_Integer Dimension, const Standard_Integer Index ) const

returns the error max of the BSplineSurface of range Index

 Standard_Integer AdvApp2Var_ApproxAFunc2Var::NumSubSpaces ( const Standard_Integer Dimension ) const
 Handle< Geom_BSplineSurface > AdvApp2Var_ApproxAFunc2Var::Surface ( const Standard_Integer Index ) const

returns the BSplineSurface of range Index

 Handle< TColStd_HArray1OfReal > AdvApp2Var_ApproxAFunc2Var::UFrontError ( const Standard_Integer Dimension ) const

returns the errors max on UFrontiers Warning: Dimension must be equal to 3.

 Standard_Real AdvApp2Var_ApproxAFunc2Var::UFrontError ( const Standard_Integer Dimension, const Standard_Integer Index ) const

returns the error max of the BSplineSurface of range Index on a UFrontier