0023024: Update headers of OCCT files
[occt.git] / src / AppDef / AppDef.cdl
CommitLineData
b311480e 1-- Created on: 1991-12-02
2-- Created by: Laurent PAINNOT
3-- Copyright (c) 1991-1999 Matra Datavision
4-- Copyright (c) 1999-2012 OPEN CASCADE SAS
5--
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.
10--
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.
13--
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.
20
7fd59977 21
7fd59977 22-- 06/06/96 : JPI : ajout Variational
7fd59977 23
24
25
26package AppDef
27
28 ---Purpose: This package describes all the classes needed to approximate
29 -- points in Bezier curves. It is used in the package
30 -- AppParCurves.
31 -- The points of the same range for the approximation are
32 -- organised in MultiPointConstraints. These MultiPointConstraints
33 --
34 -- are organized in a MultiLine.
35 -- The corresponding result of a MultiLine approximation is
36 -- a MultiCurve (set of Bezier curves) which has the same
37 -- structure as a MultiLine: The MultiCurve is a set of
38 -- MultiPoint.
39 -- A point of a MultiLine can have many significations: the approximation curve
40 -- can go through this point or not, can have a given tangency, or can
41 -- have a given curvature.
42 -- Note: a CurvaturePoint is also a PassPoint and a TangencyPoint.
43 -- A TangencyPoint is also a PassPoint.
44
45uses AppParCurves, Approx, gp, TColgp, TCollection, Standard, MMgt
46
47
48is
49
50class MultiPointConstraint;
51 ---Purpose: a MultiPointConstraint is a set of points which have the same range
52 -- in the MultiLine and the same constraints.
53
54
55class MultiLine;
56 ---Purpose: this is the organized set of points.
57
58class MyLineTool;
59 ---Purpose: example of MultiLine tool corresponding to the tools of the packages
60 -- AppParCurves and Approx. For Approx, the tool will not addd points
61 -- if the algorithms want some.
62
63
64
65
66--- Classes instanciees:
67
68
69class TheLeastSquares instantiates LeastSquare from AppParCurves
70 (MultiLine from AppDef,
71 MyLineTool from AppDef);
72
73class TheVariational instantiates Variational from AppParCurves
74 (MultiLine from AppDef,
75 MyLineTool from AppDef);
76
77class TheResol instantiates ResolConstraint from AppParCurves
78 (MultiLine from AppDef,
79 MyLineTool from AppDef);
80
81
82class TheFunction instantiates Function from AppParCurves
83 (MultiLine from AppDef,
84 MyLineTool from AppDef,
85
86 TheLeastSquares from AppDef,
87 TheResol from AppDef);
88
89
90class TheGradient instantiates Gradient from AppParCurves
91 (MultiLine from AppDef,
92 MyLineTool from AppDef);
93
94
95class Compute instantiates ComputeLine from Approx
96
97 (MultiLine from AppDef,
98 MyLineTool from AppDef);
99
100
101class BSplineCompute instantiates BSplComputeLine from Approx
102 (MultiLine from AppDef,
103 MyLineTool from AppDef);
104
105
106
107class Array1OfMultiPointConstraint instantiates Array1 from TCollection
108 (MultiPointConstraint);
109
110class HArray1OfMultiPointConstraint instantiates
111 HArray1 from TCollection(
112 MultiPointConstraint,Array1OfMultiPointConstraint);
113
114
115end AppDef;