blob: ab32396b223efeb7e393777990ed29a34a9d45f3 (
plain)
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
-- File: FEmTool_Curve.cdl
-- Created: Fri Sep 12 18:23:02 1997
-- Author: Philippe MANGIN
-- <pmn@sgi29>
---Copyright: Matra Datavision 1997
class Curve from FEmTool inherits TShared from MMgt
---Purpose: Curve defined by Polynomial Elements.
uses
Base from PLib,
Array1OfReal from TColStd,
HArray1OfInteger from TColStd,
Array2OfReal from TColStd,
Array1OfInteger from TColStd,
HArray1OfReal from TColStd
raises
DimensionError
is
Create(Dimension : Integer;
NbElements : Integer;
TheBase : Base from PLib;
Tolerance : Real);
Knots(me)
---C++: return &
returns Array1OfReal;
SetElement(me : mutable; IndexOfElement : Integer;
Coeffs : Array2OfReal);
D0(me : mutable; U : Real; Pnt : out Array1OfReal);
D1(me : mutable; U : Real; Vec : out Array1OfReal);
D2(me : mutable; U : Real; Vec : out Array1OfReal);
Length(me : mutable;
FirstU, LastU : Real;
Length : out Real);
GetElement(me : mutable; IndexOfElement : Integer;
Coeffs : out Array2OfReal);
GetPolynom(me : mutable; Coeffs : out Array1OfReal);
---Purpose: returns coefficients of all elements in canonical base.
NbElements(me) returns Integer;
Dimension(me) returns Integer;
Base(me) returns Base from PLib;
Degree(me; IndexOfElement : Integer) returns Integer;
SetDegree(me : mutable;
IndexOfElement : Integer;
Degree : Integer);
ReduceDegree(me : mutable;
IndexOfElement : Integer; Tol : Real;
NewDegree : out Integer; MaxError : out Real);
Update(me:mutable; Element : Integer; Order : Integer)
is private;
fields
myNbElements : Integer;
myDimension : Integer;
myTolerance : Real;
myBase : Base from PLib;
myKnots : HArray1OfReal;
myDegree : Array1OfInteger;
myCoeff : Array1OfReal; -- Coeff in <myBase>
myPoly : Array1OfReal; -- Coeff in the canonnical Bases
myDeri : Array1OfReal; -- Coeff of the first Derivative
-- in the canonical Base
myDsecn : Array1OfReal; -- Coeff of the second Derivative
-- in the canonnical Base
HasPoly : Array1OfInteger; -- Say If the Ith Element
-- has an canonical Representation.
HasDeri : Array1OfInteger; -- Say If the Ith Element
-- has an first Derivative Representation.
HasSecn : Array1OfInteger; -- Say If the Ith Element
-- has an second Derivative Representation.
myLength : Array1OfReal; -- Table of Length Element by Element
Uf, Ul : Real;
Denom, USum : Real;
myIndex, myPtr : Integer;
end Curve;
|