Integration of OCCT 6.5.0 from SVN
[occt.git] / src / Contap / Contap_SurfFunction.cdl
1 -- File:        Contap_SurfFunction.cdl
2 -- Created:     Thu Jun  3 15:23:20 1993
3 -- Author:      Jacques GOUSSARD
4 --              <jag@topsn2>
5 ---Copyright:    Matra Datavision 1993
6
7
8 generic class SurfFunction from Contap 
9     (TheSurface as any;
10      TheSurfaceTool as any;
11      TheSurfProps   as any; -- as SurfProps from Contap(TheSurface,
12                             --                          TheSurfaceTool)
13      TheContTool    as any)
14
15 inherits FunctionSetWithDerivatives from math                          
16     
17         ---Purpose: This class describes the function on a parametric surface.
18         --          the form of the function is F(u,v) = 0 where u and v are
19         --          the parameteric coordinates of a point on the surface,
20         --          to compute the contours of the surface.
21
22 uses Vector    from math,
23      Matrix    from math,
24      Pnt       from gp,
25      Vec       from gp,
26      Dir       from gp,
27      Dir2d     from gp,
28      TFunction from Contap
29
30
31 raises UndefinedDerivative from StdFail
32
33 is
34
35     Create
36     
37         returns SurfFunction from Contap;
38
39
40     Set(me: in out; S: TheSurface)
41
42         is static;
43
44
45     Set(me: in out; Eye: Pnt from gp)
46     
47         ---C++: inline
48         is static;
49
50
51     Set(me: in out; Dir: Dir from gp)
52     
53         ---C++: inline
54         is static;
55
56
57     Set(me: in out; Dir: Dir from gp; Angle: Real from Standard)
58     
59         ---C++: inline
60         is static;
61
62
63     Set(me: in out; Eye: Pnt from gp; Angle: Real from Standard)
64     
65         ---C++: inline
66         is static;
67
68
69     Set(me: in out; Tolerance: Real from Standard)
70     
71         ---C++: inline
72         is static;
73
74
75     NbVariables(me)
76
77         ---Purpose: This method has to return 2.
78         returns Integer from Standard;
79
80
81     NbEquations(me)
82
83         ---Purpose: This method has to return 1.
84         returns Integer from Standard;
85
86
87     Value(me : in out; X : Vector from math;
88                        F : out Vector from math)
89
90         ---Purpose: The dimension of F is 1.
91
92         returns Boolean from Standard;
93
94
95     Derivatives(me : in out; X : Vector from math;
96                              D : out Matrix from math)
97
98         ---Purpose: The dimension of D is (1,2).
99
100         returns Boolean from Standard;
101
102
103     Values(me : in out; X : Vector from math;
104                         F : out Vector from math;
105                         D : out Matrix from math)
106
107         returns Boolean from Standard;
108
109
110     Root(me)
111
112         ---Purpose: Root is the value of the function at the solution.
113         --          It is a vector of dimension 1, i-e a real.
114
115         returns Real from Standard
116         ---C++: inline
117         is static;
118
119
120     Tolerance(me)
121     
122         ---Purpose: Returns the value Tol so that if Abs(Func.Root())<Tol
123         --          the function is considered null.
124         --          
125         ---C++: inline
126     
127         returns Real from Standard
128         is static;
129
130
131     Point(me)
132
133         ---Purpose: Returns the value of the solution point on the surface.
134
135         returns Pnt from gp
136         ---C++: return const&
137         ---C++: inline
138         is static;
139     
140
141     IsTangent(me : in out)
142
143         returns Boolean from Standard 
144         is static;
145     
146
147     Direction3d(me: in out)
148
149         returns Vec from gp
150         ---C++: return const&
151         ---C++: inline
152         raises UndefinedDerivative from StdFail
153         is static;
154     
155
156     Direction2d(me: in out)
157
158         returns Dir2d from gp
159         ---C++: return const&
160         ---C++: inline
161         raises UndefinedDerivative from StdFail
162         is static;
163
164
165     FunctionType(me)
166     
167         returns TFunction from Contap
168         ---C++: inline
169         is static;
170
171
172     Eye(me)
173     
174         returns Pnt from gp
175         ---C++: return const&
176         ---C++: inline
177         is static;
178
179
180     Direction(me)
181     
182         returns Dir from gp
183         ---C++: return const&
184         ---C++: inline
185         is static;
186
187
188     Angle(me)
189     
190         returns Real from Standard
191         ---C++: inline
192         is static;
193
194
195     Surface(me)
196     
197         returns any TheSurface
198         ---C++: return const&
199         ---C++: inline
200         is static;
201         
202
203
204 fields
205
206     mySurf   : TheSurface;
207     myMean   : Real      from Standard;
208     myType   : TFunction from Contap;
209     myDir    : Dir       from gp;
210     myEye    : Pnt       from gp;
211     myAng    : Real      from Standard;
212     myCosAng : Real      from Standard;
213     tol      : Real      from Standard;
214
215     solpt  : Pnt   from gp;
216     valf   : Real  from Standard;
217     Usol   : Real  from Standard;
218     Vsol   : Real  from Standard;
219     Fpu    : Real  from Standard;
220     Fpv    : Real  from Standard;
221     d2d    : Dir2d from gp;
222     d3d    : Vec   from gp;
223     
224     tangent   : Boolean from Standard;
225     computed  : Boolean from Standard;
226     derived   : Boolean from Standard;
227
228 end SurfFunction;