1 -- Created on: 1997-02-21
2 -- Created by: Laurent BOURESCHE
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 SurfCurvConstRadInv from BRepBlend
24 inherits SurfCurvFuncInv from Blend
26 ---Purpose: Class used to compute a solution of the
27 -- surfRstConstRad problem on a done restriction of the
29 -- The vector <X> used in Value, Values and Derivatives
30 -- methods has to be the vector of the parametric
31 -- coordinates wguide, wcurv, wrst where wguide is the
32 -- parameter on the guide line, wcurv is the parameter on
33 -- the curve, wrst is the parameter on the restriction on
38 HCurve2d from Adaptor2d,
39 HCurve from Adaptor3d,
40 HSurface from Adaptor3d,
47 Create(S : HSurface from Adaptor3d;
48 C : HCurve from Adaptor3d;
49 Cg : HCurve from Adaptor3d)
50 returns SurfCurvConstRadInv from BRepBlend;
52 Set(me: in out; R: Real from Standard; Choix: Integer from Standard)
56 ---Purpose: returns 3.
57 returns Integer from Standard;
59 Value(me: in out; X: Vector; F: out Vector)
60 ---Purpose: computes the values <F> of the Functions for the
62 -- Returns True if the computation was done successfully,
64 returns Boolean from Standard;
66 Derivatives(me: in out; X: Vector; D: out Matrix)
67 ---Purpose: returns the values <D> of the derivatives for the
69 -- Returns True if the computation was done successfully,
71 returns Boolean from Standard;
73 Values(me: in out; X: Vector; F: out Vector; D: out Matrix)
74 ---Purpose: returns the values <F> of the functions and the derivatives
75 -- <D> for the variable <X>.
76 -- Returns True if the computation was done successfully,
78 returns Boolean from Standard;
80 Set(me: in out; Rst : HCurve2d from Adaptor2d);
81 ---Purpose: Set the restriction on which a solution has to be found.
83 GetTolerance(me; Tolerance: out Vector from math; Tol: Real from Standard);
84 ---Purpose: Returns in the vector Tolerance the parametric tolerance
85 -- for each of the 3 variables;
86 -- Tol is the tolerance used in 3d space.
88 GetBounds(me; InfBound,SupBound: out Vector from math);
89 ---Purpose: Returns in the vector InfBound the lowest values allowed
90 -- for each of the 3 variables.
91 -- Returns in the vector SupBound the greatest values allowed
92 -- for each of the 3 variables.
94 IsSolution(me: in out; Sol: Vector from math; Tol: Real from Standard)
95 ---Purpose: Returns Standard_True if Sol is a zero of the function.
96 -- Tol is the tolerance used in 3d space.
97 returns Boolean from Standard;
101 surf : HSurface from Adaptor3d;
102 curv : HCurve from Adaptor3d;
103 guide : HCurve from Adaptor3d;
104 rst : HCurve2d from Adaptor2d;
105 ray : Real from Standard;
106 choix : Integer from Standard;
108 end SurfCurvConstRadInv;