0022627: Change OCCT memory management defaults
[occt.git] / src / Select3D / Select3D_SensitiveWire.cdl
1 -- File:        Select3D_SensitiveWire.cdl
2 -- Created:     Thu Oct 17 10:19:25 1996
3 -- Author:      Odile OLIVIER
4 --              <odl@sacadox.paris1.matra-dtv.fr>
5 ---Copyright:    Matra Datavision 1996
6
7
8 class SensitiveWire   from Select3D 
9 inherits SensitiveEntity from Select3D
10
11         ---Purpose: A framework to define selection of a wire owner by an
12         -- elastic wire band.
13
14 uses
15     Pnt                      from gp,
16     Projector                from Select3D,
17     Lin                      from gp,
18     EntityOwner              from SelectBasics,
19     SensitiveEntity          from Select3D,
20     SensitiveEntitySequence  from Select3D,
21     ListOfBox2d              from SelectBasics,
22     Array1OfPnt2d            from TColgp,
23     Box2d                    from Bnd,
24     Location                 from TopLoc
25
26 is
27
28
29     Create (OwnerId      : EntityOwner from SelectBasics;
30             MaxRect      : Integer = 1)
31      returns mutable SensitiveWire;
32         ---Purpose: Constructs a sensitive wire object defined by the
33         -- owner OwnerId, and the maximum number of
34         -- sensitive rectangles MaxRect.
35     Add (me   :mutable;aSensitive : SensitiveEntity from Select3D)
36     is static;
37         ---Purpose: Adds the sensitive entity aSensitive to this framework.
38     Project (me:mutable;aProjector : Projector from Select3D) 
39     is redefined static;
40         ---Level: Public 
41         ---Purpose: projection of the sensitive primitive in order to
42         --          get 2D boxes for the Sort Algorithm
43
44     Areas   (me:mutable ; boxes : in out ListOfBox2d from SelectBasics) 
45     is redefined static;
46         ---Level: Public 
47         ---Purpose: gives the 2D boxes which represent the segment in the 
48         --          selection process...
49
50     GetConnected(me:mutable;aLocation: Location from TopLoc)
51     returns SensitiveEntity from Select3D is redefined static;
52
53     GetEdges(me       : mutable;
54              theEdges : in out SensitiveEntitySequence from Select3D);
55         ---Level: Public
56         ---Purpose: returns the sensitive edges stored in this wire
57
58
59     SetLocation(me:mutable;aLoc:Location from TopLoc) is redefined static;
60         ---Purpose:  propagation of location on all the sensitive inside...
61     ResetLocation(me:mutable) is redefined static;
62         ---Purpose:  propagation of location on all the sensitive inside...    
63
64     Matches(me  :mutable; 
65             X,Y : Real from Standard;
66             aTol: Real from Standard;
67             DMin: out Real from Standard) 
68     returns Boolean
69     is  redefined static;
70         ---Level: Public 
71         ---Purpose: projection of the sensitive primitive in order to
72         --          get 2D boxes for the Sort Algorithm
73
74     Matches (me  :mutable; 
75              XMin,YMin,XMax,YMax : Real from Standard;
76              aTol: Real from Standard) 
77     returns Boolean
78     is static;
79      
80     Matches (me  :mutable; 
81              Polyline:Array1OfPnt2d from TColgp;
82              aBox:Box2d from Bnd;
83              aTol: Real from Standard) 
84     returns Boolean
85     is redefined virtual;
86         ---Level: Public 
87     
88
89     ComputeDepth(me;EyeLine: Lin from gp) 
90     returns Real from Standard is redefined static;
91         ---Purpose: returns the depth of the touched entity
92
93     MaxBoxes(me) returns Integer is redefined static;    
94         ---Level: Public 
95         ---Purpose:returns <mymaxrect>
96             
97     
98     Dump(me; S: in out OStream;FullDump : Boolean from Standard = Standard_True) is redefined virtual; 
99
100     Set(me:mutable;TheOwnerId: EntityOwner from SelectBasics) is redefined static; 
101     ---Purpose: Sets the owner for all entities in wire 
102         
103     SetLastPrj(me:mutable;aPrj: Projector from Select3D) is redefined virtual; 
104      
105     GetLastDetected(me)
106     returns SensitiveEntity from Select3D is static; 
107     ---Purpose:returns <mymaxrect>
108
109 fields
110     mymaxrect       : Integer;
111     mysensitive     : SensitiveEntitySequence from Select3D;
112     myDetectedIndex : Integer from Standard;
113 end SensitiveWire;
114
115
116
117
118
119
120
121