1 -- Created on: 1997-07-29
2 -- Created by: Jerome LEMONIER
3 -- Copyright (c) 1997-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
22 class SurfPointEvolRadInv from BRepBlend
24 inherits SurfPointFuncInv from Blend
26 ---Purpose: This function is used to find a solution on a done
27 -- point of the curve when using SurfRstConsRad or
29 -- The vector <X> used in Value, Values and Derivatives
30 -- methods has to be the vector of the parametric
31 -- coordinates w, U, V where w is the parameter on the
32 -- guide line, U,V are the parametric coordinates of a
33 -- point on the partner surface.
39 HSurface from Adaptor3d,
40 HCurve from Adaptor3d,
44 Create(S : HSurface from Adaptor3d; C : HCurve from Adaptor3d;
45 Evol : Function from Law)
46 returns SurfPointEvolRadInv from BRepBlend;
48 Set(me: in out; Choix: Integer from Standard)
52 ---Purpose: returns 3.
53 returns Integer from Standard;
55 Value(me: in out; X: Vector; F: out Vector)
56 ---Purpose: computes the values <F> of the Functions for the
58 -- Returns True if the computation was done successfully,
60 returns Boolean from Standard;
62 Derivatives(me: in out; X: Vector; D: out Matrix)
63 ---Purpose: returns the values <D> of the derivatives for the
65 -- Returns True if the computation was done successfully,
67 returns Boolean from Standard;
69 Values(me: in out; X: Vector; F: out Vector; D: out Matrix)
70 ---Purpose: returns the values <F> of the functions and the derivatives
71 -- <D> for the variable <X>.
72 -- Returns True if the computation was done successfully,
74 returns Boolean from Standard;
76 Set(me: in out; P : Pnt from gp);
77 ---Purpose: Set the Point on which a solution has to be found.
79 GetTolerance(me; Tolerance: out Vector from math; Tol: Real from Standard);
80 ---Purpose: Returns in the vector Tolerance the parametric tolerance
81 -- for each of the 3 variables;
82 -- Tol is the tolerance used in 3d space.
84 GetBounds(me; InfBound,SupBound: out Vector from math);
85 ---Purpose: Returns in the vector InfBound the lowest values allowed
86 -- for each of the 3 variables.
87 -- Returns in the vector SupBound the greatest values allowed
88 -- for each of the 3 variables.
90 IsSolution(me: in out; Sol: Vector from math; Tol: Real from Standard)
91 ---Purpose: Returns Standard_True if Sol is a zero of the function.
92 -- Tol is the tolerance used in 3d space.
93 returns Boolean from Standard;
97 surf : HSurface from Adaptor3d;
98 curv : HCurve from Adaptor3d;
100 ray : Real from Standard;
101 choix : Integer from Standard;
102 tevol : Function from Law;
103 sg1 : Real from Standard;
106 end SurfPointEvolRadInv;