b311480e |
1 | -- Created on: 1991-12-02 |
2 | -- Created by: Laurent PAINNOT |
3 | -- Copyright (c) 1991-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
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 |
973c2be1 |
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. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
7fd59977 |
17 | -- 06/06/96 : JPI : ajout Variational |
7fd59977 |
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 | |
f62de372 |
40 | uses AppParCurves, Approx, gp, TColgp, TCollection, Standard, MMgt, math, FEmTool, TColStd, GeomAbs, PLib |
7fd59977 |
41 | |
42 | |
43 | is |
44 | |
45 | class MultiPointConstraint; |
7fd59977 |
46 | |
47 | class MultiLine; |
7fd59977 |
48 | |
49 | class MyLineTool; |
7fd59977 |
50 | |
f62de372 |
51 | deferred class SmoothCriterion; |
7fd59977 |
52 | |
f62de372 |
53 | class LinearCriteria; |
54 | |
55 | class Variational; |
7fd59977 |
56 | |
57 | |
58 | --- Classes instanciees: |
59 | |
60 | |
61 | class TheLeastSquares instantiates LeastSquare from AppParCurves |
62 | (MultiLine from AppDef, |
63 | MyLineTool from AppDef); |
f62de372 |
64 | |
7fd59977 |
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 | class Array1OfMultiPointConstraint instantiates Array1 from TCollection |
97 | (MultiPointConstraint); |
98 | |
99 | class HArray1OfMultiPointConstraint instantiates |
100 | HArray1 from TCollection( |
101 | MultiPointConstraint,Array1OfMultiPointConstraint); |
102 | |
103 | |
104 | end AppDef; |