|
Open CASCADE Technology 6.5.2
|
#include <Standard.hxx>#include <Standard_Macro.hxx>#include <Standard_Integer.hxx>#include <Handle_TColStd_HArray1OfReal.hxx>#include <Handle_TColStd_HArray2OfReal.hxx>#include <Standard_Real.hxx>#include <GeomAbs_IsoType.hxx>#include <GeomAbs_Shape.hxx>#include <AdvApp2Var_EvaluatorFunc2Var.hxx>#include <AdvApp2Var_Context.hxx>#include <AdvApp2Var_Network.hxx>#include <AdvApp2Var_Framework.hxx>#include <Standard_Boolean.hxx>#include <Handle_TColGeom_HArray1OfSurface.hxx>#include <Handle_Geom_BSplineSurface.hxx>#include <Standard_OStream.hxx>#include <AdvApp2Var_ApproxAFunc2Var.lxx>Data Structures | |
| class | AdvApp2Var_ApproxAFunc2Var |
| 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 More... | |
1.7.4