1 -- File: ShapeUpgrade_ConvertCurve3dToBezier.cdl
2 -- Created: Thu May 13 14:02:24 1999
3 -- Author: data exchange team
4 -- <det@friendox.nnov.matra-dtv.fr>
5 ---Copyright: Matra Datavision 1999
7 class ConvertCurve3dToBezier from ShapeUpgrade inherits SplitCurve3d from ShapeUpgrade
9 ---Purpose: converts/splits a 3d curve of any type to a list of beziers
13 HSequenceOfCurve from TColGeom,
14 HSequenceOfReal from TColStd
18 Create returns ConvertCurve3dToBezier from ShapeUpgrade;
19 ---Purpose: Empty constructor
21 SetLineMode(me:mutable; mode: Boolean);
22 ---Purpose: Sets mode for conversion Geom_Line to bezier.
25 GetLineMode(me) returns Boolean;
26 ---Purpose: Returns the Geom_Line conversion mode.
29 SetCircleMode(me:mutable; mode: Boolean);
30 ---Purpose: Sets mode for conversion Geom_Circle to bezier.
33 GetCircleMode(me) returns Boolean;
34 ---Purpose: Returns the Geom_Circle conversion mode.
37 SetConicMode(me:mutable; mode: Boolean);
38 ---Purpose: Returns the Geom_Conic conversion mode.
41 GetConicMode(me) returns Boolean;
42 ---Purpose: Performs converting and computes the resulting shape.
45 Compute(me: mutable) is redefined;
46 ---Purpose: Converts curve into a list of beziers, and stores the
47 -- splitting parameters on original curve.
49 Build (me: mutable; Segment: Boolean) is redefined;
50 ---Purpose: Splits a list of beziers computed by Compute method according
51 -- the split values and splitting parameters.
53 Segments(me) returns HSequenceOfCurve from TColGeom is private;
54 ---Purpose: Returns the list of bezier curves correspondent to original
57 SplitParams(me) returns HSequenceOfReal from TColStd;
58 ---Purpose: Returns the list of splitted parameters in original curve
63 mySegments : HSequenceOfCurve from TColGeom;
64 mySplitParams: HSequenceOfReal from TColStd;
66 myCircleMode : Boolean;
67 myConicMode : Boolean;
69 end ConvertCurve2dToBezier;