0024750: Replace instantiations of TCollection generic classes by NCollection templat...
[occt.git] / src / AppDef / AppDef.cdl
1 -- Created on: 1991-12-02
2 -- Created by: Laurent PAINNOT
3 -- Copyright (c) 1991-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 under
9 -- the terms of the GNU Lesser General Public License 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 --  06/06/96 : JPI : ajout Variational
18
19
20
21 package AppDef
22
23     ---Purpose: This package describes all the classes needed to approximate 
24     --          points in Bezier curves. It is used in the package 
25     --          AppParCurves.
26     --          The points of the same range for the approximation are 
27     --          organised in MultiPointConstraints. These MultiPointConstraints
28     --        
29     --            are organized in a MultiLine.
30     --          The corresponding result of a MultiLine approximation is
31     --          a MultiCurve (set of Bezier curves) which has the same 
32     --          structure as a MultiLine: The MultiCurve is a set of 
33     --          MultiPoint.
34     --          A point of a MultiLine can have many significations: the approximation curve
35     --          can go through this point or not, can have a given tangency, or can 
36     --          have a given curvature.
37     --          Note: a CurvaturePoint is also a PassPoint and a TangencyPoint.
38     --          A TangencyPoint is also a PassPoint.
39
40 uses AppParCurves, Approx, gp, TColgp, TCollection, Standard, MMgt, math, FEmTool, TColStd, GeomAbs, PLib
41
42
43 is
44
45 class MultiPointConstraint;  
46
47 class MultiLine;
48
49 class MyLineTool;
50
51 deferred  class  SmoothCriterion;
52
53 class  LinearCriteria;
54                  
55 class Variational;
56
57
58 --- Classes instanciees:
59
60
61 class TheLeastSquares instantiates LeastSquare from AppParCurves
62                         (MultiLine            from AppDef,
63                          MyLineTool           from AppDef);
64
65
66 class TheResol instantiates ResolConstraint from AppParCurves
67                         (MultiLine            from AppDef,
68                          MyLineTool           from AppDef);
69
70
71 class TheFunction instantiates Function from AppParCurves
72                         (MultiLine            from AppDef,
73                          MyLineTool           from AppDef,
74                 
75          TheLeastSquares      from AppDef,
76                          TheResol             from AppDef);
77                         
78
79 class TheGradient instantiates Gradient from AppParCurves
80                         (MultiLine            from AppDef,
81                          MyLineTool           from AppDef);
82
83
84 class Compute instantiates ComputeLine from Approx
85                    
86          (MultiLine            from AppDef,
87                           MyLineTool           from AppDef);
88
89
90 class BSplineCompute instantiates BSplComputeLine from Approx
91                          (MultiLine            from AppDef,
92                           MyLineTool           from AppDef);
93
94
95
96 imported Array1OfMultiPointConstraint;
97
98 imported transient class HArray1OfMultiPointConstraint;
99
100
101 end AppDef;