Integration of OCCT 6.5.0 from SVN
[occt.git] / src / Select3D / Select3D_SensitivePoint.cdl
1 -- File:        Select3D_SensitivePoint.cdl
2 -- Created:     Thu Feb 23 09:46:31 1995
3 -- Author:      Mister rmi
4 --              <rmi@photon>
5 ---Copyright:    Matra Datavision 1995
6
7
8 class SensitivePoint from Select3D 
9 inherits SensitiveEntity from Select3D
10
11         ---Purpose: A framework to define sensitive 3D points.
12
13 uses
14     Pnt             from gp,
15     Pnt2d           from gp,
16     Projector       from Select3D,
17     Lin             from gp,
18     EntityOwner     from SelectBasics,
19     ListOfBox2d     from SelectBasics,
20     Location        from TopLoc,
21     Box2d             from Bnd,
22     Array1OfPnt2d     from TColgp, 
23     Pnt               from Select3D,
24     Pnt2d             from Select3D
25
26 is
27
28     Create (OwnerId : EntityOwner from SelectBasics;
29             Point   : Pnt from gp)
30     returns mutable SensitivePoint;
31         ---Purpose: Constructs a sensitive point object defined by the
32         -- owner OwnerId and the point Point. 
33
34
35     Project (me:mutable;aProjector : Projector from Select3D) 
36     is redefined static;
37     ---Level: Public 
38     ---Purpose:Converts the stored 3D point into a 2D point according 
39     --         to <aProjector> ; this method is called by the selection Manager.
40
41     
42     Areas(me:mutable; aresult : in out ListOfBox2d from SelectBasics) 
43     is redefined static;
44     ---Level: Public 
45     ---Purpose: stores in <aresult> the 2D sensitive box which represents 
46     --          the point area in the selection process. 
47
48     GetConnected(me:mutable;aLocation: Location from TopLoc)
49     returns SensitiveEntity from Select3D is redefined static;
50     
51     Matches(me  :mutable; 
52             X,Y : Real from Standard;
53             aTol: Real from Standard;
54             DMin: out Real from Standard) 
55     returns Boolean
56     is redefined static;    
57     ---Level: Public 
58     ---Purpose: returns true if the X,Y position matches the point
59     --          else gives the distance between them.
60
61     Matches (me  :mutable; 
62              XMin,YMin,XMax,YMax : Real from Standard;
63              aTol: Real from Standard) 
64     returns Boolean
65     is static;
66
67      
68     Matches (me  :mutable; 
69              Polyline:Array1OfPnt2d from TColgp;
70              aBox:Box2d from Bnd;
71              aTol: Real from Standard) 
72     returns Boolean
73     is redefined virtual;
74     ---Level: Public 
75     
76
77     ComputeDepth(me;EyeLine: Lin from gp) 
78     returns Real from Standard is redefined static;
79
80       
81     Point(me) returns Pnt from gp;
82     ---Purpose: Returns the point used at the time of construction.
83
84
85     Dump(me; S: in out OStream;FullDump : Boolean from Standard = Standard_True) is redefined virtual;
86
87 fields
88
89     mypoint   : Pnt from Select3D;
90     myprojpt  : Pnt2d from Select3D;
91     
92     
93 end SensitivePoint;
94
95