0024023: Revamp the OCCT Handle -- ambiguity
[occt.git] / src / AdvApp2Var / AdvApp2Var_Iso.cdl
1 -- Created on: 1996-04-09
2 -- Created by: Joelle CHAUVET
3 -- Copyright (c) 1996-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class Iso from AdvApp2Var
18     ---Purpose :
19     -- used to store constraints on a line U = Ui or V = Vj
20     --
21
22 uses
23
24     Boolean,Integer,Real from Standard,
25     HArray1OfReal from TColStd,
26     HArray2OfReal from TColStd,    
27     HArray1OfPnt from TColgp,
28     IsoType from GeomAbs,
29     EvaluatorFunc2Var,Context,Node from AdvApp2Var
30     
31
32 is
33
34     Create  returns Iso;
35     Create(type : IsoType from GeomAbs; iu, iv  :  Integer) returns Iso;
36     Create(type : IsoType from GeomAbs; cte : Real; 
37            Ufirst, Ulast, Vfirst,  Vlast : Real;
38            pos, iu, iv  :  Integer) returns Iso;
39     Create(Other : Iso) returns Iso is private;
40     IsApproximated(me) returns Boolean;
41     HasResult(me) returns Boolean;
42     MakeApprox(me: in out;  Conditions : Context;
43                             a,b,c,d : Real;
44                             func : EvaluatorFunc2Var;
45                             NodeBegin,  NodeEnd : in out  Node  from AdvApp2Var ); 
46     ChangeDomain(me: in out; a,b : Real);
47     ChangeDomain(me: in out; a,b,c,d : Real);
48     SetConstante(me: in out; newcte : Real);
49     SetPosition(me: in out; newpos : Integer);
50     ResetApprox(me: in out);
51     OverwriteApprox(me: in out);
52     Type(me) returns IsoType;
53     Constante(me) returns Real;
54     T0(me) returns Real;
55     T1(me) returns Real;    
56     U0(me) returns Real;
57     U1(me) returns Real;
58     V0(me) returns Real;
59     V1(me) returns Real;
60     UOrder(me) returns Integer;
61     VOrder(me) returns Integer;
62     Position(me) returns Integer;
63     NbCoeff(me) returns Integer;
64     Polynom(me) 
65     ---C++: return const & 
66     returns HArray1OfReal;
67     SomTab(me) returns HArray1OfReal;
68     DifTab(me) returns HArray1OfReal;
69     MaxErrors(me) returns HArray2OfReal;
70     MoyErrors(me) returns HArray2OfReal;
71    
72
73 fields
74
75     myType        : IsoType from GeomAbs;
76     myConstPar    : Real;
77     myU0, myU1    : Real;
78     myV0, myV1    : Real;
79     myPosition    : Integer;
80     myExtremOrder : Integer;
81     myDerivOrder  : Integer;
82     myNbCoeff     : Integer;
83     myApprIsDone  : Boolean;
84     myHasResult   : Boolean;
85     myEquation    : HArray1OfReal;
86     myMaxErrors   : HArray2OfReal;
87     myMoyErrors   : HArray2OfReal;   
88     mySomTab      : HArray1OfReal;
89     myDifTab      : HArray1OfReal;
90
91 end Iso;
92