Open CASCADE Technology  6.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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 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
More...

#include <AdvApp2Var_ApproxAFunc2Var.hxx>

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

tolerances and the wished continuities

More...

 
Standard_Boolean HasResult () const
 
  True if the approximation did come out with a result that <br>

is not NECESSARELY within the required tolerance or a result
that is not recognized with the wished continuities

More...

 
Handle_Geom_BSplineSurface Surface (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 <br>

Warning:
Dimension must be equal to 3.
More...

 
Handle_TColStd_HArray1OfReal VFrontError (const Standard_Integer Dimension) const
 
returns the errors max on VFrontiers <br>

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 <br>
     of the object. <br>


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 <br>
     of the object. <br>


Standard_Boolean AdvApp2Var_ApproxAFunc2Var::HasResult ( ) const

  True if the approximation did come out with a result that <br>

is not NECESSARELY within the required tolerance or a result
that is not recognized with the wished continuities

Standard_Boolean AdvApp2Var_ApproxAFunc2Var::IsDone ( ) const

  True if the approximation succeeded within the imposed <br>

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

Standard_Integer AdvApp2Var_ApproxAFunc2Var::UDegree ( ) const
Handle_TColStd_HArray1OfReal AdvApp2Var_ApproxAFunc2Var::UFrontError ( const Standard_Integer  Dimension) const

returns the errors max on UFrontiers <br>

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

Standard_Integer AdvApp2Var_ApproxAFunc2Var::VDegree ( ) const
Handle_TColStd_HArray1OfReal AdvApp2Var_ApproxAFunc2Var::VFrontError ( const Standard_Integer  Dimension) const

returns the errors max on VFrontiers <br>

Warning:
Dimension must be equal to 3.

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

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


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