7fd59977 |
1 | -- File: BezierCurve.cdl<2> |
2 | -- Created: Fri May 22 10:25:55 1992 |
3 | -- Author: Jean Claude VAUTHIER |
4 | -- <jcv@sdsun4> |
5 | ---Copyright: Matra Datavision 1992 |
6 | |
7 | |
8 | class BezierCurve |
9 | |
10 | |
11 | from DrawTrSurf |
12 | |
13 | |
14 | inherits Curve from DrawTrSurf |
15 | |
16 | |
17 | uses BezierCurve from Geom, |
18 | Color from Draw, |
19 | Display from Draw, |
20 | Drawable3D from Draw |
21 | |
22 | |
23 | is |
24 | |
25 | |
26 | Create (C : BezierCurve from Geom) |
27 | --- Purpose : |
28 | -- creates a drawable Bezier curve from a Bezier curve of |
29 | -- package Geom. |
30 | returns mutable BezierCurve from DrawTrSurf; |
31 | |
32 | |
33 | Create (C : BezierCurve from Geom; |
34 | CurvColor, PolesColor : Color from Draw; |
35 | ShowPoles : Boolean; Discret : Integer;Deflection : Real; |
36 | DrawMode : Integer) |
37 | returns mutable BezierCurve from DrawTrSurf; |
38 | |
39 | |
40 | DrawOn (me; dis : in out Display from Draw) |
41 | is redefined static; |
42 | |
43 | |
44 | ShowPoles (me : mutable) |
45 | is static; |
46 | |
47 | |
48 | ClearPoles (me : mutable) |
49 | is static; |
50 | |
51 | |
52 | FindPole(me; X,Y : Real; D : Display from Draw; Prec : Real; |
53 | Index : in out Integer) |
54 | --- Purpose : |
55 | -- Returns in <Index> the index of the first pole of the |
56 | -- curve projected by the Display <D> at a distance lower |
57 | -- than <Prec> from <X,Y>. If no pole is found index is |
58 | -- set to 0, else index is always greater than the input |
59 | -- value of index. |
60 | is static; |
61 | |
62 | |
63 | SetPolesColor (me : mutable; aColor : Color from Draw) |
64 | ---C++: inline |
65 | is static; |
66 | |
67 | |
68 | PolesColor (me) returns Color from Draw |
69 | ---C++: inline |
70 | is static; |
71 | |
72 | Copy(me) returns mutable Drawable3D from Draw |
73 | ---Purpose: For variable copy. |
74 | is redefined; |
75 | |
76 | |
77 | fields |
78 | |
79 | drawPoles : Boolean; |
80 | polesLook : Color from Draw; |
81 | |
82 | end BezierCurve; |