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
|
-- File: Blend_FuncInv.cdl
-- Created: Thu Dec 2 18:28:48 1993
-- Author: Jacques GOUSSARD
-- <jag@topsn2>
---Copyright: Matra Datavision 1993
deferred class FuncInv from Blend
inherits FunctionSetWithDerivatives from math
---Purpose: Deferred class for a function used to compute a blending
-- surface between two surfaces, using a guide line.
-- This function is used to find a solution on a restriction
-- of one of the surface.
-- The vector <X> used in Value, Values and Derivatives methods
-- has to be the vector of the parametric coordinates t,w,U,V
-- where t is the parameter on the curve on surface,
-- w is the parameter on the guide line,
-- U,V are the parametric coordinates of a point on the
-- partner surface.
uses Vector from math,
Matrix from math,
HCurve2d from Adaptor2d
is
NbVariables(me)
---Purpose: Returns 4.
returns Integer from Standard
is static;
NbEquations(me)
---Purpose: returns the number of equations of the function.
returns Integer from Standard
is deferred;
Value(me: in out; X: Vector; F: out Vector)
---Purpose: computes the values <F> of the Functions for the
-- variable <X>.
-- Returns True if the computation was done successfully,
-- False otherwise.
returns Boolean from Standard
is deferred;
Derivatives(me: in out; X: Vector; D: out Matrix)
---Purpose: returns the values <D> of the derivatives for the
-- variable <X>.
-- Returns True if the computation was done successfully,
-- False otherwise.
returns Boolean from Standard
is deferred;
Values(me: in out; X: Vector; F: out Vector; D: out Matrix)
---Purpose: returns the values <F> of the functions and the derivatives
-- <D> for the variable <X>.
-- Returns True if the computation was done successfully,
-- False otherwise.
returns Boolean from Standard
is deferred;
Set(me: in out; OnFirst: Boolean from Standard;
COnSurf: HCurve2d from Adaptor2d)
---Purpose: Sets the CurveOnSurface on which a solution has
-- to be found. If <OnFirst> is set to Standard_True,
-- the curve will be on the first surface, otherwise the
-- curve is on the second one.
is deferred;
GetTolerance(me; Tolerance: out Vector from math; Tol: Real from Standard)
---Purpose: Returns in the vector Tolerance the parametric tolerance
-- for each of the 4 variables;
-- Tol is the tolerance used in 3d space.
is deferred;
GetBounds(me; InfBound,SupBound: out Vector from math)
---Purpose: Returns in the vector InfBound the lowest values allowed
-- for each of the 4 variables.
-- Returns in the vector SupBound the greatest values allowed
-- for each of the 4 variables.
is deferred;
IsSolution(me: in out; Sol: Vector from math; Tol: Real from Standard)
---Purpose: Returns Standard_True if Sol is a zero of the function.
-- Tol is the tolerance used in 3d space.
returns Boolean from Standard
is deferred;
end FuncInv;
|