CommitLineData
b311480e 1-- Created on: 1997-02-21
2-- Created by: Laurent BOURESCHE
3-- Copyright (c) 1997-1999 Matra Datavision
b311480e 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
b311480e 7--
d5f74e42 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
973c2be1 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.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
18
19inherits SurfCurvFuncInv from Blend
20
ff8178ef 21 ---Purpose: Function of reframing between a restriction surface of the
22 -- surface and a curve.
23 -- Class used to compute a solution of the
7fd59977 24 -- surfRstConstRad problem on a done restriction of the
25 -- surface.
26 -- The vector <X> used in Value, Values and Derivatives
27 -- methods has to be the vector of the parametric
28 -- coordinates wguide, wcurv, wrst where wguide is the
29 -- parameter on the guide line, wcurv is the parameter on
30 -- the curve, wrst is the parameter on the restriction on
31 -- the surface.
32
33
34uses
38 Vector from math,
39 Matrix from math
40
41
42is
43
44 Create(S : HSurface from Adaptor3d;
45 C : HCurve from Adaptor3d;
46 Cg : HCurve from Adaptor3d)
48
49 Set(me: in out; R: Real from Standard; Choix: Integer from Standard)
50 is static;
51
52 NbEquations(me)
53 ---Purpose: returns 3.
54 returns Integer from Standard;
55
56 Value(me: in out; X: Vector; F: out Vector)
57 ---Purpose: computes the values <F> of the Functions for the
58 -- variable <X>.
59 -- Returns True if the computation was done successfully,
60 -- False otherwise.
61 returns Boolean from Standard;
62
63 Derivatives(me: in out; X: Vector; D: out Matrix)
64 ---Purpose: returns the values <D> of the derivatives for the
65 -- variable <X>.
66 -- Returns True if the computation was done successfully,
67 -- False otherwise.
68 returns Boolean from Standard;
69
70 Values(me: in out; X: Vector; F: out Vector; D: out Matrix)
71 ---Purpose: returns the values <F> of the functions and the derivatives
72 -- <D> for the variable <X>.
73 -- Returns True if the computation was done successfully,
74 -- False otherwise.
75 returns Boolean from Standard;
76
77 Set(me: in out; Rst : HCurve2d from Adaptor2d);
78 ---Purpose: Set the restriction on which a solution has to be found.
79
80 GetTolerance(me; Tolerance: out Vector from math; Tol: Real from Standard);
81 ---Purpose: Returns in the vector Tolerance the parametric tolerance
82 -- for each of the 3 variables;
83 -- Tol is the tolerance used in 3d space.
84
85 GetBounds(me; InfBound,SupBound: out Vector from math);
86 ---Purpose: Returns in the vector InfBound the lowest values allowed
87 -- for each of the 3 variables.
88 -- Returns in the vector SupBound the greatest values allowed
89 -- for each of the 3 variables.
90
91 IsSolution(me: in out; Sol: Vector from math; Tol: Real from Standard)
92 ---Purpose: Returns Standard_True if Sol is a zero of the function.
93 -- Tol is the tolerance used in 3d space.
94 returns Boolean from Standard;
95
96fields
97
98 surf : HSurface from Adaptor3d;
99 curv : HCurve from Adaptor3d;
100 guide : HCurve from Adaptor3d;
101 rst : HCurve2d from Adaptor2d;
102 ray : Real from Standard;
103 choix : Integer from Standard;
104