1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
-- File: FairCurve.cdl
-- Created: Mon Jan 22 15:07:56 1996
-- Author: Philippe MANGIN
-- <pmn@sgi29>
---Copyright: Matra Datavision 1996
package FairCurve
---Purpose: this package is used to make "FairCurve" by
-- no linear optimization.
-- - Batten
-- - [Curve with] MinimalVariation [of curvature] or "MVC".
uses Standard, math, TColStd, TColgp, gp, Geom2d
is
enumeration AnalysisCode is
OK,
NotConverged,
InfiniteSliding,
NullHeight
end AnalysisCode;
---Purpose:
-- To deal with different results in the computation of curvatures.
-- - FairCurve_OK describes the case where computation is successfully
-- completed
-- - FairCurve_NotConverged describes
-- the case where the algorithm does not
-- converge. In this case, you can not be
-- certain of the result quality and should
-- resume computation if you want to make use of the curve.
-- - FairCurve_InfiniteSliding describes the case where sliding is infinite, and,
-- consequently, computation stops. The solution is to use an imposed sliding value.
-- - FairCurve_NullHeight describes the case where no matter is left at one of the
-- ends of the curve, and as a result, computation stops. The solution is to
-- change (increase or reduce) the slope value by increasing or decreasing it.
class Batten;
class MinimalVariation; -- inherit from Batten
private class BattenLaw; -- inherit from Function
deferred class DistributionOfEnergy; -- inherit from FuctionSet
private class DistributionOfSagging; -- inherit from DistributionOfEnergy
private class DistributionOfTension; -- inherit from DistributionOfEnergy
private class DistributionOfJerk; -- inherit from DistributionOfEnergy
deferred class Energy; -- inherit from MultipleVarFunctionWithHessian
private class EnergyOfBatten; -- inherit from Energy
private class EnergyOfMVC; -- inherits from Energy
private class Newton;
end FairCurve;
|