1 -- Created on: 1996-04-10
2 -- Created by: Joelle CHAUVET
3 -- Copyright (c) 1996-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
21 -- Modified: Wed Jan 15 09:45:42 1997
23 -- G1135 : Methods CutSense with criterion, Coefficients,
24 -- CritValue, SetCritValue,
25 -- Field 'myCritValue'
27 class Patch from AdvApp2Var
31 Boolean,Integer,Real from Standard,
32 HArray1OfReal,HArray2OfReal from TColStd,
33 HArray2OfPnt from TColgp,
34 EvaluatorFunc2Var,Context,Framework,Criterion from AdvApp2Var
39 Create(U0,U1,V0,V1 : Real; iu,iv : Integer) returns Patch;
40 Create(P : Patch) returns Patch is private;
41 IsDiscretised(me) returns Boolean;
42 Discretise(me: in out; Conditions : Context;
43 Constraints: Framework;
44 func : EvaluatorFunc2Var);
45 IsApproximated(me) returns Boolean;
46 HasResult(me) returns Boolean;
47 MakeApprox(me: in out; Conditions : Context;
48 Constraints: Framework;
50 AddConstraints(me: in out; Conditions : Context;
51 Constraints: Framework);
52 AddErrors(me: in out; Constraints: Framework);
53 ChangeDomain(me: in out; a,b,c,d : Real);
54 ResetApprox(me: in out);
55 OverwriteApprox(me: in out);
60 UOrder(me) returns Integer;
61 VOrder(me) returns Integer;
62 CutSense(me) returns Integer;
63 CutSense(me; Crit : Criterion; NumDec : Integer) returns Integer;
64 NbCoeffInU(me) returns Integer;
65 NbCoeffInV(me) returns Integer;
66 ChangeNbCoeff(me: in out; NbCoeffU, NbCoeffV : Integer);
67 Poles(me; SSPIndex : Integer; Conditions : Context) returns HArray2OfPnt;
68 Coefficients(me; SSPIndex : Integer; Conditions : Context) returns HArray1OfReal;
69 MaxErrors(me) returns HArray1OfReal;
70 AverageErrors(me) returns HArray1OfReal;
71 IsoErrors(me) returns HArray2OfReal;
72 CritValue(me) returns Real;
73 SetCritValue(me: in out; dist : Real);
81 myNbCoeffInU : Integer;
82 myNbCoeffInV : Integer;
83 myApprIsDone : Boolean;
84 myHasResult : Boolean;
85 myEquation : HArray1OfReal;
86 myMaxErrors : HArray1OfReal;
87 myMoyErrors : HArray1OfReal;
88 myIsoErrors : HArray2OfReal;
90 myDiscIsDone : Boolean;
91 mySosoTab : HArray1OfReal;
92 myDisoTab : HArray1OfReal;
93 mySodiTab : HArray1OfReal;
94 myDidiTab : HArray1OfReal;