0022847: DrawTrSurf: provide interface for configuring visualization properties in...
[occt.git] / src / DrawTrSurf / DrawTrSurf_BSplineCurve.cdl
1 -- File:        BSplineCurve.cdl<2>
2 -- Created:     Fri May 22 09:53:01 1992
3 -- Author:      Jean Claude VAUTHIER
4 --              <jcv@sdsun4>
5 ---Copyright:    Matra Datavision 1992
6
7
8 class BSplineCurve
9
10
11 from DrawTrSurf
12
13
14 inherits Curve from DrawTrSurf
15
16
17 uses BSplineCurve from Geom,
18      Color from Draw,
19      MarkerShape from Draw,
20      Display from Draw,
21      Drawable3D from Draw
22
23
24 is
25
26
27   Create (C : BSplineCurve from Geom)
28         --- Purpose :
29         --  creates a drawable BSpline curve from a BSpline curve of 
30         --  package Geom.
31      returns mutable BSplineCurve from DrawTrSurf;
32
33
34
35   Create (C : BSplineCurve from Geom;
36           CurvColor, PolesColor, KnotsColor : Color from Draw;
37           KnotsShape : MarkerShape from Draw; KnotsSize : Integer;
38           ShowPoles, ShowKnots : Boolean; Discret : Integer; Deflection : Real;
39           DrawMode : Integer)
40         --- Purpose :
41         --  creates a drawable BSpline curve from a BSpline curve of 
42         --  package Geom.
43      returns mutable BSplineCurve from DrawTrSurf;
44
45
46   DrawOn (me; dis : in out Display from Draw)
47      is redefined static;
48
49
50   DrawOn (me; dis : in out Display from Draw;
51           ShowPoles, ShowKnots : Boolean);
52
53
54   DrawOn (me; 
55           dis : in out Display from Draw; 
56           U1, U2 : Real; 
57           Pindex : Integer;
58           ShowPoles : Boolean = Standard_True;
59           ShowKnots : Boolean = Standard_True);
60
61
62   ShowPoles (me : mutable)
63      is static;
64
65
66   ShowKnots (me : mutable)
67      is static;
68      
69
70   ClearPoles (me : mutable)
71      is static;
72      
73   
74   ClearKnots (me : mutable)
75      is static;
76      
77
78   FindPole(me; X,Y : Real; D : Display from Draw; Prec : Real; 
79            Index : in out Integer)
80         --- Purpose :
81         --  Returns in <Index> the index of the first pole  of the
82         --  curve projected by the Display <D> at a distance lower
83         --  than <Prec> from <X,Y>. If no pole  is found  index is
84         --  set to 0, else index is always  greater than the input
85         --  value of index.
86   is static;
87   
88
89   FindKnot(me; X,Y : Real; D : Display from Draw; Prec : Real; 
90            Index : in out Integer)
91   is static;
92   
93
94   SetPolesColor (me : mutable; aColor : Color from Draw)
95         ---C++: inline
96      is static;
97      
98
99   SetKnotsColor (me : mutable; aColor : Color from Draw)
100         ---C++: inline
101      is static;
102      
103
104   SetKnotsShape (me : mutable; Shape : MarkerShape from Draw)
105         ---C++: inline
106      is static;
107      
108
109   KnotsShape (me)  returns MarkerShape from Draw
110         ---C++: inline
111      is static;
112      
113   
114   KnotsColor (me)  returns Color from Draw
115         ---C++: inline
116      is static;
117      
118   
119   PolesColor (me)  returns Color from Draw
120         ---C++: inline
121      is static;
122     
123   Copy(me) returns mutable Drawable3D from Draw
124         ---Purpose: For variable copy.
125   is redefined; 
126     
127     
128 fields
129
130   drawPoles  : Boolean;
131   drawKnots  : Boolean;
132   knotsForm  : MarkerShape from Draw;
133   knotsLook  : Color from Draw;
134   knotsDim   : Integer;
135   polesLook  : Color from Draw;
136  
137 end BSplineCurve;
138