0024428: Implementation of LGPL license
[occt.git] / src / BRepBlend / BRepBlend_BlendTool.cdl
1 -- Created on: 1993-12-06
2 -- Created by: Jacques GOUSSARD
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and / or modify it
9 -- under the terms of the GNU Lesser General Public version 2.1 as published
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.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class BlendTool from BRepBlend
18
19         ---Purpose: 
20
21 uses 
22      Pnt2d     from gp,
23      State     from TopAbs,
24      HCurve2d from Adaptor2d,
25      HSurface from Adaptor3d,
26      HVertex from Adaptor3d
27
28 is
29
30     Project(myclass; P: Pnt2d from gp;
31                      S: HSurface from Adaptor3d ;
32                      C: HCurve2d from Adaptor2d ;
33                      Paramproj: out Real from Standard;
34                      Dist: out Real from Standard)
35
36         ---Purpose: Projects the point P on the arc C.
37         --          If the methods returns Standard_True, the projection is
38         --          successful, and Paramproj is the parameter on the arc
39         --          of the projected point, Dist is the distance between
40         --          P and the curve..
41         --          If the method returns Standard_False, Param proj and Dist
42         --          are not significant.
43         --          
44
45         returns Boolean from Standard;
46
47     Inters (myclass; P1,P2: Pnt2d from gp;
48                      S: HSurface from Adaptor3d ;
49                      C: HCurve2d from Adaptor2d ;
50                      Param: out Real from Standard;
51                      Dist: out Real from Standard)
52         returns Boolean from Standard;
53
54     Parameter(myclass; V: HVertex from Adaptor3d; A: HCurve2d from Adaptor2d )
55     
56         ---Purpose: Returns the parameter of the vertex V on the edge A.
57     
58         ---C++: inline
59         returns Real from Standard;
60
61
62     Tolerance(myclass; V: HVertex from Adaptor3d; A: HCurve2d from Adaptor2d )
63
64         ---Purpose: Returns the parametric tolerance on the arc A
65         --          used to consider that the vertex and another point meet,
66         --          i-e if Abs(Parameter(Vertex)-Parameter(OtherPnt))<=
67         --          Tolerance, the points are "merged".
68
69         ---C++: inline
70         returns Real from Standard;
71
72
73 -- Methodes pour Rayon constant, en plus des 2 precedentes
74
75
76     SingularOnUMin(myclass; S:HSurface from Adaptor3d )
77         returns Boolean from Standard;
78         ---C++: inline
79
80     SingularOnUMax(myclass; S:HSurface from Adaptor3d ) 
81         returns Boolean from Standard;
82         ---C++: inline
83
84     SingularOnVMin(myclass; S:HSurface from Adaptor3d )
85         returns Boolean from Standard;
86         ---C++: inline
87
88     SingularOnVMax(myclass; S:HSurface from Adaptor3d )
89         returns Boolean from Standard;
90         ---C++: inline
91
92     NbSamplesU(myclass; S: HSurface from Adaptor3d ;
93                         u1,u2: Real from Standard)
94         returns Integer from Standard;
95
96     NbSamplesV(myclass; S: HSurface from Adaptor3d ;
97                         v1,v2: Real from Standard)
98         returns Integer from Standard;
99
100
101     Bounds(myclass; C: HCurve2d from Adaptor2d ; 
102                     Ufirst,Ulast: out Real from Standard);
103
104         ---Purpose: Returns the parametric limits on the arc C.
105         --          These limits must be finite : they are either
106         --          the real limits of the arc, for a finite arc,
107         --          or a bounding box for an infinite arc.
108
109
110     CurveOnSurf(myclass; C: HCurve2d from Adaptor2d ; S: HSurface from Adaptor3d )
111         ---C++: inline
112         returns HCurve2d from Adaptor2d ;
113
114
115 end BlendTool;