Integration of OCCT 6.5.0 from SVN
[occt.git] / src / FEmTool / FEmTool_Curve.cdl
CommitLineData
7fd59977 1-- File: FEmTool_Curve.cdl
2-- Created: Fri Sep 12 18:23:02 1997
3-- Author: Philippe MANGIN
4-- <pmn@sgi29>
5---Copyright: Matra Datavision 1997
6
7
8class Curve from FEmTool inherits TShared from MMgt
9
10 ---Purpose: Curve defined by Polynomial Elements.
11
12uses
13 Base from PLib,
14 Array1OfReal from TColStd,
15 HArray1OfInteger from TColStd,
16 Array2OfReal from TColStd,
17 Array1OfInteger from TColStd,
18 HArray1OfReal from TColStd
19
20raises
21 DimensionError
22
23is
24 Create(Dimension : Integer;
25 NbElements : Integer;
26 TheBase : Base from PLib;
27 Tolerance : Real);
28
29 Knots(me)
30 ---C++: return &
31 returns Array1OfReal;
32
33 SetElement(me : mutable; IndexOfElement : Integer;
34 Coeffs : Array2OfReal);
35
36 D0(me : mutable; U : Real; Pnt : out Array1OfReal);
37
38 D1(me : mutable; U : Real; Vec : out Array1OfReal);
39
40 D2(me : mutable; U : Real; Vec : out Array1OfReal);
41
42 Length(me : mutable;
43 FirstU, LastU : Real;
44 Length : out Real);
45
46 GetElement(me : mutable; IndexOfElement : Integer;
47 Coeffs : out Array2OfReal);
48
49 GetPolynom(me : mutable; Coeffs : out Array1OfReal);
50 ---Purpose: returns coefficients of all elements in canonical base.
51
52 NbElements(me) returns Integer;
53
54 Dimension(me) returns Integer;
55
56 Base(me) returns Base from PLib;
57
58 Degree(me; IndexOfElement : Integer) returns Integer;
59
60 SetDegree(me : mutable;
61 IndexOfElement : Integer;
62 Degree : Integer);
63
64 ReduceDegree(me : mutable;
65 IndexOfElement : Integer; Tol : Real;
66 NewDegree : out Integer; MaxError : out Real);
67
68
69 Update(me:mutable; Element : Integer; Order : Integer)
70 is private;
71
72fields
73 myNbElements : Integer;
74 myDimension : Integer;
75 myTolerance : Real;
76 myBase : Base from PLib;
77 myKnots : HArray1OfReal;
78 myDegree : Array1OfInteger;
79 myCoeff : Array1OfReal; -- Coeff in <myBase>
80 myPoly : Array1OfReal; -- Coeff in the canonnical Bases
81 myDeri : Array1OfReal; -- Coeff of the first Derivative
82 -- in the canonical Base
83 myDsecn : Array1OfReal; -- Coeff of the second Derivative
84 -- in the canonnical Base
85 HasPoly : Array1OfInteger; -- Say If the Ith Element
86 -- has an canonical Representation.
87 HasDeri : Array1OfInteger; -- Say If the Ith Element
88 -- has an first Derivative Representation.
89 HasSecn : Array1OfInteger; -- Say If the Ith Element
90 -- has an second Derivative Representation.
91 myLength : Array1OfReal; -- Table of Length Element by Element
92 Uf, Ul : Real;
93 Denom, USum : Real;
94 myIndex, myPtr : Integer;
95end Curve;
96
97