Open CASCADE Technology 6.5.2
Public Member Functions
AdvApp2Var_ApproxAFunc2Var Class Reference

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 an extern "C" function

The evaluator Function has the following type :
typedef void (* AdvApp2Var_EvaluatorFunc2Var)
(Standard_Integer *, // Total Dimension
Standard_Real *, // StartEndInU[2]
Standard_Real *, // StartEndInV[2]
Standard_Integer *, // 1 for U = cte
// 2 for V = cte
Standard_Real *, // Value of cte
Standard_Integer *, // Number N of parameters
Standard_Real *, // Tab[N] of parameters at
// which evaluation
// should take place
Standard_Integer *, // U-Derivative Request
Standard_Integer *, // V-Derivative Request
Standard_Real *, // Result[Dimension,N]
Standard_Integer * // Error Code
) ;

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

#include <AdvApp2Var_ApproxAFunc2Var.hxx>

Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
 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


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


Handle_Geom_BSplineSurface Surface (const Standard_Integer Index) const
 returns the BSplineSurface of range Index

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

Handle_TColStd_HArray1OfReal AverageError (const Standard_Integer Dimension) const
 returns the average errors

Handle_TColStd_HArray1OfReal UFrontError (const Standard_Integer Dimension) const
 returns the errors max on UFrontiers
Warning:
Dimension must be equal to 3.

Handle_TColStd_HArray1OfReal VFrontError (const Standard_Integer Dimension) const
 returns the errors max on VFrontiers
Warning:
Dimension must be equal to 3.

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

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

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

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

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.



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
Standard_Real AdvApp2Var_ApproxAFunc2Var::AverageError ( const Standard_Integer  Dimension,
const Standard_Integer  Index 
) const
Standard_Real AdvApp2Var_ApproxAFunc2Var::CritError ( const Standard_Integer  Dimension,
const Standard_Integer  Index 
) const
void AdvApp2Var_ApproxAFunc2Var::Dump ( Standard_OStream o) const
Standard_Boolean AdvApp2Var_ApproxAFunc2Var::HasResult ( ) const
Standard_Boolean AdvApp2Var_ApproxAFunc2Var::IsDone ( ) const
Handle_TColStd_HArray1OfReal AdvApp2Var_ApproxAFunc2Var::MaxError ( const Standard_Integer  Dimension) const
Standard_Real AdvApp2Var_ApproxAFunc2Var::MaxError ( const Standard_Integer  Dimension,
const Standard_Integer  Index 
) const
Standard_Integer AdvApp2Var_ApproxAFunc2Var::NumSubSpaces ( const Standard_Integer  Dimension) const
void AdvApp2Var_ApproxAFunc2Var::operator delete ( void *  anAddress) [inline]
void* AdvApp2Var_ApproxAFunc2Var::operator new ( size_t  size) [inline]
void* AdvApp2Var_ApproxAFunc2Var::operator new ( size_t  ,
void *  anAddress 
) [inline]
Handle_Geom_BSplineSurface AdvApp2Var_ApproxAFunc2Var::Surface ( const Standard_Integer  Index) const
Standard_Integer AdvApp2Var_ApproxAFunc2Var::UDegree ( ) const
Standard_Real AdvApp2Var_ApproxAFunc2Var::UFrontError ( const Standard_Integer  Dimension,
const Standard_Integer  Index 
) const
Handle_TColStd_HArray1OfReal AdvApp2Var_ApproxAFunc2Var::UFrontError ( const Standard_Integer  Dimension) const
Standard_Integer AdvApp2Var_ApproxAFunc2Var::VDegree ( ) const
Standard_Real AdvApp2Var_ApproxAFunc2Var::VFrontError ( const Standard_Integer  Dimension,
const Standard_Integer  Index 
) const
Handle_TColStd_HArray1OfReal AdvApp2Var_ApproxAFunc2Var::VFrontError ( const Standard_Integer  Dimension) const

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines