blob: 258fe5ad220a8b8d74df2433dd5d566c34f12df9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
-- File: IntStart_SIFunction.cdl
-- Created: Wed Jun 2 18:46:12 1993
-- Author: Jacques GOUSSARD
-- <jag@topsn2>
---Copyright: Matra Datavision 1993
deferred generic class SIFunction from IntStart
(ThePSurface as any)
inherits FunctionSetWithDerivatives from math
---Purpose: Template class for a function on a parametric surface.
-- the form of the function is F(u,v) = 0 where u and v are
-- the parameteric coordinates of a point on the surface.
uses Vector from math,
Matrix from math,
Pnt from gp,
Vec from gp,
Dir2d from gp
raises UndefinedDerivative from StdFail
is
Set(me: in out; PS: ThePSurface)
is static;
NbVariables(me)
---Purpose: This method has to return 2.
returns Integer from Standard;
NbEquations(me)
---Purpose: This method has to return 1.
returns Integer from Standard;
Value(me : in out; X : Vector from math;
F : out Vector from math)
---Purpose: The dimension of F is 1.
returns Boolean from Standard;
Derivatives(me : in out; X : Vector from math;
D : out Matrix from math)
---Purpose: The dimension of D is (1,2).
returns Boolean from Standard;
Values(me : in out; X : Vector from math;
F : out Vector from math;
D : out Matrix from math)
returns Boolean from Standard;
Root(me)
---Purpose: Root is the value of the function at the solution.
-- It is a vector of dimension 1, i-e a real.
returns Real from Standard
is static;
Tolerance(me)
---Purpose: Returns the value Tol so that if Abs(Func.Root())<Tol
-- the function is considered null.
returns Real from Standard
is static;
Point(me)
---Purpose: Returns the value of the solution point on the surface.
returns Pnt from gp
is static;
IsTangent(me : in out)
returns Boolean from Standard
is static;
Direction3d(me: in out)
returns Vec from gp
raises UndefinedDerivative from StdFail
is static;
Direction2d(me: in out)
returns Dir2d from gp
raises UndefinedDerivative from StdFail
is static;
end SIFunction;
|